请求历史柱数据时,Interactive Brokers TWS API keepUpToDate 函数 return 究竟做了什么?

What exactly does the Interactive Brokers TWS API keepUpToDate function return when Requesting Historical Bar Data?

根据 Interactive Brokers TWS API 关于“请求历史柱数据”的文档:

keepUpToDate, Whether a subscription is made to return updates of unfinished real time bars as they are available (True), or all data is returned on a one-time basis (False). Available starting with API v973.03+ and TWS v965+. If True, and endDateTime cannot be specified.

我不明白这是什么意思。从逻辑上讲,我曾假设此函数将启动“5 秒实时柱”订阅并在历史柱发送到现在后关闭“历史柱数据”订阅。

然而,事实并非如此。 post 收到的“历史条形数据”消息随机出现,有时相隔几秒,有时相隔几毫秒。这些消息几乎看起来是 Ticks,只是这些“Ticks”中的大多数具有相同的价格数据。

我想我知道这里发生了什么,或者至少是一个可能对同样试图解决这个问题的人有意义的例子。

看看:

Y 轴上的黄色价格滑块与最后一根蜡烛同步上下移动,它随着“实时”最后价格发生变化,直到蜡烛完全关闭并且下一根蜡烛开始。最后一个未完成的蜡烛的价格更新似乎与 HistoricalDataUpdateMessage 数据几乎完全匹配。

我已经处理了 HistoricalDataUpdateMessage 以产生与我的图表的 TWS 图表上所见类似的操作。结果几乎相同。