On This Page
Key Takeaways
- CCI measures how far the current typical price sits from its moving average, expressed in units of mean deviation and scaled by a 0.015 constant.
- Donald Lambert introduced the indicator in the October 1980 issue of Commodities magazine, and it now applies to stocks, futures, and currencies, not only commodities.
- The 0.015 multiplier makes CCI +100 equal a typical-price gap of 1.5 mean absolute deviations above the selected average.
- Lambert read a move above +100 as an emerging strong uptrend and a move below −100 as an emerging strong downtrend, while other traders read the same extremes as overbought or oversold.
- The ±100 lines are reference levels. CCI can exceed them in either direction; the selected lookback and price distribution determine the reading.
What is the Commodity Channel Index (CCI)?
The Commodity Channel Index (CCI) is a momentum oscillator, introduced by Donald Lambert in 1980, that measures how far the current typical price sits from its simple moving average in units of mean absolute deviation. A 0.015 constant scales the result so that +100 and −100 mark a gap of 1.5 mean deviations above or below the average.
Lambert developed the indicator for commodity markets; the same calculation applies to stocks, indexes and other price series.
How is CCI calculated?
Typical price = (high + low + close) / 3. The indicator divides its gap from the selected moving average by 0.015 times mean absolute deviation.
Choose the lookback n and calculate typical price for each bar. Find the mean of those n values. Then average each value’s absolute distance from that same current mean.
CCI = (current typical price − current mean) / (0.015 × mean absolute deviation).
Use a positive mean deviation. Identical typical prices produce a zero denominator and require an explicit handling convention.
For high $52.80, low $51.30 and close $51.90, typical price is $52. With the selected average at $50 and mean deviation at $1, CCI is $2 / $0.015 = 133.33.
Formula
CCI = (Typical Price − SMA of Typical Price) / (0.015 × Mean Deviation), where Typical Price = (High + Low + Close) / 3- Typical Price is the average of the period high, low, and close.
- SMA of Typical Price is the simple moving average of the typical price over the chosen lookback, commonly 20 periods in Lambert’s original work or 14 in some platform defaults.
- Mean Deviation is the average of the absolute differences between each period’s typical price and the current SMA across the lookback.
- The 0.015 constant sets the numeric scale. Use a positive mean deviation; a flat window has a zero denominator.
Worked Example
A stock closes a session with a high of $52.80, a low of $51.30, and a close of $51.90. A trader is running a 20-period CCI, and the 20-period simple moving average of the typical price is $50.00 with a mean deviation of $1.00.
- Typical Price = ($52.80 + $51.30 + $51.90) / 3 = $52.00
- Numerator = $52.00 − $50.00 = $2.00
- Denominator = 0.015 × $1.00 = $0.015
- CCI = $2.00 / $0.015 = 133.3
Typical price is $52, which is $2 above the $50 average and twice the $1 mean deviation. Dividing by 0.015 gives CCI 133.33. This exceeds the +100 reference and meets a CCI-above-100 condition.
What the CCI +100 and −100 levels mean
A CCI of +100 means typical price is 1.5 mean absolute deviations above the selected average. At −100 it is 1.5 deviations below. Zero places typical price at that average.
The ±100 guides do not bound the output. The 0.015 constant fixes their meaning in deviation units, while the input series determines how often the line crosses them.
For example, a steady one-point-per-bar rise produces a 20-period CCI of 126.67 once the complete windows are available. That calculation stays above +100 throughout the steady rise.
CCI crossovers, zero line and divergence
A momentum rule can require CCI to cross above +100 before evaluating a bullish price setup. A return-through-level rule uses a different event. State the chosen interpretation before defining entry and exit.
The zero line compares current typical price with its moving average. Divergence compares selected price highs or lows with the corresponding standardized CCI gaps. Define the swing points and the decision bar explicitly.
The chart’s separate 20-period example reaches +139.82 at bar 7 and −115.35 at bar 12. Label both events so the figure teaches the two reference levels.
How traders use CCI in a trading plan
Choose the price trigger, invalidation level, size and exit alongside the CCI condition. Keep the lookback and bar interval consistent throughout the setup.
CCI past +100 or −100 says which way momentum runs; Options Flow shows whether calls or puts draw the large orders in the underlying, and the Options Profit Calculator gives each structure’s breakeven and payoff at your target.
Limitations of CCI
- Expect CCI to hold beyond ±100 in a strong trend. A steady one-point-per-bar rise holds a 20-period CCI at 126.67 once complete windows are available, so fade a reading above +100 only on a price trigger.
- Pick one reading of the extremes for each rule. Lambert treated a move above +100 as an emerging uptrend, while other traders read it as overbought.
- Match the lookback before comparing platforms. Twenty periods is common and Schwab’s study defaults to 14, so two platforms can show different readings for the same chart.
- Set a rule for a flat window, which produces a zero denominator.
- Check both ends of the window when CCI moves. It is built from a moving average and the window’s mean deviation, so it lags price and reacts to bars both entering and leaving the window.
Bottom line
The Commodity Channel Index puts the gap between typical price and its average on a standard scale, where ±100 marks 1.5 mean deviations. Choose one interpretation of the ±100 crossings, momentum or overbought and oversold, state the lookback and bar interval, and pair the reading with a defined price trigger and invalidation.
Clear answers
Frequently Asked Questions
Sources and Further Reading
How entries are sourced, calculated and updated: editorial methodology.