Documentation
¶
Index ¶
- Constants
- func FindPriceRange(candles []Candle) (float64, float64)
- func FindVolumeRange(candles []Candle) (float64, float64)
- func XValueToCanvas(r chart.Range, b chart.Box, v float64) int
- func YValueToCanvas(r chart.Range, b chart.Box, v float64) int
- type BandIndicatorSeries
- func (s *BandIndicatorSeries) AddSamples(samples ...BandSample)
- func (bs *BandIndicatorSeries) GetName() string
- func (bs *BandIndicatorSeries) GetStyle() chart.Style
- func (bs *BandIndicatorSeries) GetTimeRange() (time.Time, time.Time)
- func (bs *BandIndicatorSeries) GetValueRange() (float64, float64)
- func (bs *BandIndicatorSeries) GetYAxis() chart.YAxisType
- func (bs *BandIndicatorSeries) Render(r chart.Renderer, b chart.Box, xRange, yRange chart.Range, style chart.Style)
- func (bs *BandIndicatorSeries) Validate() error
- type BandSample
- type Candle
- type CandlestickSeries
- func (ts *CandlestickSeries) GetFirstValues() (x, y float64)
- func (ts *CandlestickSeries) GetLastValues() (x, y float64)
- func (cs *CandlestickSeries) GetName() string
- func (cs *CandlestickSeries) GetStyle() chart.Style
- func (cs *CandlestickSeries) GetValue(index int) float64
- func (cs CandlestickSeries) GetValueFormatters() (x, y chart.ValueFormatter)
- func (cs CandlestickSeries) GetXAxisValue(index int) float64
- func (cs *CandlestickSeries) GetYAxis() chart.YAxisType
- func (cs *CandlestickSeries) Len() int
- func (cs *CandlestickSeries) Render(r chart.Renderer, canvasBox chart.Box, xrange, yrange chart.Range, ...)
- func (cs *CandlestickSeries) Validate() error
- func (cs *CandlestickSeries) XValues() []float64
- type ColumnIndicatorSeries
- func (cs *ColumnIndicatorSeries) AddSamples(samples ...ColumnSample)
- func (cs *ColumnIndicatorSeries) GetName() string
- func (cs *ColumnIndicatorSeries) GetStyle() chart.Style
- func (cs *ColumnIndicatorSeries) GetTimeRange() (time.Time, time.Time)
- func (cs *ColumnIndicatorSeries) GetValueRange() (float64, float64)
- func (cs *ColumnIndicatorSeries) GetYAxis() chart.YAxisType
- func (cs *ColumnIndicatorSeries) Render(r chart.Renderer, b chart.Box, xRange, yRange chart.Range, style chart.Style)
- func (cs *ColumnIndicatorSeries) Validate() error
- type ColumnSample
- type DotIndicatorSeries
- func (ds *DotIndicatorSeries) AddSamples(samples ...DotSample)
- func (ds *DotIndicatorSeries) GetName() string
- func (ds *DotIndicatorSeries) GetStyle() chart.Style
- func (ds *DotIndicatorSeries) GetTimeRange() (time.Time, time.Time)
- func (ds *DotIndicatorSeries) GetValueRange() (float64, float64)
- func (ds *DotIndicatorSeries) GetYAxis() chart.YAxisType
- func (ds *DotIndicatorSeries) Render(r chart.Renderer, b chart.Box, xRange, yRange chart.Range, style chart.Style)
- func (ds *DotIndicatorSeries) Validate() error
- type DotSample
- type IndicatorSeries
- type LegendKind
- type LineIndicatorSeries
- func (ls *LineIndicatorSeries) AddPoints(points ...PointSample)
- func (ls *LineIndicatorSeries) GetName() string
- func (ls *LineIndicatorSeries) GetStyle() chart.Style
- func (ls *LineIndicatorSeries) GetTimeRange() (time.Time, time.Time)
- func (ls *LineIndicatorSeries) GetValueRange() (float64, float64)
- func (ls *LineIndicatorSeries) GetYAxis() chart.YAxisType
- func (ls *LineIndicatorSeries) Render(r chart.Renderer, b chart.Box, xRange, yRange chart.Range, style chart.Style)
- func (ls *LineIndicatorSeries) Validate() error
- type Panel
- type PanelOptions
- type PointSample
- type VolumeSeries
- func (vs *VolumeSeries) GetFirstValues() (x, y float64)
- func (vs *VolumeSeries) GetLastValues() (x, y float64)
- func (vs *VolumeSeries) GetName() string
- func (vs *VolumeSeries) GetStyle() chart.Style
- func (vs *VolumeSeries) GetValue(index int) float64
- func (vs *VolumeSeries) GetValueFormatters() (x, y chart.ValueFormatter)
- func (vs *VolumeSeries) GetXAxisValue(index int) float64
- func (vs *VolumeSeries) GetYAxis() chart.YAxisType
- func (vs *VolumeSeries) Len() int
- func (vs *VolumeSeries) Render(r chart.Renderer, canvasBox chart.Box, xrange, yrange chart.Range, ...)
- func (vs *VolumeSeries) Validate() error
- func (vs *VolumeSeries) XValues() []float64
Constants ¶
const ( LegendTop = LegendKind("top") LegendThin = LegendKind("thin") LegendLeft = LegendKind("left") )
Variables ¶
This section is empty.
Functions ¶
func FindPriceRange ¶
FindPriceRange calculates the Y-axis range for the chart.
func FindVolumeRange ¶
Types ¶
type BandIndicatorSeries ¶
type BandIndicatorSeries struct {
Name string
Options *PanelOptions
// contains filtered or unexported fields
}
func NewBandIndicatorSeries ¶
func NewBandIndicatorSeries(name string, samples []BandSample, options *PanelOptions) *BandIndicatorSeries
func (*BandIndicatorSeries) AddSamples ¶
func (s *BandIndicatorSeries) AddSamples(samples ...BandSample)
func (*BandIndicatorSeries) GetName ¶
func (bs *BandIndicatorSeries) GetName() string
Implement chart.Series interface for BandIndicatorSeries.
func (*BandIndicatorSeries) GetStyle ¶
func (bs *BandIndicatorSeries) GetStyle() chart.Style
func (*BandIndicatorSeries) GetTimeRange ¶
func (bs *BandIndicatorSeries) GetTimeRange() (time.Time, time.Time)
func (*BandIndicatorSeries) GetValueRange ¶
func (bs *BandIndicatorSeries) GetValueRange() (float64, float64)
func (*BandIndicatorSeries) GetYAxis ¶
func (bs *BandIndicatorSeries) GetYAxis() chart.YAxisType
func (*BandIndicatorSeries) Validate ¶
func (bs *BandIndicatorSeries) Validate() error
type BandSample ¶
type Candle ¶
type Candle struct {
Time time.Time
Open float64
High float64
Low float64
Close float64
Volume float64
}
func ConvertKLinesToCandles ¶
ConvertKLinesToCandles converts a slice of KLine to a slice of Candle.
type CandlestickSeries ¶
type CandlestickSeries struct {
Candles []Candle
}
func (*CandlestickSeries) GetFirstValues ¶
func (ts *CandlestickSeries) GetFirstValues() (x, y float64)
func (*CandlestickSeries) GetLastValues ¶
func (ts *CandlestickSeries) GetLastValues() (x, y float64)
func (*CandlestickSeries) GetName ¶
func (cs *CandlestickSeries) GetName() string
Implement chart.Series interface for CandlestickSeries.
func (*CandlestickSeries) GetStyle ¶
func (cs *CandlestickSeries) GetStyle() chart.Style
func (*CandlestickSeries) GetValue ¶
func (cs *CandlestickSeries) GetValue(index int) float64
func (CandlestickSeries) GetValueFormatters ¶
func (cs CandlestickSeries) GetValueFormatters() (x, y chart.ValueFormatter)
func (CandlestickSeries) GetXAxisValue ¶
func (cs CandlestickSeries) GetXAxisValue(index int) float64
func (*CandlestickSeries) GetYAxis ¶
func (cs *CandlestickSeries) GetYAxis() chart.YAxisType
func (*CandlestickSeries) Len ¶
func (cs *CandlestickSeries) Len() int
func (*CandlestickSeries) Validate ¶
func (cs *CandlestickSeries) Validate() error
Validate implements chart.Series interface for CandlestickSeries.
func (*CandlestickSeries) XValues ¶
func (cs *CandlestickSeries) XValues() []float64
XValues returns all X axis values for the series.
type ColumnIndicatorSeries ¶
type ColumnIndicatorSeries struct {
Name string
Options *PanelOptions
// contains filtered or unexported fields
}
ColumnIndicatorSeries draws histogram columns along the x-axis. Useful for momentum indicators like TTM Squeeze momentum.
func NewColumnIndicatorSeries ¶
func NewColumnIndicatorSeries(name string, samples []ColumnSample, options *PanelOptions) *ColumnIndicatorSeries
func (*ColumnIndicatorSeries) AddSamples ¶
func (cs *ColumnIndicatorSeries) AddSamples(samples ...ColumnSample)
func (*ColumnIndicatorSeries) GetName ¶
func (cs *ColumnIndicatorSeries) GetName() string
func (*ColumnIndicatorSeries) GetStyle ¶
func (cs *ColumnIndicatorSeries) GetStyle() chart.Style
func (*ColumnIndicatorSeries) GetTimeRange ¶
func (cs *ColumnIndicatorSeries) GetTimeRange() (time.Time, time.Time)
func (*ColumnIndicatorSeries) GetValueRange ¶
func (cs *ColumnIndicatorSeries) GetValueRange() (float64, float64)
func (*ColumnIndicatorSeries) GetYAxis ¶
func (cs *ColumnIndicatorSeries) GetYAxis() chart.YAxisType
func (*ColumnIndicatorSeries) Validate ¶
func (cs *ColumnIndicatorSeries) Validate() error
type ColumnSample ¶
ColumnSample represents a single column in a histogram chart.
type DotIndicatorSeries ¶
type DotIndicatorSeries struct {
Name string
Options *PanelOptions
// contains filtered or unexported fields
}
DotIndicatorSeries draws dots at given x-y coordinates. Useful for visualizing squeeze states in TTM Squeeze indicator.
func NewDotIndicatorSeries ¶
func NewDotIndicatorSeries(name string, samples []DotSample, options *PanelOptions) *DotIndicatorSeries
func (*DotIndicatorSeries) AddSamples ¶
func (ds *DotIndicatorSeries) AddSamples(samples ...DotSample)
func (*DotIndicatorSeries) GetName ¶
func (ds *DotIndicatorSeries) GetName() string
func (*DotIndicatorSeries) GetStyle ¶
func (ds *DotIndicatorSeries) GetStyle() chart.Style
func (*DotIndicatorSeries) GetTimeRange ¶
func (ds *DotIndicatorSeries) GetTimeRange() (time.Time, time.Time)
func (*DotIndicatorSeries) GetValueRange ¶
func (ds *DotIndicatorSeries) GetValueRange() (float64, float64)
func (*DotIndicatorSeries) GetYAxis ¶
func (ds *DotIndicatorSeries) GetYAxis() chart.YAxisType
func (*DotIndicatorSeries) Validate ¶
func (ds *DotIndicatorSeries) Validate() error
type IndicatorSeries ¶
type LegendKind ¶
type LegendKind string
type LineIndicatorSeries ¶
type LineIndicatorSeries struct {
Name string
// contains filtered or unexported fields
}
func NewLineIndicatorSeries ¶
func NewLineIndicatorSeries(name string, points []PointSample, options *PanelOptions) *LineIndicatorSeries
func (*LineIndicatorSeries) AddPoints ¶
func (ls *LineIndicatorSeries) AddPoints(points ...PointSample)
func (*LineIndicatorSeries) GetName ¶
func (ls *LineIndicatorSeries) GetName() string
Implement chart.Series interface for LineIndicatorSeries.
func (*LineIndicatorSeries) GetStyle ¶
func (ls *LineIndicatorSeries) GetStyle() chart.Style
func (*LineIndicatorSeries) GetTimeRange ¶
func (ls *LineIndicatorSeries) GetTimeRange() (time.Time, time.Time)
func (*LineIndicatorSeries) GetValueRange ¶
func (ls *LineIndicatorSeries) GetValueRange() (float64, float64)
func (*LineIndicatorSeries) GetYAxis ¶
func (ls *LineIndicatorSeries) GetYAxis() chart.YAxisType
func (*LineIndicatorSeries) Validate ¶
func (ls *LineIndicatorSeries) Validate() error
type Panel ¶
type Panel struct {
*chart.Chart
Options *PanelOptions
// contains filtered or unexported fields
}
func NewPanel ¶
func NewPanel(options *PanelOptions) *Panel
func (*Panel) AddIndicator ¶
func (p *Panel) AddIndicator(indicator IndicatorSeries)
type PanelOptions ¶
type PanelOptions struct {
// general options
Title string `json:"title,omitempty" yaml:"title,omitempty"`
RangePadding float64 `json:"range_padding" yaml:"range_padding"`
XAxisPadding float64 `json:"x_axis_padding" yaml:"x_axis_padding"`
Width int `json:"width" yaml:"width"`
Height int `json:"height" yaml:"height"`
Legend *LegendKind `json:"legend" yaml:"legend"`
// kline options
IncludeVolume bool `json:"include_volume" yaml:"include_volume"`
// indicators options
Window int `json:"window" yaml:"window"`
// band indicators options
UpperBoundColor string `json:"upper_bound_color" yaml:"upper_bound_color"`
LowerBoundColor string `json:"lower_bound_color" yaml:"lower_bound_color"`
ValueColor string `json:"value_color" yaml:"value_color"`
// column indicators options
ColumnWidth float64 `json:"column_width" yaml:"column_width"`
ColumnGap float64 `json:"column_gap" yaml:"column_gap"` // gap ratio between columns, ex: 0.15 -> gap width = 0.15 * column width
ColumnAlpha uint8 `json:"column_alpha" yaml:"column_alpha"` // alpha value for column colors (0-255), default 200
// dot indicators options
DotRadius float64 `json:"dot_radius" yaml:"dot_radius"`
// supertrend
Multiplier float64 `json:"multiplier" yaml:"multiplier"`
}
type PointSample ¶
type VolumeSeries ¶
type VolumeSeries struct {
Candles []Candle
}
func (*VolumeSeries) GetFirstValues ¶
func (vs *VolumeSeries) GetFirstValues() (x, y float64)
func (*VolumeSeries) GetLastValues ¶
func (vs *VolumeSeries) GetLastValues() (x, y float64)
func (*VolumeSeries) GetName ¶
func (vs *VolumeSeries) GetName() string
func (*VolumeSeries) GetStyle ¶
func (vs *VolumeSeries) GetStyle() chart.Style
func (*VolumeSeries) GetValue ¶
func (vs *VolumeSeries) GetValue(index int) float64
func (*VolumeSeries) GetValueFormatters ¶
func (vs *VolumeSeries) GetValueFormatters() (x, y chart.ValueFormatter)
func (*VolumeSeries) GetXAxisValue ¶
func (vs *VolumeSeries) GetXAxisValue(index int) float64
func (*VolumeSeries) GetYAxis ¶
func (vs *VolumeSeries) GetYAxis() chart.YAxisType
func (*VolumeSeries) Len ¶
func (vs *VolumeSeries) Len() int
func (*VolumeSeries) Validate ¶
func (vs *VolumeSeries) Validate() error
func (*VolumeSeries) XValues ¶
func (vs *VolumeSeries) XValues() []float64
XValues returns all X axis values for the series.