Documentation ¶
Index ¶
- Constants
- type Strategy
- func (s *Strategy) Description() string
- func (s *Strategy) Name() string
- func (s *Strategy) OnSignal(d data.Handler, _ portfolio.Handler) (signal.Event, error)
- func (s *Strategy) OnSimultaneousSignals(_ []data.Handler, _ portfolio.Handler) ([]signal.Event, error)
- func (s *Strategy) SetCustomSettings(customSettings map[string]interface{}) error
- func (s *Strategy) SetDefaults()
- func (s *Strategy) SupportsSimultaneousProcessing() bool
Constants ¶
const (
// Name is the strategy name
Name = "rsi"
)
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Strategy ¶
Strategy is an implementation of the Handler interface
func (*Strategy) Description ¶
Description provides a nice overview of the strategy be it definition of terms or to highlight its purpose
func (*Strategy) OnSignal ¶
OnSignal handles a data event and returns what action the strategy believes should occur For rsi, this means returning a buy signal when rsi is at or below a certain level, and a sell signal when it is at or above a certain level
func (*Strategy) OnSimultaneousSignals ¶
func (s *Strategy) OnSimultaneousSignals(_ []data.Handler, _ portfolio.Handler) ([]signal.Event, error)
OnSimultaneousSignals analyses multiple data points simultaneously, allowing flexibility in allowing a strategy to only place an order for X currency if Y currency's price is Z For rsi, multi-currency signal processing is unsupported for demonstration purposes
func (*Strategy) SetCustomSettings ¶
SetCustomSettings allows a user to modify the RSI limits in their config
func (*Strategy) SetDefaults ¶
func (s *Strategy) SetDefaults()
SetDefaults sets the custom settings to their default values
func (*Strategy) SupportsSimultaneousProcessing ¶
SupportsSimultaneousProcessing highlights whether the strategy can handle multiple currency calculation There is nothing actually stopping this strategy from considering multiple currencies at once but for demonstration purposes, this strategy does not