fetch all unfilled currently open orders https://developers.binance.com/docs/binance-spot-api-docs/rest-api/trading-endpoints#current-open-orders-user_data https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Current-All-Open-Orders h
(self, symbol: Str = None, since: Int = None, limit: Int = None, params={})
| 7027 | return self.parse_orders(response, market, since, limit) |
| 7028 | |
| 7029 | def fetch_open_orders(self, symbol: Str = None, since: Int = None, limit: Int = None, params={}) -> List[Order]: |
| 7030 | """ |
| 7031 | fetch all unfilled currently open orders |
| 7032 | |
| 7033 | https://developers.binance.com/docs/binance-spot-api-docs/rest-api/trading-endpoints#current-open-orders-user_data |
| 7034 | https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Current-All-Open-Orders |
| 7035 | https://developers.binance.com/docs/derivatives/coin-margined-futures/trade/rest-api/Current-All-Open-Orders |
| 7036 | https://developers.binance.com/docs/derivatives/option/trade/Query-Current-Open-Option-Orders |
| 7037 | https://developers.binance.com/docs/margin_trading/trade/Query-Margin-Account-Open-Orders |
| 7038 | https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Orders |
| 7039 | https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-UM-Open-Conditional-Orders |
| 7040 | https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Orders |
| 7041 | https://developers.binance.com/docs/derivatives/portfolio-margin/trade/Query-All-Current-CM-Open-Conditional-Orders |
| 7042 | https://developers.binance.com/docs/derivatives/usds-margined-futures/trade/rest-api/Current-All-Algo-Open-Orders |
| 7043 | |
| 7044 | :param str symbol: unified market symbol |
| 7045 | :param int [since]: the earliest time in ms to fetch open orders for |
| 7046 | :param int [limit]: the maximum number of open orders structures to retrieve |
| 7047 | :param dict [params]: extra parameters specific to the exchange API endpoint |
| 7048 | :param str [params.marginMode]: 'cross' or 'isolated', for spot margin trading |
| 7049 | :param boolean [params.portfolioMargin]: set to True if you would like to fetch open orders in the portfolio margin account |
| 7050 | :param boolean [params.trigger]: set to True if you would like to fetch portfolio margin account conditional orders |
| 7051 | :param str [params.subType]: "linear" or "inverse" |
| 7052 | :returns Order[]: a list of `order structures <https://docs.ccxt.com/?id=order-structure>` |
| 7053 | """ |
| 7054 | self.load_markets() |
| 7055 | market = None |
| 7056 | type = None |
| 7057 | request = {} |
| 7058 | marginMode = None |
| 7059 | marginMode, params = self.handle_margin_mode_and_params('fetchOpenOrders', params) |
| 7060 | isPortfolioMargin = None |
| 7061 | isPortfolioMargin, params = self.handle_option_and_params_2(params, 'fetchOpenOrders', 'papi', 'portfolioMargin', False) |
| 7062 | isConditional = self.safe_bool_n(params, ['stop', 'trigger', 'conditional']) |
| 7063 | if symbol is not None: |
| 7064 | market = self.market(symbol) |
| 7065 | request['symbol'] = market['id'] |
| 7066 | defaultType = self.safe_string_2(self.options, 'fetchOpenOrders', 'defaultType', 'spot') |
| 7067 | marketType = market['type'] if ('type' in market) else defaultType |
| 7068 | type = self.safe_string(params, 'type', marketType) |
| 7069 | elif self.options['warnOnFetchOpenOrdersWithoutSymbol']: |
| 7070 | raise ExchangeError(self.id + ' fetchOpenOrders() WARNING: fetching open orders without specifying a symbol has stricter rate limits(10 times more for spot, 40 times more for other markets) compared to requesting with symbol argument. To acknowledge self warning, set ' + self.id + '.options["warnOnFetchOpenOrdersWithoutSymbol"] = False to suppress self warning message.') |
| 7071 | else: |
| 7072 | defaultType = self.safe_string_2(self.options, 'fetchOpenOrders', 'defaultType', 'spot') |
| 7073 | type = self.safe_string(params, 'type', defaultType) |
| 7074 | subType = None |
| 7075 | subType, params = self.handle_sub_type_and_params('fetchOpenOrders', market, params) |
| 7076 | params = self.omit(params, ['type', 'stop', 'trigger', 'conditional']) |
| 7077 | response = None |
| 7078 | if type == 'option': |
| 7079 | if since is not None: |
| 7080 | request['startTime'] = since |
| 7081 | if limit is not None: |
| 7082 | request['limit'] = limit |
| 7083 | response = self.eapiPrivateGetOpenOrders(self.extend(request, params)) |
| 7084 | elif self.is_linear(type, subType): |
| 7085 | if isPortfolioMargin: |
| 7086 | if isConditional: |
nothing calls this directly
no test coverage detected