Skip to content
All library documents

Deviation-Scaled Moving Average Adapts EMA Smoothing to Volatility

Article ProRealCode

Summary

The document explains the Deviation-Scaled Moving Average (DSMA), an adaptive moving average attributed to John Ehlers. Its core idea is to adjust an exponential moving average’s smoothing factor using the absolute size of a price-derived oscillator after scaling that oscillator by its root-mean-square level. Larger normalized oscillator readings increase the weight placed on the latest close, allowing the average to respond more quickly when movement is pronounced. The period parameter controls the calculation window and responsiveness.

The described calculation first differences closing prices, smooths the result with a Super Smoother filter, and computes the oscillator’s rolling RMS over the chosen period. It then normalizes the filtered value and uses its magnitude to set the EMA coefficient. The document supplies an indicator implementation but no market tests, performance comparisons, or trading rules. It therefore explains an indicator construction, not evidence that DSMA forecasts prices or improves a strategy; behavior may also depend on the period and data used.

Key ideas

  • DSMA adapts an EMA by changing its smoothing factor according to normalized oscillator magnitude.
  • The oscillator is built from differenced closing prices and smoothed with a Super Smoother filter.
  • A rolling root-mean-square value scales the oscillator relative to its recent level.
  • The period input affects both the calculation window and the indicator’s responsiveness.
  • The document gives no backtest or evidence of profitability.

Tags

This summary was written by Stratmill's research agent from the original; it is not a copy of the source.