Zig Zag 指标:运作方式、设置、重绘与用法

Zig Zag 指标连接至少相隔指定百分比的波段高点和波段低点,传统设置为 5%,并忽略更小的波动,从而给出清晰的趋势轮廓。它按设计会重绘:最后一段在价格按完整偏差反转之前都是临时的。请使用已确认枢轴来阅读结构、计数波浪并锚定 Fibonacci 水平,入场时机要基于确认,而不是最后一段。
每张图表里都有大量无关紧要的波段。Zig Zag 指标会把它们剔除:它只绘制相隔达到最小波动幅度的转折点,因此趋势、回调及其结构一眼就能看清。它也是最容易被误解的指标之一,因为它的最后一条线会随实时数据移动,基于它构建的回测往往无法实际交易。本指南会介绍它的计算方式、TradingView 和 MetaTrader 上的设置、该使用哪种偏差、它为什么会重绘,以及如何正确使用它,并附带一个计算器。
经得起公开验证的指标。
一个引擎,四款精准工具:Gold(XAU)Scalper、机构级 Gravity Zone、Zeno 动量振荡指标,以及面向股票的 Zeno Stocks。
什么是 Zig Zag 指标?
Zig Zag 指标会在至少相隔指定百分比的波段高点和波段低点之间画直线,并忽略所有小于该幅度的价格波动。把它设为 5%,它就只连接相隔 5% 或以上波动的转折点;低于 5% 的每一次回调都会消失在那一段线内部。结果就是一个清晰的趋势轮廓 — 有波段,没有噪音。
它由两个属性定义。它是过滤器,不是预测工具:它是在事后画线,本身没有预测能力。并且它的最后一段是临时的:最新线段会持续延伸,或在价格按完整偏差反转前被重画,因此 Zig Zag 在实时数据上会重绘。理解这一点后,它就是观察市场结构、计数波浪和测量波段最有用的工具之一。它的思想可追溯到 Arthur Merrill 1977 年的著作 Filtered Waves。

Zig Zag 是如何计算的?
- 从一个点开始。数据中的第一个价格,或第一个已确认枢轴。
- 跟踪极值。在上行段中,持续记录每个新高;在下行段中,持续记录每个新低。
- 等待反转。当价格从极值回撤至少达到偏差幅度,例如 5%,该极值就成为已确认枢轴。
- 开始下一段。从该枢轴开始,沿相反方向跟踪新的极值。
- 重复。枢轴链就是 Zig Zag;从最后一个枢轴到当前极值的线段是临时的。
在线图上,计算使用收盘价;在柱状图和 K线图上,大多数平台使用高点和低点,因此会得到更大的波段。有些版本还会加入枢轴之间的最小 K线数量,从时间和幅度两方面进行过滤。实际使用中,不同平台的设置并不相同:
TradingView 和 MetaTrader 上的 Zig Zag 设置是什么?
| 平台 | 输入项 | 默认值 |
|---|---|---|
| TradingView(内置 Zig Zag) | Reversal price deviation (%)、pivot legs(确认枢轴的 K线数)、extend to last bar、display reversal price、cumulative volume 和 price change | Deviation 5%,pivot legs 10(根据已发布源代码) |
| MetaTrader 4/5(ZigZag) | Depth(K线数)、Deviation(点数,不是百分比)、Backstep(K线数) | Depth 12,Deviation 5,Backstep 3 |
| StockCharts | 百分比 | 传统值 5% |
这两个大平台的过滤方式不同。TradingView 的版本把百分比偏差与 pivot legs 结合起来,pivot legs 是确认一个高点或低点所需的左右两侧 K线数量,因此一个枢轴既需要足够大的波动,也需要周围有足够的 K线。MetaTrader 的经典 ZigZag 使用 Depth(枢轴之间的最小 K线数)、以点数而非百分比计量的 Deviation,以及 Backstep(新枢轴能够替代前一个枢轴前所需的 K线数)。把一个平台上的“5”照搬到另一个平台,不会得到相同的线。
您应该使用哪种 Zig Zag 偏差?

| 用途 | 时间周期 | 起始偏差 |
|---|---|---|
| 日内结构(指数、外汇) | 5–15 分钟 | 0.3%–1%(或基于 ATR) |
| 股票波段交易 | 日线 | 5%–8% |
| 加密货币波段 | 4 小时到日线 | 5%–10% |
| 主要趋势段 / Elliott 计数 | 日线到周线 | 10%–20% |
不存在唯一正确的设置;只有您交易的波段大小。较低偏差会画出每个小波段,适合日内结构;较高偏差只保留对波段交易或持仓交易重要的线段。由于不同市场波动率不同,一个适用于股指的百分比,对山寨币可能太紧,对 EURUSD 又可能太松。两个实用方法:把偏差设置为您持仓时愿意忽略的回调幅度附近,或把它与波动率挂钩,也就是把 ATR 的某个倍数换算为价格百分比。
Zig Zag 指标会重绘吗?

会 — 这是设计使然。最后一条线始终从最近的已确认枢轴延伸到当前极值。当价格继续沿该方向创出新极值时,这条线会继续延伸。如果价格反转幅度小于偏差后又恢复原方向,这条线只是继续延伸。只有当价格按完整偏差反转时,该极值才会成为已确认枢轴;在带有 pivot legs 的平台上,还要等右侧打印出足够多的 K线。TradingView 的帮助文档也直接说明:最新线段不是最终结果。
这有两个后果。Zig Zag 永远不会实时告诉您一个波段已经结束;它是在反转已经走完偏差之后才告诉您。并且,如果回测把 Zig Zag 枢轴当作在转折点当时就已知,得到的结果在实际交易中无法复制。请使用已确认枢轴做分析,并在确认上规划入场,而不是依据临时线段入场。
交易者如何使用 Zig Zag 指标?
| 用途 | 用途 | 注意事项 |
|---|---|---|
| 市场结构 | 通过枢轴读取更高高点和更高低点,或更低高点和更低低点 | 最后一个枢轴是临时的 |
| Elliott Wave 计数 | 使用能隔离您所计数级别波浪的偏差 | 不同设置会给出不同计数 |
| 图表形态 | 枢轴勾勒双顶、头肩形态、三角形和谐波形态 | 画在临时线段上的形态可能消失 |
| Fibonacci | 在已确认枢轴之间测量回撤和延伸 | 只锚定到已确认波段 |
| 支撑与阻力 | 枢轴价格标记波段水平 | 结合流动性和成交量 |
最常见的实际用途是作为结构地图。使用合理偏差时,枢轴会显示定义趋势的波段点序列:上升趋势中的更高高点和更高低点,第一个更低高点作为警告,以及跌破最后一个更高低点形成市场结构转变(MSS)。对 Elliott Wave 交易者来说,Zig Zag 能减少波浪起点和终点判断的主观性;对谐波形态和 Fibonacci 交易者来说,它提供一致的锚点。
有没有 Zig Zag 交易策略?
- 用已确认枢轴定义趋势。上升趋势需要两个更高高点和更高低点。
- 等待回调进入前一波段区域。也就是最后一个已确认高点与该线段 Fibonacci 50%–61.8% 之间的区域。
- 等待确认。低时间周期的结构转变或反应 K线,而不是临时的 Zig Zag 线段。
- 把止损放在最后一个已确认枢轴之外。如果价格突破它,这笔交易所依赖的结构就不存在了。
- 目标放在下一个波段。前高,或该线段的 Fibonacci 延伸。
这是一种把 Zig Zag 用作地图、而不是触发器的结构策略。那些在新的 Zig Zag 低点出现时买入的策略,在历史图表上看起来很出色,但实盘会失败,因为在实时数据中,该低点只有在价格已经按完整偏差上涨之后才会确认。
Zig Zag 计算器
粘贴一组价格,即任何图表的收盘价,并选择一个偏差。计算器会像指标一样逐步遍历该序列,并返回已确认枢轴、每段线的幅度以及临时最后一段,让您看到某个设置会保留哪些波段,以及为什么最后一段不是最终结果。示例价格仅用于说明。
参考数据
| 项目 | 数值 |
|---|---|
| 定义 | 连接至少相隔 X% 的波段高点和波段低点的线 |
| 传统设置 | 5% |
| 会重绘吗? | 会 — 最后一段是临时的 |
| 来源 | Arthur Merrill,Filtered Waves(1977) |
| TradingView 输入项 | Deviation %、pivot legs、extend to last bar、labels |
| TradingView 默认值 | Deviation 5%,pivot legs 10(已发布源码) |
| MetaTrader 输入项 | Depth、Deviation(点数)、Backstep |
| MetaTrader 默认值 | 12, 5, 3 |
| 使用的价格 | 线图使用收盘价;柱状图和 K线图使用高点和低点 |
| 主要用途 | 结构、Elliott Wave、形态、Fibonacci 锚点 |
实例:5% Zig Zag 会保留什么
以计算器的示例序列为例,价格从 100 上涨到 110,跌到 98,反弹到 115,再回落到 107。使用 5% 偏差时,第一个枢轴是起点 100;当价格跌到 104.5 或以下时,上涨到 110 会被确认为波段高点(实际到达 103);当价格回升到 102.9 时,下跌到 98 会被确认为波段低点(实际到达 106);当价格跌到 109.25 时,反弹到 115 会成为波段高点(实际到达 107)。这些线段分别为 +10%、−10.9% 和 +17.3%;第一次上涨内部从 107 到 105 的小回落,以及下跌内部到 104 的反弹都会被忽略。
在最后一根 K线上,价格是 108 — 从 115 下行到 107 的线段是临时的。如果价格重新升破 115,这条线会被重画为更长上行段的一部分;如果价格继续下跌,这条线会延伸。把偏差改为 3%,小波段会重新出现;改为 10%,只会保留更大的线段。这就是整个指标的一次完整练习。
交易者使用 Zig Zag 指标时会犯哪些错误?
- 交易临时线段。最后一条线可能延伸或被重画;它不是信号。
- 用重绘后的枢轴做回测。假设枢轴在转折点当时已知的结果,无法在实盘中复现。
- 所有市场都用同一设置。波动率不同;请按品种和时间周期调整偏差。
- 跨平台照搬设置。MetaTrader 的偏差以点数计,TradingView 的偏差以百分比计,确认逻辑也不同。
- 强行凑出形态计数。不断改变偏差直到某个形态出现,这是曲线拟合。
- 单独使用它。它显示结构;它不显示流动性、成交量或确认。
Zig Zag 如何与结构和免费指标配合?
Zig Zag 是观察波段的一种方式;交易决策来自价格在这些波段上的表现。有用的组合是已确认的波段结构加上行动理由:对前一枢轴的流动性扫荡后出现结构转变,回踩被突破的波段水平,或在已确认枢轴之间的 Fibonacci 区域出现反应。波段点、趋势线交易以及支撑和阻力指南会讲解这些决策。
在 TradingView 上,免费的 Quantum Algo indicators 会自动标记波段结构、流动性和关键水平,并且没有经典 Zig Zag 最后一段重绘的问题;高级引擎 Zeno 会打印自己的买入和卖出信号,带有入场、止损和两个目标位,公开的实盘记录列出每一次信号。
Zig Zag 指标会过滤掉小于所选百分比的波段,使趋势结构更容易阅读。它的最后一段是临时的并会重绘,因此请使用已确认枢轴进行分析 — 包括结构、Elliott Wave、形态和 Fibonacci 锚点 — 并在确认后入场。请按市场和时间周期调整偏差,并记住 MetaTrader 和 TradingView 对它的定义不同。
◆ 互动检查
您是否理解 Zig Zag 指标?
交易者常问的 Zig Zag 指标问题
它是一种在至少相隔指定百分比的波段高点和波段低点之间画线、并忽略更小波动的指标,因此能轻松看清趋势结构。
没有单一最佳值。5% 是传统设置;日内交易者使用更小的数值或基于 ATR 的设置,持仓交易者使用 10% 或更高。请把它设为您持仓时愿意忽略的回调幅度。
会。最后一条线从最新已确认枢轴延伸到当前极值,在价格按完整偏差反转前,可能继续延伸或被重画。较早的线段不会改变。
添加内置 Zig Zag,设置 reversal price deviation (%) 和 pivot legs,并可选择显示反转价格和价格变化。通过已确认枢轴阅读结构。
默认是 Depth 12、Deviation 5 和 Backstep 3。Depth 是枢轴之间的最小 K线数,Deviation 以点数计,Backstep 是新枢轴能够替代前一个枢轴前所需的 K线数。
适合 — 它被广泛用于一致地标记波浪起点和终点。请选择与您所计数级别匹配的偏差,不要为了让某个计数出现而改变设置。
把它用作地图,而不是触发器:用已确认枢轴定义趋势,等待回调和确认,把止损放在最后一个已确认枢轴之外,目标看下一个波段。
TradingView 把百分比与 pivot legs 结合使用,MetaTrader 使用 depth、点数形式的 deviation 和 backstep,有些版本还使用收盘价而不是高点和低点。
它的思想通常归功于 Arthur Merrill 1977 年的著作 Filtered Waves,该书用最小百分比过滤价格波段。
只在枢轴确认后才绘制枢轴的版本不会改变过去的线段,但它们会延迟出现。延迟就是不重绘的代价。
参考资料与相关指南
接下来阅读
- 波段点
- 市场结构转变(MSS)
- Elliott Wave 理论
- Elliott Wave Flats
- Fibonacci 回撤
- 谐波形态
- 趋势线交易
- 支撑和阻力
- ATR 指南
- 图表形态
- 免费 TradingView 指标
- Zeno — 高级引擎