Categories

Dorsey Inertia Indicator MT4
Dorsey Inertia is a free, instant-download MT4 oscillator that measures how much directional "inertia" is currently built into price volatility, plotted as a single smoothed line in its own window with a reference level drawn at 50. This version was coded by "mladen" and is a double-smoothed take on Donald Dorsey's Relative Volatility Index concept.…
Download the Dorsey Inertia Indicator MT4Dorsey Inertia is a free, instant-download MT4 oscillator that measures how much directional “inertia” is currently built into price volatility, plotted as a single smoothed line in its own window with a reference level drawn at 50. This version was coded by “mladen” and is a double-smoothed take on Donald Dorsey’s Relative Volatility Index concept.
The Math Behind the Line
Step 1 — Two Separate Volatility Readings
For every bar, the code computes a standard deviation of price over RVIPeriod (default 10) — once using PRICE_HIGH and once using PRICE_LOW. Each standard deviation reading is classified as “up” if that bar’s High (or Low) is higher than the previous bar’s, or “down” if it’s lower. Those up/down values are then run through a Wilder-style recursive average over AvgPeriod (default 14): ((AvgPeriod-1) * previous + new) / AvgPeriod. This produces four running buffers — up and down volatility built from Highs, and up and down volatility built from Lows.
Step 2 — Two RVI Values
From those, the code computes rvih = 100 * HighUp / (HighUp + HighDown) and rvil = 100 * LowUp / (LowUp + LowDown) — essentially a Relative Volatility Index calculated once from High-price volatility and once from Low-price volatility.
Step 3 — Composite and Final Smoothing
The two RVI readings are averaged into a single composite value per bar, and that composite is then run through a simple moving average over SmoothingPeriod (default 20) bars. The result is the final Inertia line — smoothed twice over, which is exactly why it moves slowly and deliberately rather than reacting to every price tick.
How to Read It
The indicator’s own level line sits at 50. Because it’s built from High and Low volatility direction rather than Close-to-Close momentum, readings persistently above 50 reflect volatility that’s been skewing upward, while readings below 50 reflect a downward skew. Given the double smoothing (a 14-period recursive average feeding a 20-period SMA), Dorsey Inertia is best treated as a slow background bias filter — confirming which side the market’s volatility has been favoring — rather than a precise entry-timing tool. Most traders pair it with a faster trigger indicator for actual entries.
Why Build It From High/Low Volatility Instead of Close?
Most oscillators you already know — RSI, Stochastic, CCI — are built from the Close price. Dorsey Inertia deliberately works from the High and Low series instead, on the theory that the direction of expanding and contracting volatility at the extremes of each bar tells you something about market conviction that Close-to-Close momentum alone can miss. That’s also why the indicator needs two full RVI calculations (one from Highs, one from Lows) merged into a single composite, rather than the single pass a typical Close-based oscillator would use — effectively giving equal weight to how buyers push extremes higher and how sellers push extremes lower, instead of only tracking where each candle finally settles.
Input Parameters
- RVIPeriod (default 10) — the standard deviation lookback used to build the raw High and Low volatility readings.
- AvgPeriod (default 14) — the Wilder-style recursive smoothing period applied to the up/down volatility buffers.
- SmoothingPeriod (default 20) — the final simple moving average length applied to the composite RVI value, producing the plotted Inertia line.
Repaint Behavior
Dorsey Inertia does not repaint. The calculation loop uses the standard MT4 IndicatorCounted() pattern — it only processes bars from the last uncalculated point forward (stepping back one bar to refresh the still-forming candle), rather than looping back through the entire chart history on every tick. Once a bar closes and its value is written, that value is not revisited or altered by later ticks; only the current, still-open bar continues to update until it closes.
Limitations
- Being double-smoothed, it lags noticeably behind price and isn’t suited to precise entry/exit timing on its own.
- Because the up/down volatility buffers are built recursively, the line needs a meaningful warm-up period after being applied to a fresh chart before its readings stabilize.
- Only the final composite line is plotted — the four intermediate High/Low up/down volatility legs aren’t exposed as separate visible buffers, so you can’t inspect which side (High or Low volatility) is driving a given reading.
- The auxiliary two-dimensional buffer array is resized on every new bar, which is a minor overhead on very long chart histories.
- RVIPeriod (default 10) — Standard deviation lookback period used to build the raw High and Low volatility (up/down) readings.
- AvgPeriod (default 14) — Wilder-style recursive smoothing period applied to the up/down volatility buffers before the RVI ratio is computed.
- SmoothingPeriod (default 20) — Simple moving average length applied to the composite RVI value to produce the final plotted Inertia line.
FAQs About the MT4 Dorsey Inertia Indicator MT4
Does Dorsey Inertia repaint?
No. It uses the standard IndicatorCounted()-based incremental calculation, only recalculating new or still-forming bars, so values on closed bars stay fixed once printed.
What does the 50 level line mean?
Because the indicator is built from separate High-price and Low-price volatility readings, sustained values above 50 reflect an upward skew in that volatility, and values below 50 reflect a downward skew.
How is this different from a standard RVI (Relative Volatility Index)?
A standard RVI is typically calculated once, from a single price series. This version computes two separate RVI readings — one from High-price volatility, one from Low-price volatility — averages them, and then applies an additional SmoothingPeriod moving average on top, producing a slower, doubly-smoothed line.
What happens if I increase SmoothingPeriod?
SmoothingPeriod sets the final simple moving average length applied to the composite RVI value. Raising it produces a smoother, slower-moving, more lagged Inertia line; lowering it makes the line react faster but noisier.
What timeframes suit this indicator?
Because the default settings apply two layers of smoothing (a 14-period recursive average and a 20-period SMA), it’s better suited to swing-style analysis on higher timeframes where a slower-moving bias filter is useful, rather than fast scalping decisions.
