Versions in this module Expand all Collapse all v0 v0.1.2 Feb 6, 2023 Changes in this version + const BEP2TypeValue + const CancelFeeField + const CancelFeeNativeField + const ExpireFeeField + const ExpireFeeNativeField + const FeeByNativeToken + const FeeByTradeToken + const FeeRateField + const FeeRateNativeField + const IOCExpireFee + const IOCExpireFeeNative + const MiniTypeValue + const RouteCancelOrder + const RouteNewOrder + var BUSDSymbol string + var FeeRateMultiplier = big.NewInt(int64(math.Pow10(int(feeRateDecimals)))) + var NewWALDeccoder = cs.NewWALDecoder + var NewWALEncoder = cs.NewWALEncoder + var OrderType = struct{ ... } + var PairType = struct{ ... } + var Side = struct{ ... } + var TimeInForce = struct{ ... } + func CreateMatchEng(pairSymbol string, basePrice, lotSize int64) *me.MatchEng + func GenerateOrderID(sequence int64, addr sdk.AccAddress) string + func IsValidOrderType(ot int8) bool + func IsValidSide(side int8) bool + func IsValidTimeInForce(tif int8) bool + func NewHandler(dexKeeper *DexKeeper) sdk.Handler + func NewWAL(walPath string) (*orderbookWAL, error) + func RegisterWALMessages(cdc *amino.Codec) + func SideStringToSideCode(side string) (int8, error) + func TifStringToTifCode(tif string) (int8, error) + func TransferFromTrade(trade *me.Trade, symbol string, orderMap map[string]*OrderInfo) (Transfer, Transfer) + type ActiveOrders struct + Orders []OrderInfo + type BEP2OrderKeeper struct + type BEP2SymbolSelector struct + func (bss *BEP2SymbolSelector) SelectSymbolsToMatch(roundOrders map[string][]string, height int64, matchAllSymbols bool) []string + type BaseOrderKeeper struct + func NewBaseOrderKeeper(moduleName string) BaseOrderKeeper + type CancelOrderMsg struct + RefId string + Sender sdk.AccAddress + Symbol string + func NewCancelOrderMsg(sender sdk.AccAddress, symbol, refId string) CancelOrderMsg + func (msg CancelOrderMsg) GetInvolvedAddresses() []sdk.AccAddress + func (msg CancelOrderMsg) GetSignBytes() []byte + func (msg CancelOrderMsg) GetSigners() []sdk.AccAddress + func (msg CancelOrderMsg) Route() string + func (msg CancelOrderMsg) String() string + func (msg CancelOrderMsg) Type() string + func (msg CancelOrderMsg) ValidateBasic() sdk.Error + type ChangeType uint8 + const Ack + const Canceled + const Expired + const FailedBlocking + const FailedMatching + const FullyFill + const IocExpire + const IocNoFill + const PartialFill + func (tpe ChangeType) IsOpen() bool + func (tpe ChangeType) String() string + type ChangedPriceLevelsMap map[string]ChangedPriceLevelsPerSymbol + type ChangedPriceLevelsPerSymbol struct + Buys map[int64]int64 + Sells map[int64]int64 + type DexKeeper struct + CollectOrderInfoForPublish bool + FeeManager *FeeManager + OrderKeepers []DexOrderKeeper + PairMapper store.TradingPairMapper + RoundOrderFees FeeHolder + func NewDexKeeper(key sdk.StoreKey, am auth.AccountKeeper, ...) *DexKeeper + func (kp *DexKeeper) AddEngine(pair dexTypes.TradingPair) *me.MatchEng + func (kp *DexKeeper) AddOrder(info OrderInfo, isRecovery bool) (err error) + func (kp *DexKeeper) CanDelistTradingPair(ctx sdk.Context, baseAsset, quoteAsset string) error + func (kp *DexKeeper) CanListTradingPair(ctx sdk.Context, baseAsset, quoteAsset string) error + func (kp *DexKeeper) ClearAfterMatch() + func (kp *DexKeeper) ClearOrderBook(pair string) + func (kp *DexKeeper) ClearOrderChanges() + func (kp *DexKeeper) ClearRoundFee() + func (kp *DexKeeper) DelistTradingPair(ctx sdk.Context, symbol string, postAllocTransHandler TransferHandler) + func (kp *DexKeeper) DetermineLotSize(baseAssetSymbol, quoteAssetSymbol string, price int64) (lotSize int64) + func (kp *DexKeeper) EnablePublish() + func (kp *DexKeeper) ExpireOrders(ctx sdk.Context, blockTime time.Time, postAlloTransHandler TransferHandler) + func (kp *DexKeeper) GetAllOrderChanges() OrderChanges + func (kp *DexKeeper) GetAllOrderInfosForPub() OrderInfoForPublish + func (kp *DexKeeper) GetAllOrders() map[string]map[string]*OrderInfo + func (kp *DexKeeper) GetAllOrdersForPair(symbol string) map[string]*OrderInfo + func (kp *DexKeeper) GetBreatheBlockHeight(ctx sdk.Context, timeNow time.Time, daysBack int) (int64, error) + func (kp *DexKeeper) GetEngines() map[string]*me.MatchEng + func (kp *DexKeeper) GetLastBreatheBlockHeight(ctx sdk.Context, latestBlockHeight int64, timeNow time.Time, ...) int64 + func (kp *DexKeeper) GetLastTrades(height int64, pair string) ([]me.Trade, int64) + func (kp *DexKeeper) GetLastTradesForPair(pair string) ([]me.Trade, int64) + func (kp *DexKeeper) GetOpenOrders(pair string, addr sdk.AccAddress) []store.OpenOrder + func (kp *DexKeeper) GetOrder(id string, symbol string, side int8, price int64) (ord me.OrderPart, err error) + func (kp *DexKeeper) GetOrderBookLevels(pair string, maxLevels int) (orderbook []store.OrderBookLevel, pendingMatch bool) + func (kp *DexKeeper) GetOrderBooks(maxLevels int) ChangedPriceLevelsMap + func (kp *DexKeeper) GetOrderChanges(pairType SymbolPairType) OrderChanges + func (kp *DexKeeper) GetOrderInfosForPub(pairType SymbolPairType) OrderInfoForPublish + func (kp *DexKeeper) GetPairType(symbol string) SymbolPairType + func (kp *DexKeeper) GetPriceLevel(pair string, side int8, price int64) *me.PriceLevel + func (kp *DexKeeper) Init(ctx sdk.Context, blockInterval, daysBack int, blockStore *tmstore.BlockStore, ...) + func (kp *DexKeeper) InitRecentPrices(ctx sdk.Context) + func (kp *DexKeeper) LoadOrderBookSnapshot(ctx sdk.Context, latestBlockHeight int64, timeOfLatestBlock time.Time, ...) (int64, error) + func (kp *DexKeeper) MarkBreatheBlock(ctx sdk.Context, height int64, blockTime time.Time) + func (kp *DexKeeper) MatchAndAllocateSymbols(ctx sdk.Context, postAlloTransHandler TransferHandler, matchAllSymbols bool) + func (kp *DexKeeper) MatchSymbols(height, timestamp int64, matchAllSymbols bool) + func (kp *DexKeeper) OrderExists(symbol, id string) (OrderInfo, bool) + func (kp *DexKeeper) ReloadOrder(symbol string, orderInfo *OrderInfo, height int64) + func (kp *DexKeeper) RemoveOrder(id string, symbol string, postCancelHandler func(ord me.OrderPart)) error + func (kp *DexKeeper) RemoveOrderInfosForPub(pair string, orderId string) + func (kp *DexKeeper) ReplayOrdersFromBlock(ctx sdk.Context, bc *tmstore.BlockStore, stateDb dbm.DB, ...) error + func (kp *DexKeeper) SelectSymbolsToMatch(height int64, matchAllSymbols bool) []string + func (kp *DexKeeper) SetBUSDSymbol(symbol string) + func (kp *DexKeeper) ShouldPublishOrder() bool + func (kp *DexKeeper) SnapShotOrderBook(ctx sdk.Context, height int64) (effectedStoreKeys []string, err error) + func (kp *DexKeeper) StoreTradePrices(ctx sdk.Context) + func (kp *DexKeeper) SubscribeParamChange(hub *paramhub.Keeper) + func (kp *DexKeeper) UpdateLotSize(symbol string, lotSize int64) + func (kp *DexKeeper) UpdateOrderChangeSync(change OrderChange, symbol string) + func (kp *DexKeeper) UpdateTickSizeAndLotSize(ctx sdk.Context) + type DexOrderKeeper interface + func NewBEP2OrderKeeper() DexOrderKeeper + func NewMiniOrderKeeper() DexOrderKeeper + type ExecutionType uint8 + const NEW + func (this ExecutionType) String() string + type ExpireHolder struct + Fee string + OrderId string + Reason ChangeType + Symbol string + type ExpireTransfers []*Transfer + func (trans *ExpireTransfers) Sort() + func (trans ExpireTransfers) Len() int + func (trans ExpireTransfers) Less(i, j int) bool + func (trans ExpireTransfers) Swap(i, j int) + type FeeConfig struct + CancelFee int64 + CancelFeeNative int64 + ExpireFee int64 + ExpireFeeNative int64 + FeeRate int64 + FeeRateNative int64 + IOCExpireFee int64 + IOCExpireFeeNative int64 + func NewFeeConfig() FeeConfig + func ParamToFeeConfig(feeParams []param.FeeParam) *FeeConfig + type FeeHandler func(map[string]*sdk.Fee) + type FeeHolder map[string]*sdk.Fee + type FeeManager struct + FeeConfig FeeConfig + func NewFeeManager(cdc *wire.Codec, logger tmlog.Logger) *FeeManager + func (m *FeeManager) CalcExpiresFee(balances sdk.Coins, expireType transferEventType, ...) sdk.Fee + func (m *FeeManager) CalcFixedFee(balances sdk.Coins, eventType transferEventType, inAsset string, ...) sdk.Fee + func (m *FeeManager) CalcTradeFee(balances sdk.Coins, tradeIn sdk.Coin, engines map[string]*matcheng.MatchEng) sdk.Fee + func (m *FeeManager) CalcTradesFee(balances sdk.Coins, tradeTransfers TradeTransfers, ...) sdk.Fee + func (m *FeeManager) CancelFee(feeType FeeType) int64 + func (m *FeeManager) CancelFees() (int64, int64) + func (m *FeeManager) ExpireFee(feeType FeeType) int64 + func (m *FeeManager) ExpireFees() (int64, int64) + func (m *FeeManager) GetConfig() FeeConfig + func (m *FeeManager) IOCExpireFee(feeType FeeType) int64 + func (m *FeeManager) IOCExpireFees() (int64, int64) + func (m *FeeManager) TradeFee(amount *big.Int, feeType FeeType) *big.Int + func (m *FeeManager) UpdateConfig(feeConfig FeeConfig) error + type FeeType uint8 + type MiniOrderKeeper struct + type MiniSymbolSelector struct + func (mss *MiniSymbolSelector) SelectSymbolsToMatch(roundOrders map[string][]string, height int64, matchAllSymbols bool) []string + type NewOrderMsg struct + Id string + OrderType int8 + Price int64 + Quantity int64 + Sender sdk.AccAddress + Side int8 + Symbol string + TimeInForce int8 + func NewNewOrderMsg(sender sdk.AccAddress, id string, side int8, symbol string, price int64, ...) NewOrderMsg + func NewNewOrderMsgAuto(txBuilder txbuilder.TxBuilder, sender sdk.AccAddress, side int8, symbol string, ...) (NewOrderMsg, error) + func (msg NewOrderMsg) GetInvolvedAddresses() []sdk.AccAddress + func (msg NewOrderMsg) GetSignBytes() []byte + func (msg NewOrderMsg) GetSigners() []sdk.AccAddress + func (msg NewOrderMsg) Route() string + func (msg NewOrderMsg) String() string + func (msg NewOrderMsg) Type() string + func (msg NewOrderMsg) ValidateBasic() sdk.Error + type NewOrderResponse struct + OrderID string + type OrderBookSnapshot struct + Buys []me.PriceLevel + LastMatchHeight int64 + LastTradePrice int64 + Sells []me.PriceLevel + type OrderChange struct + Id string + MsgForFailedTx interface{} + SingleFee string + Tpe ChangeType + func (oc OrderChange) ResolveOrderInfo(orderInfos OrderInfoForPublish) *OrderInfo + func (oc OrderChange) String() string + type OrderChanges []OrderChange + type OrderInfo struct + CreatedHeight int64 + CreatedTimestamp int64 + CumQty int64 + LastUpdatedHeight int64 + LastUpdatedTimestamp int64 + TxHash string + TxSource int64 + type OrderInfoForPublish map[string]*OrderInfo + type SymbolPairType int8 + type SymbolSelector interface + SelectSymbolsToMatch func(roundOrders map[string][]string, height int64, matchAllSymbols bool) []string + type SymbolWithOrderNumber struct + type TimedWALMessage = cs.TimedWALMessage + type TradeTransfers []*Transfer + func (trans *TradeTransfers) Sort() + func (trans TradeTransfers) Len() int + func (trans TradeTransfers) Less(i, j int) bool + func (trans TradeTransfers) Swap(i, j int) + type Transfer struct + Fee sdk.Fee + Oid string + Symbol string + Trade *me.Trade + func TransferFromCanceled(ord me.OrderPart, ordMsg OrderInfo, isMatchFailure bool) Transfer + func TransferFromExpired(ord me.OrderPart, ordMsg OrderInfo) Transfer + func (tran *Transfer) IsBuyer() bool + func (tran *Transfer) String() string + func (tran Transfer) FeeFree() bool + func (tran Transfer) IsExpire() bool + func (tran Transfer) IsExpiredWithFee() bool + func (tran Transfer) IsNativeIn() bool + func (tran Transfer) IsNativeOut() bool + type TransferHandler func(Transfer) + type WAL interface + File func() *os.File + Start func() error + Stop func() error + Wait func() + Write func(WALMessage) + WriteSync func(WALMessage) + type WALDecoder = cs.WALDecoder + type WALEncoder = cs.WALEncoder + type WALMessage interface + type WALSearchOptions struct + IgnoreDataCorruptionErrors bool