OptiNod 学院
CCI:商品通道指数
±100这个标准阈值在剧烈波动期会失效,只有 ±200以上的极值才值得信赖。
CCI的 ±100是显示价格偏离均值多远的基准线。不能在这里直接买入或卖出,仅凭处于 +100之上就开空,在强趋势行情里会每次都逆势入场。
AAPL在2024年6月财报公布后突破220美元区间的过程中,日线CCI有将近3周停留在 +100之上,使用 +100卖出规则的人每次都要以更高的价格重新入场。
真正的入场位置有两处。一处是 ±200以上的极值,另一处是Woodie CCI使用的 0轴走势。±100只作为判断当前市场是否超出正常范围的基准线。

±100告诉你当前的市场状态
Lambert最初的设计意图可以用一句话概括。按Lambert的设计,CCI经过标准化,约70%至80%的时间停留在 ±100之内,越出 ±100的情况只有约20%至30%。±100这条线标示的就是进入了这个少见的区域,用它作为估计当前市场状态的出发点。入场不在这里做。
市场状态分为三种。CCI在 ±100之间来回,是箱体震荡,可以作为均值回归形态的候选。CCI连续几天贴在 +100之上,是强上升趋势,不做均值回归的卖出。CCI每根K线都在 ±100上下穿梭,是剧烈波动期,所有入场都要保守。
没有这个分类步骤就用 ±100入场,趋势行情里每次都会逆势,剧烈波动期里每次都会撞上假信号。看最近30根K线中CCI停留在 +100之上的K线占比,就能用一个数字判断当前状态,达到30%以上就是趋势区间,不应使用 +100卖出。

±200极值:Lambert真正想要的信号
Lambert在原著中比 ±100更强调的位置,是越过 ±200的事件。从统计上看,同一资产、同一周期,一个月只会出现1到2次,正因为出现得少,才这么重要。
在箱体震荡中碰到 ±200,是博取均值回归的位置。已经走到分布的两端,回到均值的概率较高。相反,在趋势中碰到 ±200,含义就不同了。这是趋势短暂休整的区间。它不是趋势本身结束的信号,但从价格结构上看,统计上会在其后出现1到5根K线左右的短期调整。
GOLD期货在2024年8月首次突破2,500美元的那根K线,日线CCI达到 +280,随后4根K线内回调到2,420美元附近,之后趋势继续。也就是说,±200只是需要先考虑应对的位置,趋势结束的位置要另外判断。
不同资产的统计意义差别很大。SPY日线碰到 ±200属于一个季度一次的少见情况,而BTC日线一个月可能碰到 ±200两三次。同样是 ±200,每个资产的统计位置都不同。所以,哪怕只看过一次自己交易的资产最近200根K线的CCI分布,和没看过的人,面对同一个 +200也会得出不同的解读。

Zero-Line Reject:Woodie的0轴用法
这是Ken Wood在1990年代ES期货日内交易中打磨出来的形态。Woodie's CCI Club最强调的形态,就是 Zero-Line Reject(ZLR)。在趋势区间中,CCI位于 +100之上,然后回调到0轴,在略高于0轴处停住,或短暂跌破后马上回到上方。这根K线就是入场位置。
这个形态比单纯的 +100入场更可靠,原因在于0轴的含义。CCI把取高价、低价、收盘价平均得到的“典型价格(Typical Price)”与近期均值(SMA)作比较,它不是只用一个收盘价计算的指标。CCI的0轴,是当前典型价格与近期均值相同的位置,0之上表示在均值之上,0之下表示在均值之下。所以,回调略微触及0轴就返回,意味着市场再次承认这个价格在均值之上。
NVDA 1小时线处于50 EMA之上且ADX 22以上的上升趋势区间,CCI在 +100之上停留几天后开始调整。CCI回落到0轴,在0附近停留1到3根K线后,重新向上回到正值。以收盘价计,CCI收复到0之上的那根K线,在其收盘价买入。止损设在回调低点下方。CCI以收盘价跌破 −100,则该形态视为无效。
是真ZLR还是假ZLR,用深度和时间来判断。深度标准是 ±20。CCI经过0后深跌到 −20以下(例如 −50、−80),那就是趋势真的要转折的走势,不能当作ZLR处理。必须在 ±20之内、1到3根K线内马上收复才是ZLR,在0之下停留4根K线以上,该形态就无效了。
下跌趋势中的ZLR做空形态也是反过来照样适用,即CCI反弹到0轴后立刻回到负值的位置。

直接在CCI面板上画趋势线
Woodie在打磨ZLR的同时完善的另一件事,是直接在CCI面板上画趋势线。逻辑与在价格图表上画趋势线相同,不同之处在于CCI是价格动量的标准化值,所以看的是动量本身的趋势。
把CCI前两个高点连起来的上行线被跌破的时刻,比价格的上行趋势线被跌破要早一拍。因为动量比价格先冷却。这本身不是入场信号,但它预先提示紧随其后出现的ZLR可能是真正的趋势转弱,因此很难把它当作普通的回调。
看到CCI趋势线被跌破之后出现ZLR,就减少入场仓位,或者再加一个确认条件。相反,在没有被跌破的状态下出现的ZLR,按标准仓位入场。同样是ZLR,可靠程度取决于之前趋势线是否被破坏。

周期为什么用20
Lambert在原著中明确写的是20。这个值对应一个月的交易日数,是为了让统计保持稳定而定的。它成为标准的原因是,此后40年的使用中反复证实,14、10这样较短的周期信号频率虽然增加,假信号也同样增加。
按资产调整的标准很简单:让N与自己交易的平均持仓时间相匹配。日线中期波段(持仓1到4周)用20为标准,4小时线短期波段用14比较合理,周线长期趋势可以加大到40至50。在较短周期上需要更快的信号时,直接下调一档K线周期更安全。不应该只缩短参数来换取速度。
造成假ZLR的三种情况
- 趋势行情中的 ±100均值回归:CCI在 +100之上,本身只是说明当前状态的基准,不能当作卖出信号。想使用 +100卖出,要先确认是不是箱体震荡,只有在最近30根K线中处于 +100之上的比例低于30%时才启用。
- 把深度回调误当成ZLR:CCI经过0下探到 −50、−80后又回来,那是趋势转折的尝试,要与ZLR区分开。ZLR是略微触及0轴就马上返回的形态,深度超过 ±20,该K线就不是入场位置。
- 在剧烈波动期看到 ±200就盲目卖出:±200是均值回归位置,这个统计只在箱体震荡中成立。在剧烈波动期(每根K线都在 ±100上下穿梭的状态),±200可能是波动进一步放大的开始,所以在相信 ±200之前,先看最近30根K线的状态。
让ZLR成为真正形态的两个条件
ZLR要成为可信的信号,需要两个条件同时满足。
- 确认趋势区间:确认处于50 EMA之上且ADX 20以上,或者CCI在最近N根K线内曾停留在 +100之上。必须是趋势区间ZLR才有效,箱体震荡中出现的ZLR与单纯的均值回归无法区分,剧烈波动期出现的ZLR很可能是假的。
- 价格结构:确认CCI从0轴折返的时点,价格是否触及前面的支撑(50 EMA、价格结构)。在没有支撑承接的位置出现的ZLR,可能只是动量短暂摇晃。连价格结构也吻合时,才把ZLR视为形态。
