MCPcopy Create free account
hub / github.com/ccxt/ccxt / fetch_order

Method fetch_order

python/ccxt/xt.py:2503–2673  ·  view source on GitHub ↗

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={})

Source from the content-addressed store, hash-verified

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",

Tested by

no test coverage detected