Volume Z-Score 指标:公式、参数与读法
Volume Z-Score 把一根K线的成交量表示为它偏离之前K线平均成交量的标准差个数。默认周期为 20 时,读数 2 表示该K线的成交量比前 20 根K线的平均值高出两个标准差。
Senzoukria · 指标 · Updated September 2026
Volume Z-Score — 逐笔成交与资金流, 显示在图表下方的独立面板中.
Volume Z-Score 测量的是什么
均值和标准差用当前K线严格之前的K线计算,采用总体公式,因此一根大K线永远不会抬高自己的基准,也不会压低自己的读数。有两种情况不返回数值:K线之前还没有完整的窗口;以及窗口内成交量完全恒定,此时标准差为零,比值无定义。默认周期 20 是判断一根K线的成交量相对其近期历史是否异常的常用基准。
公式:代码中的实现
这不是别处常见的定义,而是所发布代码实际计算的内容,记录在实现旁边:
Z-score du volume : (vol[i] − μ) / σ où μ/σ (population, ÷N) portent sur les N barres STRICTEMENT précédentes (fenêtre [i−N, i−1] — convention de famille, cf. en-tête : la barre courante ne dilue pas sa référence). Warm-up (< N barres avant i) ou σ = 0 (volume constant : z indéfini) → null. Défaut N=20, la référence usuelle du volume « anormal ».
如何解读
- 读数在零附近,说明该K线的成交量在近期背景下属于正常。
- 负读数标出比近期平均更清淡的K线,连续出现则标出一段参与度低的时期。
- 高读数说明该K线相对其自身近期历史异常,而不是相对全天、相对该品种或相对其他日子的同一时段。
- 由于当前K线不计入其基准,尖峰在出现时会以完整幅度显示;一旦进入窗口,它会同时抬高均值和离散度,因此几根K线之后同样大的K线读数会更低。
- 把原始成交量窗格放在旁边:Z 分数告诉你一根K线有多异常,但永远不告诉你成交了多少。
参数与默认值
周期默认 20,可设为 2 到 500。周期短则反应快,但样本小,标准差容易偏小,从而夸大尖峰;周期长则基准稳定,同样的原始成交量读数更低,第一个数值也会按窗口长度延迟出现。
| 参数 | 类型 | 默认值 | 取值范围 |
|---|---|---|---|
| Period | number | 20 | 2 – 500 |
它无法显示的内容
成交量分布通常是右偏而非对称的,因此这里的 Z 分数是一个标准化距离,而不是概率或百分位。窗口内的一个异常值就足以抬高离散度,掩盖下一次真正的尖峰。窗口是固定数量的前序K线,不会在交易时段重置,因此开盘后不久的K线会与成交条件截然不同的隔夜时段比较。该序列也没有方向:极端读数不说明是谁在买或卖;清淡品种上的空白值意味着基准没有离散度可作除数。
相关指标
- Tape Speed — 逐笔成交与资金流
- Diagonal Imbalances — 逐笔成交与资金流
- Stacked Imbalances — 逐笔成交与资金流
- Absorption Score — 逐笔成交与资金流
- Unfinished Auctions — 逐笔成交与资金流
- Effort vs Result — 逐笔成交与资金流
其他语言版本
Frequently asked questions
- 成交量 Z 分数的阈值设多少合适?
- 没有通用的水平。什么算极端,取决于你选择的周期、品种和时段,因为基准只是前序K线。一个实用的方法是观察在你自己的图表上,哪些读数对应你已经认为异常的K线,然后把这个范围作为你自己的参考。
- 为什么成交量 Z 分数在某些K线上是空白?
- 有两种情况不产生数值。第一种是预热:该K线之前还没有完整的前序K线窗口,无法计算均值和离散度。第二种是窗口内每根K线的成交量都相同,标准差为零、比值无定义,因此不绘制任何值,而不是给出一个误导性的零。
- 成交量 Z 分数和相对成交量是一回事吗?
- 不是。相对成交量通常是当前成交量与某个平均值之比,常与以往交易时段的同一时刻比较。Z 分数用偏离均值的幅度除以最近 N 根K线的离散度,因此考虑了成交量近期的波动程度,其窗口是简单的前序K线数量,而不是按时段划分的分布。