Commodity Channel Index (CCI) is a momentum oscillator that measures price deviation from its statistical average. Despite its name, CCI works on stocks, forex, and crypto—not just commodities. CCI oscillates around zero, with readings above +100 indicating overbought conditions and below -100 indicating oversold. Unlike RSI, CCI is unbounded and can show extreme readings in strong trends.
- Measures price deviation from average
- Above +100 = overbought; Below -100 = oversold
- Unbounded—can exceed +/-200 in strong trends
How CCI Works
CCI measures deviation from typical price average:
CCI Calculation:
Step 1: Typical Price (TP)
TP = (High + Low + Close) / 3
Step 2: Simple Moving Average of TP
SMA = 20-period average of TP
Step 3: Mean Deviation
MD = Average of |TP - SMA| over 20 periods
Step 4: CCI
CCI = (TP - SMA) / (0.015 × MD)
The 0.015 constant scales values so:
- 70-80% of readings fall between +100 and -100
- Readings outside this range are "extreme"
Quick Reference: CCI Signals
| CCI Reading | Condition | Trading Signal |
|---|---|---|
| Above +100 | Overbought | Watch for sell |
| Below -100 | Oversold | Watch for buy |
| Crosses above 0 | Momentum bullish | Bullish bias |
| Crosses below 0 | Momentum bearish | Bearish bias |
| Above +200 | Extremely overbought | Possible exhaustion |
| Below -200 | Extremely oversold | Possible bounce |
Example: Trading CCI
CCI Oversold Bounce:
| Day | Price | CCI | Signal |
|---|---|---|---|
| 1 | $95 | -50 | Normal |
| 5 | $88 | -120 | Oversold zone |
| 8 | $85 | -150 | Deep oversold |
| 10 | $87 | -90 | Rising from oversold, BUY |
| 15 | $95 | +20 | Momentum positive |
| 20 | $105 | +110 | Overbought, watch |
CCI measures how far price deviates from its average. Above +100 is overbought; below -100 is oversold. Trade when CCI exits these extreme zones. CCI is unbounded so can show extreme readings in strong trends—unlike RSI.
CCI Trading Strategies
Overbought/Oversold Exit
Buy when CCI rises above -100 from below. Sell when CCI falls below +100 from above.
Zero-Line Crossover
Buy when CCI crosses above zero. Sell when CCI crosses below zero.
Divergence
Price makes new high but CCI makes lower high = bearish divergence. Price makes new low but CCI makes higher low = bullish divergence.
Trend Filter
In uptrends, only take buy signals. In downtrends, only take sell signals.
CCI Levels Interpretation
+100 to +200
Overbought. Price extended above average. Pullback likely.
-100 to -200
Oversold. Price extended below average. Bounce likely.
Beyond +/-200
Extreme extension. Strong trend or possible exhaustion.
Around Zero
Price near its average. No extreme condition.
CCI vs RSI
| Feature | CCI | RSI |
|---|---|---|
| Range | Unbounded | 0-100 |
| Overbought | Above +100 | Above 70 |
| Oversold | Below -100 | Below 30 |
| Extreme moves | Shows clearly | Capped |
Common Mistakes
-
Selling every +100 reading – In strong trends, CCI stays overbought. Don’t fight the trend.
-
Ignoring divergences – Divergences are powerful reversal warnings.
-
Using default settings blindly – Adjust period for your timeframe.
-
No confirmation – CCI alone isn’t enough. Use with price action.
How JournalPlus Tracks CCI
JournalPlus logs CCI readings at entry, helping you analyze whether overbought/oversold conditions improve your entry timing.