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

Method fetch_future_markets

python/ccxt/bybit.py:2029–2210  ·  view source on GitHub ↗
(self, params={})

Source from the content-addressed store, hash-verified

2027 return result
2028
2029 def fetch_future_markets(self, params={}) -> List[Market]:
2030 params = self.extend(params, {})
2031 params['limit'] = 1000 # minimize number of requests
2032 preLaunchMarkets = []
2033 usePrivateInstrumentsInfo = self.safe_bool(self.options, 'usePrivateInstrumentsInfo', False)
2034 response = None
2035 if usePrivateInstrumentsInfo:
2036 response = self.privateGetV5MarketInstrumentsInfo(params)
2037 else:
2038 linearPromises = [
2039 self.publicGetV5MarketInstrumentsInfo(params),
2040 self.publicGetV5MarketInstrumentsInfo(self.extend(params, {'status': 'PreLaunch'})),
2041 ]
2042 promises = linearPromises
2043 response = self.safe_dict(promises, 0, {})
2044 preLaunchMarkets = self.safe_dict(promises, 1, {})
2045 data = self.safe_dict(response, 'result', {})
2046 markets = self.safe_list(data, 'list', [])
2047 paginationCursor = self.safe_string(data, 'nextPageCursor')
2048 if paginationCursor is not None:
2049 while(paginationCursor is not None):
2050 params['cursor'] = paginationCursor
2051 responseInner: dict
2052 if usePrivateInstrumentsInfo:
2053 responseInner = self.privateGetV5MarketInstrumentsInfo(params)
2054 else:
2055 responseInner = self.publicGetV5MarketInstrumentsInfo(params)
2056 dataNew = self.safe_dict(responseInner, 'result', {})
2057 rawMarkets = self.safe_list(dataNew, 'list', [])
2058 rawMarketsLength = len(rawMarkets)
2059 if rawMarketsLength == 0:
2060 break
2061 markets = self.array_concat(rawMarkets, markets)
2062 paginationCursor = self.safe_string(dataNew, 'nextPageCursor')
2063 #
2064 # {
2065 # "retCode": 0,
2066 # "retMsg": "OK",
2067 # "result": {
2068 # "category": "linear",
2069 # "list": [
2070 # {
2071 # "symbol": "BTCUSDT",
2072 # "contractType": "LinearPerpetual",
2073 # "status": "Trading",
2074 # "baseCoin": "BTC",
2075 # "quoteCoin": "USDT",
2076 # "launchTime": "1585526400000",
2077 # "deliveryTime": "0",
2078 # "deliveryFeeRate": "",
2079 # "priceScale": "2",
2080 # "leverageFilter": {
2081 # "minLeverage": "1",
2082 # "maxLeverage": "100.00",
2083 # "leverageStep": "0.01"
2084 # },
2085 # "priceFilter": {
2086 # "minPrice": "0.50",

Callers 1

fetch_marketsMethod · 0.95

Calls 15

safe_boolMethod · 0.80
safe_dictMethod · 0.80
safe_listMethod · 0.80
safe_stringMethod · 0.80
array_concatMethod · 0.80
omit_zeroMethod · 0.80
safe_number_2Method · 0.80
parse_numberMethod · 0.80
safe_market_structureMethod · 0.80
safe_numberMethod · 0.80

Tested by

no test coverage detected