Documentation
¶
Overview ¶
performance_manager_type.go
Index ¶
- Constants
- type DayCacheIndicatorAdaptorCacheImpl
- func (i *DayCacheIndicatorAdaptorCacheImpl) CleanUp()
- func (i *DayCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
- func (i *DayCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
- func (i *DayCacheIndicatorAdaptorCacheImpl) Name() string
- type DaySingleBigCacheIndicatorAdaptorCacheImpl
- func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) CleanUp()
- func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
- func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
- func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Name() string
- type DaySingleBigDirectCacheIndicatorAdaptorCacheImpl
- func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) CleanUp()
- func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
- func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
- func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Name() string
- type EMAAdapter
- type EMAMetrics
- type FibonacciAdapter
- type FibonacciMetrics
- type IndicatorAdaptor
- type IndicatorAdaptorCache
- func NewDayCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
- func NewDaySingleBigCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
- func NewDaySingleBigDirectCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
- func NewIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
- func NewMapIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
- type InitializeStatus
- type MACDAdapter
- type MACDMetrics
- type MapIndicatorAdaptorCacheImpl
- type PivotPointAdapter
- type PivotPointMetrics
- type RSIAdapter
- type RSIMetrics
- type SuperTrendAdapter
- type SuperTrendMetrics
Constants ¶
const ( PERIOD_LABEL = "period" ADAPTOR_NAME_LABEL = "adaptor_name" )
const ( PIVOT_LEVEL_LABEL = "pivot_level_type" PIVOT_NAME_FORMAT = "PivotPoint_LEN_%d_THRESHOLD_%d" )
const ( RSI_LEVEL_LABEL = "rsi_level_type" RSI_NAME_FORMAT = "RSI_P_%d_OBT_%f_OST_%f_L_%d" )
const ( SUPERTREND_LEVEL_LABEL = "supertrend_level_type" SUPERTREND_NAME_FORMAT = "SuperTrend_PERIOD_%d_MULTIPLIER_%.2f" )
const (
EMA_NAME_FORMAT = "EMA_PERIOD_%s_LEN_%d"
)
const (
FIBONACCI_LEVEL_LABEL = "fibonacci_level_name"
)
const (
MACD_NAME_FORMAT = "MACD_SHORT_%d_LONG_%d_SIGNAL_%d_LEN_%d"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type DayCacheIndicatorAdaptorCacheImpl ¶
type DayCacheIndicatorAdaptorCacheImpl struct { MilliInDay int64 // contains filtered or unexported fields }
func (*DayCacheIndicatorAdaptorCacheImpl) CleanUp ¶
func (i *DayCacheIndicatorAdaptorCacheImpl) CleanUp()
CleanupOldCaches removes old day caches to manage memory usage
func (*DayCacheIndicatorAdaptorCacheImpl) Clone ¶
func (i *DayCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
func (*DayCacheIndicatorAdaptorCacheImpl) Evaluate ¶
func (i *DayCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
Evaluate evaluates the signals from the adaptor and caches the result based on the day and time
func (*DayCacheIndicatorAdaptorCacheImpl) Name ¶
func (i *DayCacheIndicatorAdaptorCacheImpl) Name() string
type DaySingleBigCacheIndicatorAdaptorCacheImpl ¶
type DaySingleBigCacheIndicatorAdaptorCacheImpl struct { MilliInDay int64 // contains filtered or unexported fields }
func (*DaySingleBigCacheIndicatorAdaptorCacheImpl) CleanUp ¶
func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) CleanUp()
CleanupOldCaches removes old day caches to manage memory usage
func (*DaySingleBigCacheIndicatorAdaptorCacheImpl) Clone ¶
func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
func (*DaySingleBigCacheIndicatorAdaptorCacheImpl) Evaluate ¶
func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
Evaluate evaluates the signals from the adaptor and caches the result based on the day and time
func (*DaySingleBigCacheIndicatorAdaptorCacheImpl) Name ¶
func (i *DaySingleBigCacheIndicatorAdaptorCacheImpl) Name() string
type DaySingleBigDirectCacheIndicatorAdaptorCacheImpl ¶
type DaySingleBigDirectCacheIndicatorAdaptorCacheImpl struct { MilliInDay int64 // contains filtered or unexported fields }
func (*DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) CleanUp ¶
func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) CleanUp()
CleanupOldCaches removes old day caches to manage memory usage
func (*DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Clone ¶
func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
func (*DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Evaluate ¶
func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
Evaluate evaluates the signals from the adaptor and caches the result based on the day and time
func (*DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Name ¶
func (i *DaySingleBigDirectCacheIndicatorAdaptorCacheImpl) Name() string
type EMAAdapter ¶
type EMAAdapter struct { EMAs map[int]*indicator.EMA CurrentData model.DataPoint MaxTotalHistoricalData int HistoricalValues map[int]*utils.CyclicSlice[float64] // Changed to CyclicSlice // contains filtered or unexported fields }
func NewEMAAdapter ¶
func NewEMAAdapter(ctx context.Context, periods []int, maxTotalHistoricalData int, monitor monitor.Monitoring) *EMAAdapter
func NewEMAAdapterFromName ¶
func NewEMAAdapterFromName(ctx context.Context, name string, monitor monitor.Monitoring) *EMAAdapter
func (*EMAAdapter) AddDataPoint ¶
func (*EMAAdapter) Clone ¶
func (ea *EMAAdapter) Clone(ctx context.Context) IndicatorAdaptor
func (*EMAAdapter) GetSignal ¶
func (ea *EMAAdapter) GetSignal(ctx context.Context) (result model.StockAction)
func (*EMAAdapter) Name ¶
func (ea *EMAAdapter) Name() string
type EMAMetrics ¶
type EMAMetrics struct { SignalCounter monitor.CounterMetric ValueCounter monitor.CounterMetric // contains filtered or unexported fields }
type FibonacciAdapter ¶
type FibonacciAdapter struct { Fibonacci *indicator.Fibonacci MaxTotalHistoricalData int HistoricalValues []float64 CurrentFibonacciLevels map[indicator.FibonacciLevel]float64 CurrentData model.DataPoint // contains filtered or unexported fields }
FibonacciAdapter manages a Fibonacci indicator and maintains historical values.
func NewFibonacciAdapter ¶
func NewFibonacciAdapter(ctx context.Context, size int, monitor monitor.Monitoring) *FibonacciAdapter
NewFibonacciAdapter initializes and returns a new FibonacciAdapter instance.
func (*FibonacciAdapter) AddDataPoint ¶
AddDataPoint adds a new data point and updates the Fibonacci levels.
func (*FibonacciAdapter) Clone ¶
func (fa *FibonacciAdapter) Clone(ctx context.Context) IndicatorAdaptor
func (*FibonacciAdapter) GetSignal ¶
func (fa *FibonacciAdapter) GetSignal(ctx context.Context) (result model.StockAction)
GetSignal generates a trading signal based on the Fibonacci retracement levels.
func (*FibonacciAdapter) Name ¶
func (fa *FibonacciAdapter) Name() string
Name returns the adapterName of the Fibonacci adapter.
type FibonacciMetrics ¶
type FibonacciMetrics struct { SignalCounter monitor.CounterMetric LevelCounter monitor.CounterMetric // contains filtered or unexported fields }
type IndicatorAdaptor ¶
type IndicatorAdaptorCache ¶
type IndicatorAdaptorCache interface { Name() string Clone(ctx context.Context) IndicatorAdaptorCache Evaluate(ctx context.Context, data *model.DataPoint) model.StockAction CleanUp() }
func NewDayCacheIndicatorAdaptorCacheImpl ¶
func NewDayCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
NewDayCacheIndicatorAdaptorCacheImpl creates a new instance of IndicatorAdaptorCacheImpl
func NewDaySingleBigCacheIndicatorAdaptorCacheImpl ¶
func NewDaySingleBigCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
NewDaySingleBigCacheIndicatorAdaptorCacheImpl creates a new instance of IndicatorAdaptorCacheImpl
func NewDaySingleBigDirectCacheIndicatorAdaptorCacheImpl ¶
func NewDaySingleBigDirectCacheIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
NewDaySingleBigDirectCacheIndicatorAdaptorCacheImpl creates a new instance of IndicatorAdaptorCacheImpl
func NewIndicatorAdaptorCacheImpl ¶
func NewIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
func NewMapIndicatorAdaptorCacheImpl ¶
func NewMapIndicatorAdaptorCacheImpl(adaptor IndicatorAdaptor) IndicatorAdaptorCache
type InitializeStatus ¶
type InitializeStatus int
const ( NOT_INITIALIZED InitializeStatus = iota INITIALIZED START_SIGNALING )
type MACDAdapter ¶
type MACDAdapter struct { MACD *indicator.MACD CurrentData model.DataPoint MaxTotalHistoricalData int HistoricalValues []indicator.MACDResult // contains filtered or unexported fields }
MACDAdapter handles a single MACD indicator and maintains historical values.
func NewMACDAdapter ¶
func NewMACDAdapter(ctx context.Context, shortPeriod, longPeriod, signalPeriod, maxTotalHistoricalData int, monitor monitor.Monitoring) *MACDAdapter
NewMACDAdapter initializes a new MACDAdapter instance.
func NewMACDAdapterFromName ¶
func NewMACDAdapterFromName(ctx context.Context, name string, monitor monitor.Monitoring) *MACDAdapter
func (*MACDAdapter) AddDataPoint ¶
AddDataPoint adds a new data point and updates the MACD.
func (*MACDAdapter) Clone ¶
func (ma *MACDAdapter) Clone(ctx context.Context) IndicatorAdaptor
func (*MACDAdapter) GetSignal ¶
func (ma *MACDAdapter) GetSignal(ctx context.Context) (result model.StockAction)
GetSignal returns a trading signal based on the MACD logic.
func (*MACDAdapter) Name ¶
func (ma *MACDAdapter) Name() string
Name returns the adapterName of the MACD adapter.
type MACDMetrics ¶
type MACDMetrics struct { DataPointsCounter monitor.CounterMetric SignalCounter monitor.CounterMetric MACDLine monitor.GaugeMetric SignalLine monitor.GaugeMetric // contains filtered or unexported fields }
type MapIndicatorAdaptorCacheImpl ¶
type MapIndicatorAdaptorCacheImpl struct {
// contains filtered or unexported fields
}
func (*MapIndicatorAdaptorCacheImpl) CleanUp ¶
func (i *MapIndicatorAdaptorCacheImpl) CleanUp()
func (*MapIndicatorAdaptorCacheImpl) Clone ¶
func (i *MapIndicatorAdaptorCacheImpl) Clone(ctx context.Context) IndicatorAdaptorCache
func (*MapIndicatorAdaptorCacheImpl) Evaluate ¶
func (i *MapIndicatorAdaptorCacheImpl) Evaluate(ctx context.Context, dp *model.DataPoint) model.StockAction
func (*MapIndicatorAdaptorCacheImpl) Name ¶
func (i *MapIndicatorAdaptorCacheImpl) Name() string
type PivotPointAdapter ¶
type PivotPointAdapter struct { PivotPoint *indicator.PivotPoint MaxTotalHistoricalData int HistoricalValues []model.DataPoint CurrentData model.DataPoint Threshold int // contains filtered or unexported fields }
func NewPivotPointAdapter ¶
func NewPivotPointAdapter(ctx context.Context, maxTotalHistoricalData, threshold int, monitor monitor.Monitoring) *PivotPointAdapter
func NewPivotPointAdapterFromName ¶
func NewPivotPointAdapterFromName(ctx context.Context, name string, monitor monitor.Monitoring) *PivotPointAdapter
func (*PivotPointAdapter) AddDataPoint ¶
func (*PivotPointAdapter) Clone ¶
func (ppa *PivotPointAdapter) Clone(ctx context.Context) IndicatorAdaptor
func (*PivotPointAdapter) GetSignal ¶
func (ppa *PivotPointAdapter) GetSignal(ctx context.Context) (result model.StockAction)
func (*PivotPointAdapter) Name ¶
func (ppa *PivotPointAdapter) Name() string
type PivotPointMetrics ¶
type PivotPointMetrics struct { SignalCounter monitor.CounterMetric LevelGauge monitor.GaugeMetric // contains filtered or unexported fields }
type RSIAdapter ¶
type RSIAdapter struct { RSI *indicator.RSI MaxTotalHistoricalData int HistoricalValues *utils.CyclicSlice[float64] OverboughtThreshold float64 OversoldThreshold float64 // contains filtered or unexported fields }
func NewRSIAdapter ¶
func NewRSIAdapter(ctx context.Context, period, maxTotalHistoricalData int, overboughtThreshold, oversoldThreshold float64, monitor monitor.Monitoring) *RSIAdapter
func NewRSIAdapterFromName ¶
func NewRSIAdapterFromName(ctx context.Context, name string, monitor monitor.Monitoring) *RSIAdapter
func (*RSIAdapter) AddDataPoint ¶
func (*RSIAdapter) Clone ¶
func (ra *RSIAdapter) Clone(ctx context.Context) IndicatorAdaptor
func (*RSIAdapter) GetSignal ¶
func (ra *RSIAdapter) GetSignal(ctx context.Context) (result model.StockAction)
func (*RSIAdapter) Name ¶
func (ra *RSIAdapter) Name() string
type RSIMetrics ¶
type RSIMetrics struct { SignalCounter monitor.CounterMetric RsiValueCounter monitor.CounterMetric LevelGauge monitor.GaugeMetric // contains filtered or unexported fields }
type SuperTrendAdapter ¶
type SuperTrendAdapter struct { SuperTrend *indicator.SuperTrend PreviousTrend bool CurrentTrend bool // contains filtered or unexported fields }
SuperTrendAdapter handles a single SuperTrend indicator and maintains historical values.
func NewSuperTrendAdapter ¶
func NewSuperTrendAdapter(ctx context.Context, period int, multiplier float64, monitor monitor.Monitoring) *SuperTrendAdapter
NewSuperTrendAdapter initializes a new SuperTrendAdapter instance.
func NewSuperTrendAdapterFromName ¶
func NewSuperTrendAdapterFromName(ctx context.Context, name string, monitor monitor.Monitoring) *SuperTrendAdapter
func (*SuperTrendAdapter) AddDataPoint ¶
AddDataPoint adds a new data point and updates the SuperTrend.
func (*SuperTrendAdapter) Clone ¶
func (sta *SuperTrendAdapter) Clone(ctx context.Context) IndicatorAdaptor
Clone creates a new instance of SuperTrendAdapter with the same configuration.
func (*SuperTrendAdapter) GetSignal ¶
func (sta *SuperTrendAdapter) GetSignal(ctx context.Context) (result model.StockAction)
GetSignal returns a trading signal based on the SuperTrend logic.
func (*SuperTrendAdapter) Name ¶
func (sta *SuperTrendAdapter) Name() string
Name returns the adapterName of the SuperTrend adapter.
type SuperTrendMetrics ¶
type SuperTrendMetrics struct { SignalCounter monitor.CounterMetric TrendCounter monitor.CounterMetric TrendLine monitor.CounterMetric // contains filtered or unexported fields }
Source Files
¶
- common.go
- day_cache_indicator_adaptor_cache.go
- day_single_big_cache_indicator_adaptor_cache.go
- day_single_big_direct_cache_indicator_adaptor_cache.go
- ema_adaptor.go
- fibonacci_adaptor.go
- indicator_adaptor_cache1.go
- indicator_adaptor_cache2.go
- macd_adapter.go
- map_cache_indicator_adaptor_cache.go
- pivot_adaptor.go
- rsi_adaptor.go
- super_trend_adaptor.go
- types.go