A momentum oscillator that measures net price movement over a lookback period, scaled to a −100 to +100 range. Mathematically similar to RSI but without the smoothing — sharper, more responsive, more noisy.
What it measures
- Net momentum. Sum of up-day price changes minus sum of down-day price changes, normalized to total absolute movement.
- Pure (unsmoothed) momentum reading. Where RSI smooths the averages, CMO sums them raw — more responsive, more volatile.
- Direction certainty. The bundled Direction output (1 or −1) gives a binary momentum-direction flag.
Formula
Inputs in AlgoLift
| Setting | Default | Range | Notes |
|---|---|---|---|
| Period | 14 | 2–200 | Lookback for the up/down sums. |
Recommended periods
- 5–9 (fast): Short-term scalping.
- 14 (default): Standard. Works for most intraday strategies.
- 20–30: Smoother readings for swing setups.
Outputs in AlgoLift
| Handle | Type | Plotted | Notes |
|---|---|---|---|
| CMO | Numeric | Always | The oscillator (−100 to +100). |
| Slope | Numeric | On select | Rate of change of CMO — useful for momentum acceleration detection. |
| Direction | Numeric | On select | Binary: 1 when CMO > 0, −1 when CMO < 0. Convenient as a regime flag. |
How to read it
- CMO > +50: Strong upside momentum — possibly overextended.
- CMO < −50: Strong downside momentum — possibly overextended.
- CMO crossing zero: Net momentum flipped direction. The Direction output handles this for you.
- CMO near zero with low slope: Sideways action, no directional bias.
- CMO at extreme with flat slope: Momentum has plateaued — possible reversal warning.
The ±50 thresholds are less established than RSI's 70/30 — some traders use ±60 or ±70 for tighter filters.
CMO is RSI without the smoothing. Sharper signals, more responsiveness, more whipsaws. Use it when you want momentum readings that react faster than RSI; use RSI when you want smoother readings that survive more noise.
Best in / worst in
Best in instruments with clean trends and clear momentum shifts, on liquid futures and major equity indices during regular trading hours, and as a confirmation indicator alongside slower trend filters.
Worst in sideways chop (whipsaws across zero continuously), low-liquidity windows (the unsmoothed structure amplifies tape noise), and on instruments with frequent gaps that create artificially extreme readings.
Three setups
1. CMO direction as a regime filter
Use the Direction output (1 or −1) as a clean binary trend flag.
- Long-only mode: Direction = 1 — strategy permitted to take longs only.
- Short-only mode: Direction = −1 — short entries only.
A simple, no-tuning regime classifier that can sit alongside any other strategy.
2. Extreme mean-reversion entry
Trade against CMO extremes when conditions support mean reversion.
- Long: CMO < −50 AND CMO slope > 0 (turning back up) AND KAMA ER < 0.3 (range regime).
- Short: Symmetric.
The KAMA ER filter is what makes this safe — CMO extremes in trends don't reverse; only in ranges.
3. Zero-line breakout entry
Use CMO crossing zero as a momentum-shift entry trigger.
- Long: CMO crosses above 0 AND price > EMA(50) AND CMO slope > some threshold (genuine acceleration, not noise drift).
- Short: Symmetric.
The slope requirement filters out lazy zero-line drifts that don't represent real momentum changes.
Advanced patterns in AlgoLift
CMO Direction in a Cluster. CMO + a fast moving average + ATR-based stops forms a compact short-term momentum kit. Save the combination as a Cluster once, drop it into any new short-horizon strategy.
CMO and RSI agreement. Run both indicators in parallel — only trade when they agree on extreme conditions (CMO > +50 AND RSI > 70 = strong confirmed momentum). The two indicators have different smoothing structures, so requiring agreement filters out noise that either alone would produce.
Direction output as a regime switch. Use the Direction output to choose between long-bias logic (Direction = 1) and short-bias logic (Direction = −1): either as the detection condition of two regimes in regime mode (Activate Regime), or by ANDing each entry with its own Direction check. One strategy adapts to the current regime instead of two separate ones.
Common mistakes
- Treating CMO and RSI as interchangeable. CMO at +60 is not the same as RSI at 70. The scaling is different (CMO is −100 to +100; RSI is 0 to 100) and the underlying smoothing is different. Setting "CMO overbought = 60" requires its own validation.
- Using CMO alone as a primary signal. The unsmoothed structure makes CMO whip too much for standalone use. Always pair with a trend filter, regime detector, or second oscillator.
- Ignoring the Slope output. Slope flips precede zero-line crosses. Strategies that only read CMO value miss the early-warning signal.