es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

PyLance muestra “Código inaccesible” para el uso de Websocket del BinanceSocketManager.

PyLance muestra el mensaje “El código no se puede alcanzar” para el uso de Websocket en BinanceSocketManager

¿Es esto un error o el código realmente no funciona?

async def main(coin):
    bm = BinanceSocketManager(client)
    ts = bm.trade_socket(coin)
    async with ts as tscm:
        while True:
            res = await tscm.recv()
            if res:
                frame = createframe(res)
                if frame.Price[0] < buyprice * 0.97 or frame.Price[0] > 1.005 * buyprice:
                    order = client.create_order(symbol=coin,
                    side='SELL',
                    type='MARKET',
                    quantity=buy_quantity)
                    print(order)
                    loop.stop()
    await client.close_connection() #Este es el código inalcanzable

Gracias por su ayuda.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Esto no es un error, el código realmente no funciona. PyLance señala que la línea await client.close_connection() nunca se alcanzará porque el ciclo siempre se detendrá antes de que se ejecute esa línea. Por lo tanto, esta línea de código se considera “inasequible”.

    Para solucionar esto, podrías mover la línea await client.close_connection() dentro del ciclo, después de la línea loop.stop(). De esta manera, solo se ejecutará si el ciclo no se detiene por la condición en el ciclo while.

Comments are closed.