Канал глубины Binance Websocket слишком много обновлений для данных идентификаторов - PullRequest
0 голосов
/ 04 сентября 2018

Я использую Binance Websocket API , и когда я подписываюсь на каналы глубины (например, через wss: //stream.binance.com: 9443 / stream? Streams = btcusdt @ deep /), я иногда получают обновление, которое содержит слишком много обновлений для данного первого идентификатора («U») и последнего идентификатора («u»):

{"stream":"btcusdt@depth","data":{"e":"depthUpdate","E":1536066285499,"s":"BTCUSDT",
"U":238495725,
"u":238495734,
"b":[
["7369.47000000","0.00000000",[]], --238495725
["7369.46000000","0.00000000",[]], --238495726
["7369.45000000","0.00000000",[]], --238495727
["7369.19000000","0.90770800",[]], --238495728
["7365.20000000","0.20000000",[]], --238495729
["7363.71000000","0.54130000",[]], --238495730
["7362.94000000","0.00000000",[]], --238495731
["7358.00000000","0.00000000",[]]] --238495732
,"a":[
["7369.47000000","0.02302600",[]], --238495733
["7369.70000000","0.00000000",[]], --238495734
["7408.90000000","3.93000000",[]]] --238495735 WHICH IS NOT OKAY (>u)
}}

Я также заметил, что иногда я получаю больше идентификаторов, чем обновлений, таких как:

{"stream":"btcusdt@depth","data":{"e":"depthUpdate","E":1536068517031,"s":"BTCUSDT",
"U":238514909,
"u":238514912,
"b":[],
"a":[
["7366.54000000","0.00000000",[]], --238514909
["7367.09000000","0.00000000",[]]] --238514910
}}

Я пытаюсь добавить эти обновления в базу данных, поэтому наличие слишком большого количества идентификаторов является для меня меньшей проблемой, чем слишком мало. Если бы кто-нибудь мог объяснить, почему это происходит или как я могу неправильно понимать идентификаторы обновлений, это было бы очень ценно.

Заранее спасибо!

1 Ответ

0 голосов
/ 28 сентября 2018

Таким образом, получается, что «идентификаторы обновлений» не соответствуют идентификаторам заказов, и несколько записей в книге заказов могут быть изменены в одном обновлении.

Кроме того, порядок заданных заявок и запросов не является фактическим порядком, в котором они были получены, а скорее является нисходящим порядком для заявок и возрастанием для запросов, и состояние книги заказов невозможно определить из веб-сокета. API: /

...