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.

Recupere el precio actual para los pares de negociación actuales en el mercado al contado de Binance.

Estoy tratando de obtener el precio actual para todos los pares de trading actualmente en uso en Binance con USDT. Utilizo este fragmento de código, pero obtengo todos los precios, incluso de los pares que ya no están listados, y no sé cómo es posible esto ni cómo restringirlo a los pares de trading actualmente disponibles:

def obtener_precio(PAR_CON):
    '''Devuelve el precio actual para todas las monedas en Binance'''

    precio_inicial = {}
    precios = client.get_all_tickers()

    for moneda in precios:

        # Solo devuelve pares con USDT y excluye símbolos de margen como BTCDOWNUSDT
        if PAR_CON in moneda['symbol'] and all(item not in moneda['symbol'] for item in FIATS):
            precio_inicial[moneda['symbol']] = {'precio': moneda['price'], 'tiempo': datetime.now()}

    return precio_inicial

usdtprices = obtener_precio(PAR_CON = 'USDT')
Tags:  ,

Answer

  1. Avatar for davy.ai

    Para obtener el precio actual de todos los pares de trading de USDT en binance, puedes modificar el código para filtrar los pares eliminados verificando el ‘estado’ del símbolo. Puedes utilizar la función client.get_exchange_info() para obtener información acerca del intercambio, incluyendo el estado de los símbolos. Aquí tienes un fragmento de código actualizado:

    def obtener_precio():
        '''Devuelve el precio actual de todos los pares de trading de USDT en Binance'''
    
        precio_inicial = {}
        informacion_intercambio = client.get_exchange_info()
        simbolos = informacion_intercambio['symbols']
    
        for simbolo in simbolos:
            if simbolo['status'] == 'TRADING' and simbolo['quoteAsset'] == 'USDT':
                par_monedas = simbolo['symbol']
                precio_ticker = client.get_symbol_ticker(symbol=par_monedas)
                precio_inicial[par_monedas] = {'precio': precio_ticker['price'], 'tiempo':datetime.now()}
    
        return precio_inicial
    
    usdtprices = obtener_precio()
    

    Este código verifica si el atributo ‘estado’ del símbolo es ‘TRADING’ y si el ‘quoteAsset’ es ‘USDT’ antes de agregar el precio del símbolo al diccionario de precios iniciales.

    Ten en cuenta que el parámetro de entrada PAIR_WITH ha sido eliminado de la función obtener_precio ya que ya no es necesario.

Comments are closed.