Update to latest `KucoinMktPair` spec
parent
e0fdabf651
commit
d7f6a5ab63
|
@ -62,7 +62,7 @@ from piker._cacheables import (
|
||||||
)
|
)
|
||||||
from piker.log import get_logger
|
from piker.log import get_logger
|
||||||
from piker.data.validate import FeedInit
|
from piker.data.validate import FeedInit
|
||||||
from piker.types import Struct
|
from piker.types import Struct # NOTE, this is already a `tractor.msg.Struct`
|
||||||
from piker.data import (
|
from piker.data import (
|
||||||
def_iohlcv_fields,
|
def_iohlcv_fields,
|
||||||
match_from_pairs,
|
match_from_pairs,
|
||||||
|
@ -98,9 +98,18 @@ class KucoinMktPair(Struct, frozen=True):
|
||||||
def size_tick(self) -> Decimal:
|
def size_tick(self) -> Decimal:
|
||||||
return Decimal(str(self.quoteMinSize))
|
return Decimal(str(self.quoteMinSize))
|
||||||
|
|
||||||
|
callauctionFirstStageStartTime: None|float
|
||||||
|
callauctionIsEnabled: bool
|
||||||
|
callauctionPriceCeiling: float|None
|
||||||
|
callauctionPriceFloor: float|None
|
||||||
|
callauctionSecondStageStartTime: float|None
|
||||||
|
callauctionThirdStageStartTime: float|None
|
||||||
|
|
||||||
enableTrading: bool
|
enableTrading: bool
|
||||||
|
feeCategory: int
|
||||||
feeCurrency: str
|
feeCurrency: str
|
||||||
isMarginEnabled: bool
|
isMarginEnabled: bool
|
||||||
|
makerFeeCoefficient: float
|
||||||
market: str
|
market: str
|
||||||
minFunds: float
|
minFunds: float
|
||||||
name: str
|
name: str
|
||||||
|
@ -110,11 +119,10 @@ class KucoinMktPair(Struct, frozen=True):
|
||||||
quoteIncrement: float
|
quoteIncrement: float
|
||||||
quoteMaxSize: float
|
quoteMaxSize: float
|
||||||
quoteMinSize: float
|
quoteMinSize: float
|
||||||
symbol: str # our bs_mktid, kucoin's internal id
|
|
||||||
feeCategory: int
|
|
||||||
makerFeeCoefficient: float
|
|
||||||
takerFeeCoefficient: float
|
|
||||||
st: bool
|
st: bool
|
||||||
|
symbol: str # our bs_mktid, kucoin's internal id
|
||||||
|
takerFeeCoefficient: float
|
||||||
|
tradingStartTime: float|None
|
||||||
|
|
||||||
|
|
||||||
class AccountTrade(Struct, frozen=True):
|
class AccountTrade(Struct, frozen=True):
|
||||||
|
@ -396,7 +404,13 @@ class Client:
|
||||||
pairs: dict[str, KucoinMktPair] = {}
|
pairs: dict[str, KucoinMktPair] = {}
|
||||||
fqmes2mktids: bidict[str, str] = bidict()
|
fqmes2mktids: bidict[str, str] = bidict()
|
||||||
for item in entries:
|
for item in entries:
|
||||||
pair = pairs[item['name']] = KucoinMktPair(**item)
|
try:
|
||||||
|
pair = pairs[item['name']] = KucoinMktPair(**item)
|
||||||
|
except TypeError as te:
|
||||||
|
raise TypeError(
|
||||||
|
'`KucoinMktPair` and reponse fields do not match ??\n'
|
||||||
|
f'{KucoinMktPair.fields_diff(item)}\n'
|
||||||
|
) from te
|
||||||
fqmes2mktids[
|
fqmes2mktids[
|
||||||
item['name'].lower().replace('-', '')
|
item['name'].lower().replace('-', '')
|
||||||
] = pair.name
|
] = pair.name
|
||||||
|
|
Loading…
Reference in New Issue