Concept

Rahul Mohindar Oscillator

Rahul Mohindar Oscillator is a Momentum & Oscillators concept. The Library holds 1 implementation — a working definition you can pull into Quant.

RMO

Top Rahul Mohindar Oscillator indicator

The top custom implementation, built on the original standard Rahul Mohindar Oscillator formula.

1 total

What is the Rahul Mohindar Oscillator?

The Rahul Mohindar Oscillator (RMO) is a smoothed momentum gauge developed by Indian trader Rahul Mohindar of Viratech, popularized by its inclusion in MetaStock from the mid-2000s onward. It sits at the center of a small packaged system: the RMO line itself supplies the market bias, while two companion lines (usually called SwingTrd 2 and SwingTrd 3) generate crossover signals, and the platform version paints buy and sell arrows when a crossover agrees with the RMO's side of zero.

The construction starts from a heavily averaged view of price: a chain of ten successive 2-period simple moving averages is computed, each smoothing the output of the one before, and their mean stands in for the market's underlying level. The close's displacement from that mean, normalized by the recent price range, becomes the raw swing reading, which is then exponentially smoothed at two more stages. The intent is a momentum line calm enough that its zero side can be read as a regime call rather than a twitch.

Traders care about the RMO mostly as a packaged trend filter: above zero, only long setups are entertained; below zero, only shorts. The honest tradeoffs are those of any deeply smoothed momentum tool: turns are confirmed late, extended ranges produce failed crossovers on both sides of zero, and the arrows carry no information beyond the lines that generate them.

How it's calculated

The commonly circulated MetaStock form builds a nested average, normalizes displacement by range, then smooths twice.

avg = mean of ten chained SMA(2) passes over close
ST1 = 100 * (close - avg) / (highest(close, 10) - lowest(close, 10))
ST2 = EMA(ST1, 30)
ST3 = EMA(ST2, 30)
RMO = EMA(ST1, 81)
SMA(2): 2-period simple moving average, each pass applied to the previous pass's output
highest/lowest(close, 10): highest and lowest close of the last 10 bars
EMA: exponential moving average
ST1, ST2, ST3: the SwingTrd lines of the packaged system

The original code is proprietary to the MetaStock implementation; public recreations follow this form but small differences between versions exist.

Buy arrows in the packaged system typically require ST2 crossing above ST3 while RMO is above zero, with sells mirrored.

How traders use it

  • As a regime filter: the RMO's side of zero gates all trades, so a positive reading permits longs only, which keeps users out of counter-trend crossover signals at the cost of missing early reversals.
  • As a signal generator through the SwingTrd crossovers: ST2 crossing ST3 in the direction of the RMO's bias is the packaged entry, typically confirmed by price taking out the signal bar's extreme.
  • As a swing-trading bias line on daily charts, the context it was marketed for; on intraday data the deep smoothing makes signals arrive very late relative to the swings they describe.
  • In combination with independent exits, because the system's own reversal signals lag: many users pair RMO entries with structural stops or trailing methods rather than waiting for an opposite arrow.
  • With awareness that backtests of packaged arrow systems flatter trending samples; in prolonged ranges the zero-line filter flips repeatedly and the edge degrades.

RMO vs related constructions

MACD: MACD spreads two EMAs and reads signal-line crossovers directly. The RMO system separates the jobs: heavily smoothed RMO for regime, faster SwingTrd crossovers for timing, which reduces whipsaw but adds lag at turns.

Rainbow oscillator: Both build on chains of recursive 2-period averages normalized by recent range. The rainbow version measures displacement and band consensus for regime reading; the RMO layers long exponential smoothing and a crossover system on top.

MA of MA: Applying an average to an average is the RMO's core smoothing trick, iterated ten times. The generic technique trades lag for smoothness; the RMO accepts a lot of lag to make its zero line trustworthy as a bias.

Concept family

Momentum & Oscillators

91 concepts mapped · 91 in the Library

Rahul Mohindar Oscillator FAQ

Is the Rahul Mohindar Oscillator a complete trading system?

It ships as one (bias line, crossover signals, arrows), but it has no risk management: no stops, sizing, or exit logic beyond the opposite signal. Most practical use adds independent exits.

What does it mean when the RMO is above zero?

That the close has been holding above its deeply smoothed baseline relative to the recent range, which the system reads as a bullish regime. It is a filter, not an entry; the entry comes from the SwingTrd crossover.

Why do RMO signals seem to come late?

By design. The construction stacks ten 2-period averages, a range normalization, and 30 to 81 period exponential smoothing. That suppresses noise well but means turns are confirmed only after a meaningful move has occurred.

Can I use the RMO outside MetaStock?

Yes, public recreations exist on most platforms, but the original code is proprietary, so recreations may differ slightly from the MetaStock plots. Verify a recreation against known charts before trusting its arrows.

Build Rahul Mohindar Oscillator your way.

Quant writes, tests, and refines it with you — then it runs on LuxAlgo charting or ports to TradingView.