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

Method fetch_orders

python/ccxt/bitmex.py:1102–1141  ·  view source on GitHub ↗

https://www.bitmex.com/api/explorer/#not /Order/Order_getOrders fetches information on multiple orders made by the user :param str symbol: unified market symbol of the market orders were made in :param int [since]: the earliest time in ms to fetch orders for

(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})

Source from the content-addressed store, hash-verified

1100 raise OrderNotFound(self.id + ': The order ' + id + ' not found.')
1101
1102 def fetch_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
1103 """
1104
1105 https://www.bitmex.com/api/explorer/#not /Order/Order_getOrders
1106
1107 fetches information on multiple orders made by the user
1108 :param str symbol: unified market symbol of the market orders were made in
1109 :param int [since]: the earliest time in ms to fetch orders for
1110 :param int [limit]: the maximum number of order structures to retrieve
1111 :param dict [params]: extra parameters specific to the exchange API endpoint
1112 :param int [params.until]: the earliest time in ms to fetch orders for
1113 :param boolean [params.paginate]: default False, when True will automatically paginate by calling self endpoint multiple times. See in the docs all the [availble parameters](https://github.com/ccxt/ccxt/wiki/Manual#pagination-params)
1114 :returns Order[]: a list of `order structures <https://docs.ccxt.com/?id=order-structure>`
1115 """
1116 self.load_markets()
1117 paginate = False
1118 paginate, params = self.handle_option_and_params(params, 'fetchOrders', 'paginate')
1119 if paginate:
1120 return self.fetch_paginated_call_dynamic('fetchOrders', symbol, since, limit, params, 100)
1121 market = None
1122 request = {}
1123 if symbol is not None:
1124 market = self.market(symbol)
1125 request['symbol'] = market['id']
1126 if since is not None:
1127 request['startTime'] = self.iso8601(since)
1128 if limit is not None:
1129 request['count'] = limit
1130 until = self.safe_integer_2(params, 'until', 'endTime')
1131 if until is not None:
1132 params = self.omit(params, ['until'])
1133 request['endTime'] = self.iso8601(until)
1134 request = self.deep_extend(request, params)
1135 # why the hassle? urlencode in python is kinda broken for nested dicts.
1136 # E.g. self.urlencode({"filter": {"open": True}}) will return "filter={'open':+True}"
1137 # Bitmex doesn't like that. Hence resorting to self hack.
1138 if 'filter' in request:
1139 request['filter'] = self.json(request['filter'])
1140 response = self.privateGetOrder(request)
1141 return self.parse_orders(response, market, since, limit)
1142
1143 def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]:
1144 """

Callers 3

fetch_orderMethod · 0.95
fetch_open_ordersMethod · 0.95
fetch_closed_ordersMethod · 0.95

Calls 11

safe_integer_2Method · 0.80
deep_extendMethod · 0.80
parse_ordersMethod · 0.80
privateGetOrderMethod · 0.65
load_marketsMethod · 0.45
marketMethod · 0.45
iso8601Method · 0.45
omitMethod · 0.45
jsonMethod · 0.45

Tested by

no test coverage detected