Получение глубины ордера с помощью Python-binance, но код не завершаетсяPython

Программы на Python
Anonymous
Получение глубины ордера с помощью Python-binance, но код не завершается

Сообщение Anonymous »

Я запускаю скрипт Python для получения всех текущих книг заказов для всех символов, заканчивающихся на USDT.
Каждый раз, когда я пытаюсь запустить его, он извлекает книгу заказов для первых трех символов (в данном случае BTCUSDT, ETHUSDT и BNBUSDT). Кто-нибудь поймет, что я здесь путаю?
Я использую эту логику, чтобы получить список символов и книгу ордеров;
import asyncio
import config as c #from config.py
import infinity as inf #userdefined function for infinity (probably not needed)

from binance import AsyncClient, DepthCacheManager, Client

client = Client(c.API_KEY, c.API_SECRET, tld = 'com')

info = client.get_exchange_info()
symbols = info['symbols']

ls = []

for s in symbols:
if 'USDT' in s['symbol']:
#if 'BUSD' not in s['symbol']:
ls.append(s['symbol'])

async def main():

# initialise the client
client = await AsyncClient.create()

for i in ls:
async with DepthCacheManager(client, symbol= i, limit = 10000) as dcm_socket:
depth_cache = await dcm_socket.recv()
symbol = i
asks = depth_cache.get_asks()[:5]
bids = depth_cache.get_bids()[:5]
full = [symbol, asks, bids]
print(full)

if __name__ == "__main__":

loop = asyncio.get_event_loop()
loop.run_until_complete(main())

Вернуться в «Python»