fetches information on an order made by the user https://doc.xt.com/#orderorderGet https://doc.xt.com/#futures_ordergetById https://doc.xt.com/#futures_entrustgetPlanById https://doc.xt.com/#futures_entrustgetProfitById :param str id: order id
(self, id: str, symbol: Str = None, params={})
| 2501 | return self.parse_order(response, market) |
| 2502 | |
| 2503 | def fetch_order(self, id: str, symbol: Str = None, params={}): |
| 2504 | """ |
| 2505 | fetches information on an order made by the user |
| 2506 | |
| 2507 | https://doc.xt.com/#orderorderGet |
| 2508 | https://doc.xt.com/#futures_ordergetById |
| 2509 | https://doc.xt.com/#futures_entrustgetPlanById |
| 2510 | https://doc.xt.com/#futures_entrustgetProfitById |
| 2511 | |
| 2512 | :param str id: order id |
| 2513 | :param str [symbol]: unified symbol of the market the order was made in |
| 2514 | :param dict params: extra parameters specific to the xt api endpoint |
| 2515 | :param bool [params.trigger]: if the order is a trigger order or not |
| 2516 | :param bool [params.stopLossTakeProfit]: if the order is a stop-loss or take-profit order |
| 2517 | :returns dict: An `order structure <https://docs.ccxt.com/en/latest/manual.html#order-structure>` |
| 2518 | """ |
| 2519 | self.load_markets() |
| 2520 | market = None |
| 2521 | if symbol is not None: |
| 2522 | market = self.market(symbol) |
| 2523 | request = {} |
| 2524 | type = None |
| 2525 | subType = None |
| 2526 | response = None |
| 2527 | type, params = self.handle_market_type_and_params('fetchOrder', market, params) |
| 2528 | subType, params = self.handle_sub_type_and_params('fetchOrder', market, params) |
| 2529 | trigger = self.safe_value(params, 'stop') |
| 2530 | stopLossTakeProfit = self.safe_value(params, 'stopLossTakeProfit') |
| 2531 | if trigger: |
| 2532 | request['entrustId'] = id |
| 2533 | elif stopLossTakeProfit: |
| 2534 | request['profitId'] = id |
| 2535 | else: |
| 2536 | request['orderId'] = id |
| 2537 | if trigger: |
| 2538 | params = self.omit(params, 'stop') |
| 2539 | if subType == 'inverse': |
| 2540 | response = self.privateInverseGetFutureTradeV1EntrustPlanDetail(self.extend(request, params)) |
| 2541 | else: |
| 2542 | response = self.privateLinearGetFutureTradeV1EntrustPlanDetail(self.extend(request, params)) |
| 2543 | elif stopLossTakeProfit: |
| 2544 | params = self.omit(params, 'stopLossTakeProfit') |
| 2545 | if subType == 'inverse': |
| 2546 | response = self.privateInverseGetFutureTradeV1EntrustProfitDetail(self.extend(request, params)) |
| 2547 | else: |
| 2548 | response = self.privateLinearGetFutureTradeV1EntrustProfitDetail(self.extend(request, params)) |
| 2549 | elif subType == 'inverse': |
| 2550 | response = self.privateInverseGetFutureTradeV1OrderDetail(self.extend(request, params)) |
| 2551 | elif (subType == 'linear') or (type == 'swap') or (type == 'future'): |
| 2552 | response = self.privateLinearGetFutureTradeV1OrderDetail(self.extend(request, params)) |
| 2553 | else: |
| 2554 | response = self.privateSpotGetOrderOrderId(self.extend(request, params)) |
| 2555 | # |
| 2556 | # spot |
| 2557 | # |
| 2558 | # { |
| 2559 | # "rc": 0, |
| 2560 | # "mc": "SUCCESS", |
no test coverage detected