Documentation ¶
Index ¶
- Variables
- func NewBuyerQueue() *queue
- func NewSellerQueue() *queue
- type Depth
- type DepthItem
- type DiscardPublishTrader
- type MatchingEngine
- type MemoryPublishTrader
- type Message
- type Order
- type OrderBook
- type OrderBookUpdateEvent
- type OrderType
- type PublishTrader
- type Response
- type Side
- type Trade
- type UpdateEvent
Constants ¶
This section is empty.
Variables ¶
Functions ¶
func NewBuyerQueue ¶
func NewBuyerQueue() *queue
func NewSellerQueue ¶
func NewSellerQueue() *queue
Types ¶
type DiscardPublishTrader ¶ added in v0.6.0
type DiscardPublishTrader struct { }
func NewDiscardPublishTrader ¶ added in v0.6.0
func NewDiscardPublishTrader() *DiscardPublishTrader
func (*DiscardPublishTrader) PublishTrades ¶ added in v0.6.0
func (p *DiscardPublishTrader) PublishTrades(trades ...*Trade)
type MatchingEngine ¶
type MatchingEngine struct {
// contains filtered or unexported fields
}
func NewMatchingEngine ¶
func NewMatchingEngine(publishTrader PublishTrader) *MatchingEngine
func (*MatchingEngine) AddOrder ¶ added in v0.5.1
func (engine *MatchingEngine) AddOrder(ctx context.Context, order *Order) error
func (*MatchingEngine) CancelOrder ¶
func (*MatchingEngine) OrderBook ¶ added in v0.5.0
func (engine *MatchingEngine) OrderBook(marketID string) *OrderBook
type MemoryPublishTrader ¶ added in v0.6.0
type MemoryPublishTrader struct { Trades []*Trade // contains filtered or unexported fields }
func NewMemoryPublishTrader ¶ added in v0.6.0
func NewMemoryPublishTrader() *MemoryPublishTrader
func (*MemoryPublishTrader) Count ¶ added in v0.6.0
func (m *MemoryPublishTrader) Count() int
func (*MemoryPublishTrader) Get ¶ added in v0.6.0
func (m *MemoryPublishTrader) Get(index int) *Trade
func (*MemoryPublishTrader) PublishTrades ¶ added in v0.6.0
func (m *MemoryPublishTrader) PublishTrades(trades ...*Trade)
type OrderBook ¶
type OrderBook struct {
// contains filtered or unexported fields
}
OrderBook type
func NewOrderBook ¶
func NewOrderBook(publishTrader PublishTrader) *OrderBook
func (*OrderBook) CancelOrder ¶
type OrderBookUpdateEvent ¶
type OrderBookUpdateEvent struct { Bids []*UpdateEvent Asks []*UpdateEvent Time time.Time }
type PublishTrader ¶ added in v0.6.0
type PublishTrader interface {
PublishTrades(...*Trade)
}
type Trade ¶
type Trade struct { ID string `json:"id"` MarketID string `json:"market_id"` TakerOrderID string `json:"taker_order_id"` TakerOrderSide Side `json:"taker_order_side"` TakerOrderType OrderType `json:"taker_order_type"` TakerUserID int64 `json:"taker_user_id"` MakerOrderID string `json:"maker_order_id"` MakerUserID int64 `json:"maker_user_id"` Price decimal.Decimal `json:"price"` Size decimal.Decimal `json:"size"` IsCancel bool `json:"is_cancel"` CreatedAt time.Time `json:"created_at"` }
type UpdateEvent ¶
Click to show internal directories.
Click to hide internal directories.