(self, order: dict, market: Market = None)
| 1075 | }, market) |
| 1076 | |
| 1077 | def parse_ws_order(self, order: dict, market: Market = None): |
| 1078 | # |
| 1079 | # spot |
| 1080 | # |
| 1081 | # { |
| 1082 | # "s": "btc_usdt", # symbol |
| 1083 | # "bc": "btc", # base currency |
| 1084 | # "qc": "usdt", # quotation currency |
| 1085 | # "t": 1656043204763, # happened time |
| 1086 | # "ct": 1656043204663, # create time |
| 1087 | # "i": "6216559590087220004", # order id, |
| 1088 | # "ci": "test123", # client order id |
| 1089 | # "st": "PARTIALLY_FILLED", # state NEW/PARTIALLY_FILLED/FILLED/CANCELED/REJECTED/EXPIRED |
| 1090 | # "sd": "BUY", # side BUY/SELL |
| 1091 | # "tp": "LIMIT", # type LIMIT/MARKET |
| 1092 | # "oq": "4" # original quantity |
| 1093 | # "oqq": 48000, # original quotation quantity |
| 1094 | # "eq": "2", # executed quantity |
| 1095 | # "lq": "2", # remaining quantity |
| 1096 | # "p": "4000", # price |
| 1097 | # "ap": "30000", # avg price |
| 1098 | # "f":"0.002" # fee |
| 1099 | # } |
| 1100 | # |
| 1101 | # contract |
| 1102 | # |
| 1103 | # { |
| 1104 | # "symbol": "btc_usdt", # Trading pair |
| 1105 | # "orderId": "1234", # Order Id |
| 1106 | # "origQty": "34244", # Original Quantity |
| 1107 | # "avgPrice": "123", # Quantity |
| 1108 | # "price": "1111", # Average price |
| 1109 | # "executedQty": "34244", # Volume(Cont) |
| 1110 | # "orderSide": "BUY", # BUY, SELL |
| 1111 | # "positionSide": "LONG", # LONG, SHORT |
| 1112 | # "marginFrozen": "123", # Occupied margin |
| 1113 | # "sourceType": "default", # DEFAULT:normal order,ENTRUST:plan commission,PROFIR:Take Profit and Stop Loss |
| 1114 | # "sourceId" : "1231231", # Triggering conditions ID |
| 1115 | # "state": "", # state:NEW:New order(unfilled);PARTIALLY_FILLED:Partial deal;PARTIALLY_CANCELED:Partial revocation;FILLED:Filled;CANCELED:Cancled;REJECTED:Order failed;EXPIRED:Expired |
| 1116 | # "createTime": 1731231231, # CreateTime |
| 1117 | # "clientOrderId": "204788317630342726" |
| 1118 | # } |
| 1119 | # |
| 1120 | marketId = self.safe_string_2(order, 's', 'symbol') |
| 1121 | tradeType = 'contract' if ('symbol' in order) else 'spot' |
| 1122 | market = self.safe_market(marketId, market, None, tradeType) |
| 1123 | timestamp = self.safe_integer_2(order, 'ct', 'createTime') |
| 1124 | return self.safe_order({ |
| 1125 | 'info': order, |
| 1126 | 'id': self.safe_string_2(order, 'i', 'orderId'), |
| 1127 | 'clientOrderId': self.safe_string_2(order, 'ci', 'clientOrderId'), |
| 1128 | 'timestamp': timestamp, |
| 1129 | 'datetime': self.iso8601(timestamp), |
| 1130 | 'lastTradeTimestamp': None, |
| 1131 | 'symbol': market['symbol'], |
| 1132 | 'type': market['type'], |
| 1133 | 'timeInForce': None, |
| 1134 | 'postOnly': None, |
no test coverage detected