Documentation
¶
Index ¶
- type BaseExchangeClient
- func (c *BaseExchangeClient) BalanceEvents(ctx context.Context) <-chan *domain.BalanceEvent
- func (c *BaseExchangeClient) ErrorEvents() <-chan error
- func (c *BaseExchangeClient) GetName() string
- func (c *BaseExchangeClient) IsAuthenticated() bool
- func (c *BaseExchangeClient) OrderBookEvents(ctx context.Context) <-chan *domain.OrderBookEvent
- func (c *BaseExchangeClient) OrderEvents(ctx context.Context) <-chan *domain.OrderEvent
- func (c *BaseExchangeClient) PositionEvents(ctx context.Context) <-chan *domain.PositionEvent
- func (c *BaseExchangeClient) TickerEvents(ctx context.Context) <-chan *domain.TickerEvent
- func (c *BaseExchangeClient) TradeEvents(ctx context.Context) <-chan *domain.TradeEvent
- type Client
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BaseExchangeClient ¶
type BaseExchangeClient struct { Name string AccountID string Credentials map[string]string Currencies []domain.Currency CurrencyPairs []domain.CurrencyPair OrdersChannel chan *domain.OrderEvent TradesChannel chan *domain.TradeEvent TickersChannel chan *domain.TickerEvent OrderBooksChannel chan *domain.OrderBookEvent PositionsChannel chan *domain.PositionEvent BalancesChannel chan *domain.BalanceEvent ErrorsChannel chan error // contains filtered or unexported fields }
BaseExchangeClient abstract Client interface implementation
func (*BaseExchangeClient) BalanceEvents ¶
func (c *BaseExchangeClient) BalanceEvents(ctx context.Context) <-chan *domain.BalanceEvent
BalanceEvents satisfies Client interface
func (*BaseExchangeClient) ErrorEvents ¶
func (c *BaseExchangeClient) ErrorEvents() <-chan error
ErrorEvents satisfies Client interface
func (*BaseExchangeClient) GetName ¶
func (c *BaseExchangeClient) GetName() string
GetName satisfies Client interface
func (*BaseExchangeClient) IsAuthenticated ¶
func (c *BaseExchangeClient) IsAuthenticated() bool
IsAuthenticated satisfies Client interface
func (*BaseExchangeClient) OrderBookEvents ¶
func (c *BaseExchangeClient) OrderBookEvents(ctx context.Context) <-chan *domain.OrderBookEvent
OrderBookEvents satisfies Client interface
func (*BaseExchangeClient) OrderEvents ¶
func (c *BaseExchangeClient) OrderEvents(ctx context.Context) <-chan *domain.OrderEvent
OrderEvents satisfies Client interface
func (*BaseExchangeClient) PositionEvents ¶
func (c *BaseExchangeClient) PositionEvents(ctx context.Context) <-chan *domain.PositionEvent
PositionEvents satisfies Client interface
func (*BaseExchangeClient) TickerEvents ¶
func (c *BaseExchangeClient) TickerEvents(ctx context.Context) <-chan *domain.TickerEvent
TickerEvents satisfies Client interface
func (*BaseExchangeClient) TradeEvents ¶
func (c *BaseExchangeClient) TradeEvents(ctx context.Context) <-chan *domain.TradeEvent
TradeEvents satisfies Client interface
type Client ¶
type Client interface { // GetName return exchange name GetName() string // IsAuthenticated checks if current client is authenticated IsAuthenticated() bool // Authenticate attempt to authenticate current client Authenticate(accountID string, credentials map[string]string) error // InitOrdersWatcher prepare client to start watching orders InitOrdersWatcher(ctx context.Context) error // OrderEvents get order updates channel OrderEvents(ctx context.Context) <-chan *domain.OrderEvent // InitPositionsWatcher prepare client to start watching positions InitPositionsWatcher(ctx context.Context) error // PositionEvents get position updates channel PositionEvents(ctx context.Context) <-chan *domain.PositionEvent // SubmitOrder submit order to exchange SubmitOrder(ctx context.Context, order *domain.Order) error // UpdateOrder submit order update to exchange UpdateOrder(ctx context.Context, orderID string, order *domain.Order) error // CancelOrder submit order cancel to exchange CancelOrder(ctx context.Context, orderID string) error // GetOrder get order with given ID from exchange GetOrder(ctx context.Context, orderID string) error // GetOrders get all active orders from exchange GetOrders(ctx context.Context) ([]*domain.Order, error) // InitTradesWatcher prepare client to start watching trades InitTradesWatcher(ctx context.Context, pairs []domain.CurrencyPair) error // TradeEvents get trade updates channel TradeEvents(ctx context.Context) <-chan *domain.TradeEvent // InitTickersWatcher prepare client to start watching tickers InitTickersWatcher(ctx context.Context, pairs []domain.CurrencyPair) error // TickerEvents get ticker updates channel TickerEvents(ctx context.Context) <-chan *domain.TickerEvent // InitBalancesWatcher prepare client to start watching balances InitBalancesWatcher(ctx context.Context) error // BalanceEvents get balance updates channel BalanceEvents(ctx context.Context) <-chan *domain.BalanceEvent // InitOrderBooksWatcher prepare client to start watching order books InitOrderBooksWatcher(ctx context.Context, pairs []domain.CurrencyPair) error // OrderBookEvents get order book updates channel OrderBookEvents(ctx context.Context) <-chan *domain.OrderBookEvent // Start listening exchange events Start() // ErrorEvents get errors updates channel ErrorEvents() <-chan error }
Client interface for all exchanges
Click to show internal directories.
Click to hide internal directories.