首页 > 解决方案 > 使用 websocket 管理币安订单簿

问题描述

我对币安文档中的建议实现有疑问。该指南可在链接上获得: 如何正确管理本地订单簿

如果我需要源源不断的@depth 数据流,为什么我需要他们建议的前四个步骤。为什么我要先缓冲流然后拍摄快照以确定要丢弃哪些数据然后继续收听流?如果我的用例甚至需要这些步骤(正在跟踪实时订单簿数据),我不理解这些步骤的逻辑需求

标签: apiwebsocketstreambinance

解决方案


如果您拍摄快照然后开始收听流,您可能会错过获取快照和启动流之间的事件。这意味着您的本地订单簿将无效(您绝对不希望在交易应用程序中出现这种情况)。

在之后拍摄快照背后的想法是保证您在快照之后拥有所有事件。这种方法的副作用是您可能还拥有一些快照之前的内容。因此,您可以根据它们的 lastUpdateId 丢弃您不需要的少数(如果有)。

我不确定你用什么语言来管理一个,但如果你想要一个 java 实现,请告诉我,我会把我的推送到 github,这样你就可以使用它了。


推荐阅读