← Zurück

Гидра + Binance коннектор

Добрый день!

Пытаюсь скачать историю фьючерсной секции (тики, стаканы) гидрой с бинанса. При этом возникли следующие вопросы:

  1. Как ускорить скачивание тиков (увеличить количество запрашиваемых данных)? По умолчанию гидра скачивает последовательно по 999 тиков + 1 тик и так по кругу. В итоге выкачивание истории по времени примерно равно самому течению времени, т.е. если мне надо скачать 3 месяца истории тиков, то качать я их судя по всему буду 3 месяца.
  2. Как скачать историю стаканов? Галочка "Стаканы" в гидре стоит, но данные не скачиваются (Бинанс заявляет что хранит стаканы по фьючерсной секции с 2020 года).
  3. Что значит опция "Каналы (использовать каналы для входящих и исходящих сообщений)" в настройках коннектора.

War dieses Thema hilfreich?

Thema teilen

Kommentare (8)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Sprite
Sprite Autor

Ясно.

Marat
Marat

Добрый день. Какие логи у Вас пишет программа при работе. Низкая скорость может быть обусловлена самой работой Бинанса, такая же история со стаканами. Вы качаете с реальным ключом или с демо аккаунта?

Sprite
Sprite Autor

Marat: Добрый день. Скорость скачивания может быть обусловлена работой самого Бинанса. Необходимо видеть ваши логи. Касаемо стаканов , какой аккаунт Вы используете при работе, реальный или демо?

  1. Скорость скачивания по моему обусловлена тем, что гидра выкачивает и обрабатывает по 1 тысяче тиков. На ликвидном фьючерсе это примерно секунда по времени на рынке. На это гидра тратит примерно секунду. Вот у нас и получается - чтобы обработать секунду рыночных данных нужна секунда реального времени. Это ненормально. Я третью неделю качаю тики по одному инструменту с начала нового года. С постоянными обрывами на сегодня дошел до 23 января.
  2. По стаканам - стаканы у меня вообще не скачиваются. Скриншот настроек прилагается
  3. Логи прилагаются
  4. Аккаунт не демо
Marat
Marat

Sprite:

Marat: Добрый день. Скорость скачивания может быть обусловлена работой самого Бинанса. Необходимо видеть ваши логи. Касаемо стаканов , какой аккаунт Вы используете при работе, реальный или демо?

  1. Скорость скачивания по моему обусловлена тем, что гидра выкачивает и обрабатывает по 1 тысяче тиков. На ликвидном фьючерсе это примерно секунда по времени на рынке. На это гидра тратит примерно секунду. Вот у нас и получается - чтобы обработать секунду рыночных данных нужна секунда реального времени. Это ненормально. Я третью неделю качаю тики по одному инструменту с начала нового года. С постоянными обрывами на сегодня дошел до 23 января.
  2. По стаканам - стаканы у меня вообще не скачиваются. Скриншот настроек прилагается
  3. Логи прилагаются
  4. Аккаунт не демо

День добрый. Мы рассмотрим ваши данные и постараемся дать ответ на ваши вопросы .

Sprite
Sprite Autor

Ещё немного данных: после обрыва скачивания данных происходит автоматическое переподключение коннектора, но данные уже не скачиваются. Приходится постоянно следить за процессом и перезапускать его вручную в случае обрыва. В логах это выглядит так:

Binance 23.04.2022 00:24:13 +03:00 Info Для BTCUSDT_PERPETUAL@BNB загружено 1000 Тики. Binance (PartialDownload) 23.04.2022 00:24:15 +03:00 Info Partial 74216332 finished. Binance (PartialDownload) 23.04.2022 00:24:17 +03:00 Info Downloading BTCUSDT_PERPETUAL@BNB/Тики: 04.02.2022 15:19:20 +00:00-05.02.2022 15:19:20 +00:00 Binance (SubscriptionOnline) 23.04.2022 00:24:17 +03:00 Info In: MarketData,T(L)=2022.04.22 17:19:56.957,Sec=BTCUSDT_PERPETUAL@BNB,SecType=Future,Name=BTCUSDT_PERPETUAL,Exp=25.12.2100 08:00:00 +00:00,Price=0,01,Vol=0,001,MinVol=0,001,MaxVol=1000,Dec=2,Under=BTC,DataType=Тики,IsSubscribe=True,TransId=74216333,Cnt=1000,From=04.02.2022 15:19:20 +00:00,To=05.02.2022 15:19:20 +00:00,SmallTF=True Binance 23.04.2022 00:24:23 +03:00 Info Для BTCUSDT_PERPETUAL@BNB загружено 1000 Тики. Binance (PartialDownload) 23.04.2022 00:24:24 +03:00 Info Partial 74216333 finished. Binance (PartialDownload) 23.04.2022 00:24:26 +03:00 Info Downloading BTCUSDT_PERPETUAL@BNB/Тики: 04.02.2022 15:19:22 +00:00-05.02.2022 15:19:22 +00:00 Binance (SubscriptionOnline) 23.04.2022 00:24:26 +03:00 Info In: MarketData,T(L)=2022.04.22 17:19:56.957,Sec=BTCUSDT_PERPETUAL@BNB,SecType=Future,Name=BTCUSDT_PERPETUAL,Exp=25.12.2100 08:00:00 +00:00,Price=0,01,Vol=0,001,MinVol=0,001,MaxVol=1000,Dec=2,Under=BTC,DataType=Тики,IsSubscribe=True,TransId=74216335,Cnt=1000,From=04.02.2022 15:19:22 +00:00,To=05.02.2022 15:19:22 +00:00,SmallTF=True Binance 23.04.2022 00:24:28 +03:00 Info Для BTCUSDT_PERPETUAL@BNB загружено 999 Тики. Binance 23.04.2022 00:24:33 +03:00 Info Для BTCUSDT_PERPETUAL@BNB загружено 1 Тики. Binance (PartialDownload) 23.04.2022 00:24:33 +03:00 Info Partial 74216335 finished. Binance (PartialDownload) 23.04.2022 00:24:35 +03:00 Info Downloading BTCUSDT_PERPETUAL@BNB/Тики: 04.02.2022 15:19:23 +00:00-05.02.2022 15:19:23 +00:00 Binance (SubscriptionOnline) 23.04.2022 00:24:35 +03:00 Info In: MarketData,T(L)=2022.04.22 17:19:56.957,Sec=BTCUSDT_PERPETUAL@BNB,SecType=Future,Name=BTCUSDT_PERPETUAL,Exp=25.12.2100 08:00:00 +00:00,Price=0,01,Vol=0,001,MinVol=0,001,MaxVol=1000,Dec=2,Under=BTC,DataType=Тики,IsSubscribe=True,TransId=74216338,Cnt=1000,From=04.02.2022 15:19:23 +00:00,To=05.02.2022 15:19:23 +00:00,SmallTF=True Binance (Heartbeat) 23.04.2022 00:24:36 +03:00 Info Переподключается Binance 23.04.2022 00:24:36 +03:00 Error System.InvalidOperationException: failed to complete request: Error at Ecng.Net.RestSharpHelper.Invoke(IRestRequest request, Uri url, Object caller, Action2 logVerbose, Action1 init, Func`2 contentConverter) at StockSharp.Binance.Native.HttpClient.MakeRequest(Uri url, IRestRequest request) at StockSharp.Binance.Native.HttpClient.GetFirstTradeIdFromTime(BinanceSections section, String symbol, DateTimeOffset fromTime) at StockSharp.Binance.BinanceMessageAdapter.ProcessMarketData(MarketDataMessage mdMsg) at StockSharp.Binance.BinanceMessageAdapter.OnSendInMessage(Message message) at StockSharp.Messages.MessageAdapter.SendInMessage(Message message) Basket 23.04.2022 00:24:36 +03:00 Warning Subscription Error out: SubscriptionResponse,T(L)=2022.04.23 00:24:36.054,OrigTrId=74210718,Error=failed to complete request: Error Connector 23.04.2022 00:24:36 +03:00 Info Subscription 74210718 Active->Error. Connector 23.04.2022 00:24:36 +03:00 Info Подписка 74210718 удалена. Connector 23.04.2022 00:24:36 +03:00 Error Инструмент BTCUSDT_PERPETUAL@BNB не может подписаться на Тики. Ошибка 'failed to complete request: Error'. Binance (Heartbeat) 23.04.2022 00:24:46 +03:00 Info RCM: To Connecting. CurrState Переподключается PrevState Переподключается Attempts 100. Binance_HttpClient 23.04.2022 00:24:49 +03:00 Info synchronizing time... Binance_HttpClient 23.04.2022 00:24:50 +03:00 Info server time diff: 348.404ms, delay=299.36ms Binance (Heartbeat) 23.04.2022 00:24:50 +03:00 Info Подключение восстановлено.

После этого ничего не происходит.

PS Вы так и не ответили что значит опция "Каналы" в настройках коннектора PPS На сегодня дошел до 04 февраля, т.е. скорость обработки тиков я изначально указал примерно верно: чтобы скачать 1.5 дня истории по одному инструменту нам нужно потратить 1 день.

Sprite
Sprite Autor

Есть новости? PS Почитал документацию Binance по поводу истории стаканов на срочной секции, судя по всему ваш коннектор не поддерживает скачивание этих данных. Если я правильно понимаю, то вопрос снимается.

Support
Support

Добрый день,

  1. Скорость скачивания тиков увеличить невозможно, это ограничение бинанса. Однако есть другой способ. Бинанс предоставляет доступ к архивам маркет данных по адресу https://www.binance.com/en/landing/data Можете выкачивать сделки там, и импортировать их в стокшарп через адаптер CSV (http://doc.stocksharp.ru/topics/Csv.html)
  2. Скачивание истории стаканов бинанс стокшарпом не поддерживается. История стаканов, которую хранит бинанс также доступна через их архив по ссылке https://www.binance.com/en/landing/data также детали по ссылке https://github.com/binance/binance-public-data/tree/master/Futures_Order_Book_Download
  3. Опция "Каналы (использовать каналы для ..." устарела. Используйте значение по умолчанию.
Sprite
Sprite Autor

Ок, всё понятно, спасибо за ответы.