(self, order: dict, market: Market = None)
| 2119 | return self.parse_orders(data, market, since, limit) |
| 2120 | |
| 2121 | def parse_order(self, order: dict, market: Market = None) -> Order: |
| 2122 | # |
| 2123 | # { |
| 2124 | # "order_index": 281474977354074, |
| 2125 | # "client_order_index": 0, |
| 2126 | # "order_id": "281474977354074", |
| 2127 | # "client_order_id": "0", |
| 2128 | # "market_index": 0, |
| 2129 | # "owner_account_index": 1077, |
| 2130 | # "initial_base_amount": "36.0386", |
| 2131 | # "price": "2221.60", |
| 2132 | # "nonce": 643418, |
| 2133 | # "remaining_base_amount": "0.0000", |
| 2134 | # "is_ask": True, |
| 2135 | # "base_size": 0, |
| 2136 | # "base_price": 222160, |
| 2137 | # "filled_base_amount": "0.0000", |
| 2138 | # "filled_quote_amount": "0.000000", |
| 2139 | # "side": "", |
| 2140 | # "type": "market", |
| 2141 | # "time_in_force": "immediate-or-cancel", |
| 2142 | # "reduce_only": False, |
| 2143 | # "trigger_price": "0.00", |
| 2144 | # "order_expiry": 0, |
| 2145 | # "status": "canceled-margin-not-allowed", |
| 2146 | # "trigger_status": "na", |
| 2147 | # "trigger_time": 0, |
| 2148 | # "parent_order_index": 0, |
| 2149 | # "parent_order_id": "0", |
| 2150 | # "to_trigger_order_id_0": "0", |
| 2151 | # "to_trigger_order_id_1": "0", |
| 2152 | # "to_cancel_order_id_0": "0", |
| 2153 | # "block_height": 102202, |
| 2154 | # "timestamp": 1766387932, |
| 2155 | # "created_at": 1766387932, |
| 2156 | # "updated_at": 1766387932 |
| 2157 | # } |
| 2158 | # |
| 2159 | marketId = self.safe_string(order, 'market_index') |
| 2160 | market = self.safe_market(marketId, market) |
| 2161 | timestamp = self.safe_timestamp(order, 'timestamp') |
| 2162 | isAsk = self.safe_bool(order, 'is_ask') |
| 2163 | if isAsk is None: |
| 2164 | isAskAsInteger = self.safe_integer(order, 'is_ask') |
| 2165 | if isAskAsInteger is not None: |
| 2166 | isAsk = isAskAsInteger == 1 |
| 2167 | side = None |
| 2168 | if isAsk is not None: |
| 2169 | side = 'sell' if isAsk else 'buy' |
| 2170 | type = self.safe_string(order, 'type') |
| 2171 | if type is None: |
| 2172 | typeAsInteger = self.safe_integer(order, 'order_type') |
| 2173 | type = self.parse_order_type_integer(typeAsInteger) |
| 2174 | triggerPrice = self.parse_number(self.omit_zero((self.safe_string(order, 'trigger_price')))) |
| 2175 | stopLossPrice = None |
| 2176 | takeProfitPrice = None |
| 2177 | if type is not None: |
| 2178 | if type.find('stop-loss') >= 0: |
no test coverage detected