The Commodity Channel Index (CCI) was designed by Donald Lambert to identify cyclical turns in commodities. The assumption behind the indicator is that commodities move in cycles, with highs and lows coming at periodic intervals. Lambert recommended using 1/3 of a complete cycle as a time frame for the CCI. If the cycle runs 60 days (a low about every 60 days), then a 20-day CCI would be recommended. For the purpose of this example, a 20-day CCI is used.
Calculation
There are 4 steps involved in the calculation of the CCI:
- Calculate the last period’s Typical Price (TP) = (H+L+C)/3 where H = high, L = low, and C = close.
- Calculate the 20-period Simple Moving Average of the Typical Price (SMATP).
- Calculate the Mean Deviation. First, calculate the absolute value of the difference between the last period’s SMATP and the typical price for each of the past 20 periods. Add all of these absolute values together and divide by 20 to find the Mean Deviation.
- The final step is to apply the Typical Price (TP), the Simple Moving Average of the Typical Price (SMATP), the Mean Deviation and a Constant (.015) to the following formula:
CCI = ( Typical Price – SMATP ) / ( .015 X Mean Deviation )
The CCI is a versatile indicator capable of producing a wide array of buy and sell signals.
- CCI can be used to identify overbought and oversold levels. A security would be deemed oversold when the CCI dips below -100 and overbought when it exceeds +100. From oversold levels, a buy signal might be given when the CCI moves back above -100. From overbought levels, a sell signal might be given when the CCI moved back below +100.
- As with most oscillators, divergences can also be applied to increase the robustness of signals. A positive divergence below -100 would increase the robustness of a signal based on a move back above -100. A negative divergence above +100 would increase the robustness of a signal based on a move back below +100.
- Trend line breaks can be used to generate signals. Trend lines can be drawn connecting the peaks and troughs. From oversold levels, an advance above -100 and trend line breakout could be considered bullish. From overbought levels, a decline below +100 and a trend line break could be considered bearish.