True asynchronous, in fact, to get the market these asynchronous are enough, after the signal is generated, the corresponding currency is operated by event drives, those synchronous interfaces wrapped in the platform are enough. You need Python 3.61 and the appropriate library installed.
'''backtest start: 2021-11-04 00:00:00 end: 2022-02-01 00:00:00 period: 1h basePeriod: 15m ''' import time import asyncio from aiohttp import ClientSession import time import datetime global tasks tasks = [] async def fetch_exchangeinfo(): exchangeinfo="https://fapi.binance.com//fapi/v1/exchangeInfo" async with ClientSession() as session: async with session.get(exchangeinfo) as response: result=await response.read() Log(result.text, time.time()) return result async def fetch_depth(symbol,limit): symbol_depth="https://fapi.binance.com//fapi/v1/depth?symbol="+str(symbol)+"&limit="+str(limit) async with ClientSession() as session: async with session.get(symbol_depth) as response: result=await response.read() Log(result.text, time.time()) return result async def fetch_klines(symbol,interval,limit): symbol_kline="https://fapi.binance.com//fapi/v1/klines?symbol="+str(symbol)+"&interval="+str(interval)+"&limit="+str(limit) async with ClientSession() as session: async with session.get(symbol_kline) as response: result = await response.read() Log(symbol,result, time.time()) return result async def fetch_all_ticker(): all_symbol_ticker = "https://fapi.binance.com/fapi/v1/ticker/price" async with ClientSession() as session: async with session.get(all_symbol_ticker) as response: result = await response.read() Log(result.text, time.time()) return result def main(): while True: Log(datetime.datetime.now(),'开始') symbol_list=['BTCUSDT','ETHUSDT','BNBUSDT','ETCUSDT','EOSUSDT','SANDUSDT','XRPUSDT','ADAUSDT','GALAUSDT','IOTXUSDT','BNBUSDT','MATICUSDT'] for i in range(12): task = asyncio.ensure_future(fetch_klines(symbol_list[i],'15m',500)) tasks.append(task) loop = asyncio.get_event_loop() result = loop.run_until_complete(asyncio.gather(*tasks)) Log(datetime.datetime.now(),'完成') Sleep(1000)
Treasures from HeavenWhat do you mean?