Senzoukria · 术语表

数据合并

合并是把若干条行情更新合成一条的做法,典型做法是按固定间隔只发送某个价位或某个报价的最新状态,而不是发送每一次变化。它省下带宽和处理,但也藏起了中间状态:那些闪过的报价、在两张快照之间出现又消失的流动性,或者一笔笔成交的先后次序。

更新于 2026 年 9 月首次发布:2026年10月9日

本页目录
  1. 定义
  2. 一个算例
  3. 合并藏起了什么
  4. 数据流合并与显示刷新
  5. 为什么要合并
  6. 在 Senzoukria 里
  7. 常见错误
  8. 相关内容
  9. 同一栏目
  10. 其他语言版本
  11. 常见问题

定义

一条未合并的数据流按顺序投递每一个事件。一条合并过的数据流以更低的频率投递当前状态:如果某个价位自上一次更新以来变了五次,接收方只会收到第五个值。合并可以作用于报价、作用于深度,而在聚合的形式下也可以作用于成交。

一个算例

随着委托被加入和撤销,某个价位在一秒之内变了 120 次。一条未合并的数据流投递 120 条更新。一条合并到每秒 10 条的数据流最多投递 10 个状态,而另外那 110 个永远不会出现。一个每秒刷新 30 次的显示,最多能显示 30 个状态,即使那 120 个都已经被收到并被应用了。

合并藏起了什么

  • 闪烁的委托和短命的流动性,而这对任何研究撤单与堆叠的人都要紧。
  • 报价变化相对于成交的确切次序。
  • 一笔笔的成交,当成交被按间隔或按价格聚合成一条时。
  • 只有一条完整事件流才能重建的队列动态。

数据流合并与显示刷新

两者常常被搞混。如果数据流是未合并的,那么每一个事件都到达了应用并被应用到它的状态上;屏幕随后按它的刷新率显示那个状态。由事件累加出来的那些总量,比如按价格的成交量和 Delta,仍然是精确的。而如果数据流本身被合并了,那些缺失的事件就从未到达应用,任何显示都无法把它们复原。

为什么要合并

合并不是一种缺陷,而是一次权衡。一条繁忙合约的完整委托簿事件流,在活跃时段每秒可以是几万条消息,而把它们全部投递出去,要花带宽、要花接收方的处理能力,还要花接收方跟不上时的那份代价。于是提供方按价格分层出售:便宜或免费的层级被合并,而完整的事件流是最贵的那一档。这就是为什么「我的数据是不是被合并了」这个问题,答案几乎总是写在你所付的那份订阅里,而不是写在软件里。

在 Senzoukria 里

足迹图会聚合它收到的每一笔成交。显示路径按有界的速率刷新:Databento 的委托簿以每秒约 30 条更新推送给热力图,而经纪商的头寸流对每个工具最多合并到每秒 4 条,其中开仓、平仓和反手会立即推送。这些是数据到达之后才施加的显示选择,而不是对数据流的合并。

常见错误

  • 在一条合并过的深度数据流上研究幌骗或撤单流动性。
  • 把数据流从未发出的那些事件,归咎于显示的帧率。
  • 把来自一条聚合成交流的成交笔数,和来自一条未聚合的流作比较。

同一栏目

其他语言版本

常见问题

一条合并过的数据流更不准确吗?
它在它所报告的那些时刻上的数值是正确的,但它省略了这之间发生的事。对价格和那些总量来说这可能没问题;而对研究委托簿动态来说,这是一个真实的损失。
我怎么知道我的数据流有没有被合并?
去问提供方,或者在它的文档里查更新速率、以及它是否投递每一个委托簿事件。一条不论市场活跃程度都按固定节奏更新的数据流,是合并的一个迹象。
NEXT

继续阅读