What the CCI indicator is
The Commodity Channel Index (CCI) is an oscillator, an indicator drawn in a separate window below the price chart that moves above and below a centre line. Donald Lambert designed it for commodities, but traders now apply it to currency pairs, metals and indices too.
In plain terms, CCI shows how far the current price is from its recent average, measured against how much price normally strays from that average. The centre line marks price sitting at its average. A reading far above it means price is unusually high compared with the recent past. A reading far below it means price is unusually low.
CCI has no fixed upper or lower limit, unlike the RSI indicator. Most readings stay between the standard upper and lower reference levels. Readings beyond those levels are treated as unusual moves.
Ready to try it on a real or demo account?
Partner link · trading carries a high risk of loss
The formula
CCI is calculated in steps:
- Typical price. For each bar, take the average of the high, low and close.
- Moving average. Take a simple moving average of the typical price over the chosen period.
- Mean deviation. Average how far each typical price in the period sits from that moving average, ignoring whether it is above or below.
- CCI. Subtract the moving average from the current typical price, then divide by the mean deviation multiplied by Lambert's scaling constant.
The constant is fixed. Lambert chose it so that most readings fall between the standard levels. Because the divisor is the mean deviation, CCI measures the size of a move relative to recent volatility, not in pips.
Default settings and how to add CCI in MT4/MT5
In both MetaTrader 4 and MetaTrader 5, CCI is built in:
- Open a chart.
- Go to Insert → Indicators → Oscillators → Commodity Channel Index.
- In the settings window, check the period and the Apply to field. CCI is normally applied to the typical price.
- Open the Levels tab to see or add the upper and lower reference levels.
- Click OK. CCI appears in its own window under the chart.
The default period is shown in the settings window. Different platforms and books use different defaults, so check what your terminal uses. For platform basics, see MetaTrader 4 and MetaTrader 5. You can practise adding and reading indicators on a demo account.
How to read CCI: a drawn example
The sketch below is drawn for illustration and does not show real prices.
- A: price moves sideways near its average, and CCI stays close to the centre line.
- B: price rises sharply, and CCI goes above the upper level. The move is large relative to recent volatility.
- C: price pulls back, and CCI falls back towards the centre.
- D: price climbs steadily, and CCI stays above the upper level for a long time. A strong trend can do this.
- E: price drops fast, and CCI goes below the lower level.
Points B and D show the main lesson. A reading above the upper level does not mean price must turn down.
Typical uses
These are common ways traders read CCI. None of them is a signal to trade.
- Overbought and oversold. Readings beyond the levels are read as stretched moves. See overbought and oversold for why stretched prices can stay stretched.
- Trend strength. Some traders read CCI holding above the upper level as momentum in an uptrend, not as a reason to expect a reversal.
- Centre-line crosses. A cross of the centre line shows price moving from below its average to above it, or the reverse.
- Divergence. Price makes a new high while CCI makes a lower high, or the opposite. See divergence trading.
- Confirmation. CCI is often combined with support and resistance or market trend analysis rather than used alone.
Parameter choices for experienced traders
- Shorter period: CCI reacts faster and crosses the levels more often, so you get more noise.
- Longer period: the line is smoother and crosses less often, and it reacts later.
- Level placement: some traders move the reference levels further out to filter routine moves. Wider levels give fewer readings beyond them, and those readings come later in the move.
- Timeframe: the same settings behave differently on higher and lower timeframes. Check readings across multiple timeframes.
- Applied price: switching from typical price to close changes the values. Keep it consistent when you compare charts.
Where CCI misleads
- Strong trends. CCI can stay beyond a level for a long time. Treating every extreme reading as a reversal leads to repeated losing entries against the trend.
- Quiet markets. When volatility is very low, the mean deviation becomes small. A modest price move then produces a large CCI reading.
- Gaps and news spikes. A single sharp bar can push CCI to an extreme and distort the average for the whole period.
- Divergence without follow-through. Divergence can last through a long trend before price turns, if it turns at all.
- Lag. CCI is built on a moving average, so it is partly a lagging indicator.
- Unbounded scale. There is no fixed ceiling or floor, so readings from different instruments or periods are not directly comparable.
Leveraged forex and CFD trading can lose money fast. No indicator setting removes that risk. Read risk management before using any indicator on a live account.
Related indicators
- Stochastic oscillator and Williams %R: both measure price position within a range.
- Momentum Indicator and Rate of Change (ROC): both measure the speed of price change.
- Bollinger Bands: also measure deviation from an average, drawn on the price chart.
You can find more in technical analysis.
Frequently asked questions
What does the commodity channel index measure?
It measures how far the typical price is from its moving average, relative to the average deviation over the same period.
Is CCI only for commodities?
No. It works on any instrument with price data, including currency pairs, metals and indices.
How do I use CCI in MetaTrader?
Go to Insert → Indicators → Oscillators → Commodity Channel Index, then set the period and the levels in the settings window.
Is there a reliable CCI indicator strategy?
No indicator works in every market. CCI gives false readings in strong trends, in quiet markets and after news spikes. Test any approach on a demo account and manage risk.
Does CCI repaint?
Standard CCI does not change values on closed bars. The value on the current, unfinished bar changes until that bar closes. See repainting indicators.
