Technical analysis

Commodity Channel Index

An oscillator by Donald Lambert that measures how far the typical price deviates from its average relative to the mean deviation; classically readings above +100 and below -100 are read as overbought/oversold or as a sign of breakout strength. Despite its name it works on any market, including forex. The catch is that CCI is unbounded and can run far beyond plus or minus 100, so an overbought reading can persist for a long time in a strong trend, making contrarian entries costly. Its effectiveness depends heavily on the period (default 20) and needs a backtest on the given instrument.
Example. For an illustrative N = 3, typical prices are 99, 100 and 104 units. Their SMA is 101; mean absolute deviation from that same average is (2 + 1 + 3)/3 = 2. Current CCI = (104 − 101)/(0.015 × 2) = 100. This demonstrates arithmetic, not a recommended three-period setting.

Price and the correct denominator

Classical typical price is TP = (High + Low + Close)/3. For the selected window, calculate mean TP and the average absolute difference of each TP from that single window mean. CCI = (current TP − SMA(TP))/(0.015 × mean deviation). The denominator is not standard deviation or the average price change.

Window, source and scale

Twenty periods is a popular convention, but software can allow another price source. Check data and conventions before comparing readings. CCI has no fixed bounds at ±100. When its deviation denominator is zero, software needs a defined handling rule; ordinary division by zero is not a valid calculation.

Threshold and strategy logic

A +100 level can form part of either a momentum or a reversal hypothesis, depending on the complete rule. Those are different applications of the same calculation. An elevated reading can persist; it is not a correction probability. Explicit entry, exit and cost assumptions support a fair comparison without selecting only attractive examples.

Source of the definition

TradingView: CCI. Documentation of the construction or concept is not a guarantee of strategy results.

FAQ

Does classical CCI divide by standard deviation?
No. It uses mean absolute deviation of TP from the window’s average.
Does +100 imply a certain sell signal?
No. It is an indicator value; specify and test the rule’s direction and usefulness.

← Back to the full glossary

Jarosław Wasiński

Editor-in-chief, ForexMechanics.com • Macro & FX analyst

Independent analyst and practitioner with over 20 years of experience in financial markets. Actively involved in Forex since 2007, with a focus on fundamental analysis, OTC market structure, and disciplined capital risk management.

  • Creator and editor-in-chief of MyBank.pl, providing reliable financial education since 2004.
  • Author of hundreds of in-depth market commentaries, structural analyses, and educational materials for traders and investors.
  • Advocate for market transparency, promoting education grounded in hard data and institutional reports (BIS, ESMA, CFTC).

All content is educational and informational only – it does not constitute investment advice or a recommendation. Remember: leveraged trading (Forex/CFD) carries a high risk of rapid capital loss.