Извлечение всех данных для конкретной пары монет (Python-Binance API)

#python #api #binance

#python #API #binance

Вопрос:

У меня есть немного кода, который будет загружать данные от минуты к минуте исторически из binance и объединять все это в свой собственный CSV. НАПРИМЕР: BCHUSDT-1m-data.csv , BTCUSDT-1m-data.csv , и т.д. для любых пар, которые я хочу. Тем не менее, я продолжаю получать requests.exceptions.ChunkedEncodingError connectionreset error 10054 (closed by remote host) .

Есть ли лучший способ получить эту информацию, чем с помощью client.get_historical_klines(interval) метода? В идеале я хотел бы получить еще более детализированные данные (30, 15 или даже 1 с, если это вообще возможно исторически). Заранее спасибо!

Ссылка на API: Python-Binance API

Комментарии:

1. Взгляните на их страницу websocket , она позволяет передавать данные и получать обновления каждую секунду, однако я считаю, что Binance API ограничен степенью детализации 1m

Ответ №1:

Для сделок менее 1 млн вам необходимо использовать

 trades = client.get_historical_trades(symbol='BNBBTC') 
 

или

 trades = client.get_aggregate_trades(symbol='BNBBTC') 
 

Последний вариант лучше, он имеет меньший вес и содержит больше информации
Затем, если вы хотите объединить их с candles / klines, вы можете использовать pandas resample или функцию ohlc.

Комментарии:

1. Спасибо! Я попробую, и если все пойдет хорошо, я отмечу это как ответ!

2. Сработало ли это для вас? Похоже, что большинство из 10054 сообщений, которые я видел, использовали функцию ожидания времени, используете ли вы это где-нибудь?