The Chande Momentum Oscillator, often shortened to CMO, is a momentum oscillator designed to measure how strongly price is advancing versus declining over a chosen lookback window. It compares the total of up moves to the total of down moves, which helps you see when bullish pressure is dominating or when selling pressure is dominating. Unlike some oscillators that normalize based on highs and lows, CMO focuses on directional price changes from one close to the next.
CMO is most useful when you want a simple read on momentum that can be compared across instruments and timeframes. When the oscillator is high and staying high, buyers are consistently winning each period on net. When it is low and staying low, sellers are consistently winning each period on net. When it chops around zero, net momentum is weak and signals need more filtering.
How it is calculated
CMO is calculated from period to period close changes over N periods. First you separate the close to close changes into gains and losses, then you sum them over the lookback. The output is scaled to a bounded range, which makes threshold based rules practical.
\Delta_t = Close_t - Close_{t-1} G_t = \max(\Delta_t,0) L_t = \max(-\Delta_t,0) SG_t = \sum_{i=0}^{N-1} G_{t-i} SL_t = \sum_{i=0}^{N-1} L_{t-i} CMO_t = 100 \times \frac{SG_t - SL_t}{SG_t + SL_t}In plain terms, SG is the total of positive close changes over N periods and SL is the total of negative close changes over N periods using absolute values. If gains dominate losses, the fraction is positive and CMO rises. If losses dominate gains, the fraction is negative and CMO falls. The 100 multiplier scales it so common thresholds like plus 50 and minus 50 are easy to interpret.
Most used settings and why traders choose them
The most common CMO lookback is 14 periods, largely because it balances responsiveness with stability on many liquid markets. A 14 period CMO reacts to shifts in momentum without flipping direction on every small pullback. On daily charts it is often used with thresholds such as plus 50 and minus 50, or slightly tighter levels like plus 40 and minus 40 when the instrument is less volatile.
Shorter settings like 9 or 10 periods increase sensitivity. That can be useful for faster swing trading, but it also increases false signals in sideways markets and during noisy pullbacks. Longer settings like 20 or 30 periods smooth the oscillator and can help confirm regime, but signals arrive later and extreme readings may be rarer.
A practical way to choose N is to align it to your average holding period and the noise level of the instrument. If your trades typically last 3 to 10 bars, shorter settings will match your decision cycle but require stricter filters. If your trades typically last several weeks, longer settings reduce churn and make threshold events more meaningful. If you already use trend tools like SMA and volatility tools like ATR, you can treat CMO as a timing layer rather than a stand alone signal source.
How it behaves on charts
CMO oscillates between negative and positive values, with zero acting as a neutral line. Values above zero imply net positive momentum over the lookback, and values below zero imply net negative momentum. Strong trends can keep CMO elevated or depressed for extended periods, which is why extreme readings are not automatic reversal signals.
The most recognizable patterns are threshold tags, centerline crosses, and divergences. In a strong uptrend, CMO may repeatedly pull back toward zero and then turn up again without ever reaching deeply negative levels. In a range, CMO is more likely to swing between positive and negative extremes, making mean reversion rules more viable.
CMO also helps visualize momentum decay. For example, price can continue rising while CMO makes lower highs, showing that the advance is losing force even though price is still climbing. That does not guarantee a top, but it can be a useful warning to tighten exits or require stronger confirmation for new entries. Combining that read with a trend context such as MACD can prevent treating every momentum slowdown as a reversal.
When it tends to work and why
CMO tends to work best when you match the signal type to the market regime. In trending regimes, the oscillator is most reliable as a pullback timing tool, not as a reversal predictor. The reason is structural: trends often persist, and momentum oscillators can remain pinned at strong readings while price continues in the same direction.
In range bound regimes, CMO can work as a mean reversion trigger because price is repeatedly rotating around value. In that environment, extreme oscillator readings are more likely to coincide with short term exhaustion, especially when the range has clear boundaries and volatility is stable. The oscillator can also help you avoid chasing late moves by showing when momentum is already extended relative to the recent lookback.
CMO is also useful when you want confirmation that a breakout attempt has actual momentum behind it. If price breaks a level but CMO is near zero and not improving, the move may be more fragile. If price breaks out and CMO is already positive and rising, it suggests more consistent buying pressure. This is not a guarantee, but it improves alignment between price action and momentum.
When it tends to fail and why
CMO tends to fail when it is treated as a universal overbought oversold tool without trend context. In strong uptrends, overbought readings can persist and shorting them can lead to repeated losses. In strong downtrends, oversold readings can persist and buying them can lead to catching falling knives. The oscillator is describing momentum, not declaring a turn.
It also struggles during high noise conditions where close to close changes alternate frequently. That environment produces frequent threshold crossings that do not translate into follow through. Another common failure mode is using one fixed threshold across instruments with very different volatility structures, because the same numeric level can mean different things depending on how the instrument trades.
Whipsaws are more likely around the zero line when the market is not trending. A centerline cross can look like a new momentum swing but then reverse quickly if price remains range bound. This is why using a trend filter and a minimum price structure requirement usually improves results. If you already use an oscillator like RSI, the key difference is that CMO can stay directional for longer in trends, which is helpful, but it also means you must be careful with reversal assumptions.
Practical rules
CMO works best when you decide whether you are trading trend pullbacks or range mean reversion, then use rules that match that decision. Trend rules aim to join continuation after momentum resets. Range rules aim to fade momentum extremes near boundaries, but only when price action supports it.
Here is a compact rule set you can test and adapt, keeping position sizing and risk consistent across samples.
- Trend filter: trade long only when price is above the 200 period SMA and the 50 period SMA is flat to rising, trade short only when price is below the 200 period SMA and the 50 period SMA is flat to falling
- Long entry in trend: wait for CMO to dip below minus 20 then close back above minus 20, enter on the next bar only if price holds above the 50 period SMA
- Short entry in trend: wait for CMO to rise above plus 20 then close back below plus 20, enter on the next bar only if price holds below the 50 period SMA
- Range entry: define a range with at least three touches on both sides, buy only when CMO is below minus 50 and price is near the range low, sell only when CMO is above plus 50 and price is near the range high
- Initial stop: place the stop beyond the most recent swing point, or use 1 to 2 ATR from entry depending on instrument behavior and timeframe
- Exit in trend: take partial profits when CMO reaches plus 40 for longs or minus 40 for shorts, then trail the remainder using a prior swing rule or a moving average rule
- Exit in range: exit when CMO crosses back through zero or when price reaches the opposite side of the range, whichever occurs first
- No trade filter: skip signals when CMO is chopping within plus 10 and minus 10 for multiple bars, because momentum is not decisive
- Confirmation filter: require a higher high for long continuation or a lower low for short continuation within the last few bars to avoid entering on pure oscillator movement
These rules aim to reduce the most common CMO mistake, trading every extreme as a reversal. The trend filter forces you to treat extremes as information rather than as an automatic action trigger. The no trade filter helps reduce churn when momentum is flat and the oscillator is most likely to whip.
Summary
Chande Momentum Oscillator measures net momentum by comparing total gains and total losses over a lookback, producing a bounded oscillator centered on zero. The formula is straightforward and makes threshold rules easy to test across timeframes. Common settings like 14 balance speed and stability, while shorter settings increase sensitivity and longer settings reduce noise.
CMO tends to be most effective when you match it to regime. In trends it works better as pullback timing and momentum confirmation, while in ranges it can support mean reversion when price structure is clear. It tends to fail when extremes are traded as automatic reversals or when noise around zero produces repeated whipsaws. A basic trend filter, a price structure requirement, and consistent risk rules are usually enough to make CMO usage more disciplined.
