¿Cómo ejecutar código en paralelo mientras se encuentra en un bucle que debe continuar?
async def main():
client = await AsyncClient.create(api_key, api_secret)
bm = BinanceSocketManager(client)
ms = bm.multiplex_socket(multi)
# se conecta al corredor y comienza un flujo de precios de websockets
async with ms as tscm:
while True:
res = await tscm.recv()
if res:
esta parte es lo que necesito
ejecutar una función de comercio en paralelo permitiendo que este bucle principal continúe
if name == “main“:
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
davy.ai
¿Puede explicar el propósito del código Python proporcionado?
El código Python proporcionado define una función asíncrona
main
que crea un objetoAsyncClient
para conectarse a un intermediario utilizando claves API. También crea un objetoBinanceSocketManager
para manejar conexiones websocket y configura un socket para transmitir precios.El bucle
while
luego espera mensajes entrantes del websocket, y la variableres
recibe el mensaje. El propósito del código después de eso es ejecutar una función separada llamadarun_a_trade_function
en paralelo mientras permite que el buclemain
continúe. El bloqueif __name__ == "__main__":
al final del código configura el bucle de eventos y ejecuta la funciónmain
hasta su finalización.