DOM 剖面(时段深度记忆)

DOM 剖面把实时订单簿画成贴着价格轴的水平柱条,并记住整个时段里出现过的每一个价位,因此已经离开 L2 窗口的档位仍以淡色柱条留在图上。它默认开启,与 DOM 阶梯共用同一份记忆,并由供给图表的同一条深度数据流驱动。

Senzoukria · 文档 · 更新于 2026 年 9 月


位置

位置
图表 → 指标 → 叠加层 → DOM 剖面
默认
开启;柱宽 180 px;不透明度 65 %;记住远端档位 开启;最小挂单量 0
记忆
每侧最多 4 000 个档位;按与当前价格的距离裁剪到 3 600 个
刷新
记忆按绘制节奏重建(33 ms,30 Hz);但每个深度事件都会被记录

它做什么

最近收到的订单簿中,每个价位都画成一条柱条,锚在绘图区右边缘,位于该价格的精确高度上。买方和卖方叠放在同一档位:占优的一侧按所选不透明度绘制,另一侧用其 43 %。已经不在实时簿中、但本时段更早出现过的档位,会以减弱透明度的 60 % 从记忆中画出,并用淡色标签写出最后已知的挂单量 —— 这正是让剖面能和阶梯看得一样远的原因。

记忆走两条路径。按深度事件 —— 在 Rithmic 上实测常态为每秒 37 到 65 个,峰值可达 174 —— 把负载中的档位写入两张映射表(价格 → 最后挂单量),不做任何分配。按每个绘制帧裁剪记忆、排除实时订单簿,并重建记忆档位的数组。如果记忆和实时价格都没有变化,就复用上一次的输出。记忆实例由图表持有;DOM 阶梯读取同一个实例,因此同一个窗口里两者显示相同的记忆档位。

柱条按屏幕上可见的档位归一化,而不是按整个订单簿,因此一个很远的巨大档位不会把可见柱条压扁。当一行的高度不足 4 px 时,跳动点按 2 的幂分桶,每行显示其中最大的档位;高于这个高度时,每个跳动点一行。

参数设置

DOM 剖面的参数
设置默认改变什么
柱宽180 px(40–800)可见最大档位对应的柱条最大长度
不透明度65 %(10–100)占优一侧的透明度;另一侧使用它的 43 %
买方 / 卖方#089981 / #F2385A柱条颜色
挂单量标签开启行高足够时,在每行右侧打印挂单量
最小挂单量0 = 全部(0–500)隐藏低于该值的实时档位;低于它的记忆档位同样隐藏
记住远端档位开启保留并绘制本时段内离开实时 L2 窗口的档位

怎么用

保持这个叠加层开启,就能不打开阶梯也看到价格前方的挂单流动性。把某个价位上占优的颜色读作挂单较多的那一侧。淡色柱条是历史:数据源更早显示过、之后从其聚合窗口中掉出的档位,数量是最后一次看到的值。它们并不主张那笔委托还在那里。

覆盖不完整的行 —— 低于数据源已知的买方下界或高于已知的卖方上界 —— 以 45 % 透明度绘制,以免把被截断的订单簿误读成稀薄的订单簿。在存在大量一手档位的合约上,用「最小挂单量」去掉噪声。

限制与易错点

  • 聚合 L2 数据源发布的大约是每侧 10–20 个档位的窗口;之外的都是记忆,而记忆按与当前价格的距离限制在每侧 4 000 个档位。
  • 独立窗口有自己的记忆注册表;那里的阶梯只显示实时数据。
  • 阶梯中 VOL BID / VOL ASK / DELTA / TOTAL 几列显示的时段买卖成交剖面,是由图表 K 线构建的,而不是深度数据流,采用与成交量分布相同的 45 分钟时段切分,容量为 8 192 个跳动点。
  • 深度数据由供应商计费并授权;没有订单簿就没有剖面,而且这个叠加层无法证明数据流是完整的。

其他语言版本

常见问题

为什么有些柱条看起来很淡?
两个原因:淡色柱条是已经不在实时簿中的记忆档位;而 45 % 透明度的行位于数据源已知覆盖范围之外(买方下界或卖方上界)。
DOM 阶梯显示的是同一份记忆吗?
在主窗口中是的。图表按深度键注册它的记忆实例,阶梯读取这个实例;独立窗口无法访问它。
剖面是每个深度事件都更新吗?
每个事件都会写入记忆,但用于绘制的数组每秒最多重建 30 次,与成交刷新的节奏相同。