On this page
Rogers-Satchell Volatility: Trend-Robust OHLC Variance
Rogers-Satchell volatility is an OHLC variance estimator that stays unbiased even when the underlying asset has a non-zero drift. Published by L.C.G. Rogers and S.E. Satchell in 1991, it was designed specifically to fix the bias that Parkinson and Garman-Klass produce when prices are trending.
Key Takeaways
- Rogers-Satchell volatility uses the daily open, high, low, and close to estimate variance from a single bar.
- Its key property is drift-independence: a trending bar does not inflate the estimate the way Parkinson and Garman-Klass do.
- It still assumes no overnight gap, so close-to-open jumps are missed; Yang-Zhang fixes that piece.
- Use it on trending instruments such as commodity futures, sector ETFs in strong regimes, and crypto bars with small overnight moves.
Key Takeaways
- Rogers-Satchell volatility uses the daily open, high, low, and close to estimate variance from a single bar.
- Its key property is drift-independence: a trending bar does not inflate the estimate the way Parkinson and Garman-Klass do.
- It still assumes no overnight gap, so close-to-open jumps are missed; Yang-Zhang fixes that piece.
- Use it on trending instruments such as commodity futures, sector ETFs in strong regimes, and crypto bars with small overnight moves.
What It Is
Rogers-Satchell volatility is a per-bar variance formula computed from H, L, O, and C. Averaged over a rolling window of N bars, it produces a daily volatility series that you can annualise.
The defining feature is structural rather than numerical. The formula was constructed so that the expected value of the estimator equals the true diffusion variance whether the underlying drift is zero, positive, or negative.
The Intuition
Parkinson and Garman-Klass were derived under the assumption that the asset is a pure random walk with zero expected return. In practice equities trend, commodities can run for months, and intraday bars often carry a clear directional move.
When that drift is present, the range gets stretched in the direction of the trend. Parkinson reads that stretched range as extra volatility. Rogers-Satchell separates the drift component from the diffusion component by multiplying the upside and downside excursions in a way that cancels the directional piece.
How It Works
The single-bar Rogers-Satchell variance, using log prices, is:
sigma^2_RS = ln(H/C) * ln(H/O) + ln(L/C) * ln(L/O)
Each term is the product of two log distances. The first term reaches up from the close and the open to the high; the second reaches down from the close and the open to the low. The cross product structure is what kills the drift.
To get a window estimator, average the daily values:
sigma^2_RS,window = (1 / N) * sum over N days of sigma^2_RS,i
Take the square root and annualise by sqrt(252) for daily US equity data.
Because the formula uses no constant in front of the squared range, it can sometimes look smaller than Parkinson or Garman-Klass on the same bar. That is not a bug. It is the drift-cancellation effect at work.
Worked Example
Take one trading day where the asset trended up cleanly: open 100, high 105, low 100.5, close 104.
ln(H/C) = ln(105/104) = 0.009569
ln(H/O) = ln(105/100) = 0.048790
ln(L/C) = ln(100.5/104) = -0.034241
ln(L/O) = ln(100.5/100) = 0.004988
ln(H/C) * ln(H/O) = 0.009569 * 0.048790 = 0.000467
ln(L/C) * ln(L/O) = -0.034241 * 0.004988 = -0.000171
sigma^2_RS = 0.000467 + (-0.000171) = 0.000296
sigma_RS = sqrt(0.000296) = 0.01720 (about 1.72% daily)
For comparison, Parkinson on the same bar would have used (ln(105/100.5))^2 = 0.001930, scaled by 0.3607 to give 0.000696, almost 2.4 times higher than Rogers-Satchell. Parkinson is reading the trending stretch as volatility; Rogers-Satchell isolates the diffusion piece.
Annualising: 0.01720 * sqrt(252) = 27.3%.
Common Mistakes
-
Using it on gappy assets. Rogers-Satchell still assumes that the open equals the previous close. On equities with persistent overnight gaps it understates risk. Switch to Yang-Zhang for those names.
-
Reading a single bar. The per-bar value has high sampling variance. Always average over at least 10 to 20 bars before treating the output as a volatility level.
-
Comparing it directly to Parkinson in trending markets. They will not agree, and that is the whole point. Lower Rogers-Satchell is the trend signature, not a calibration error.
-
Forgetting it is variance, not standard deviation. The formula returns sigma squared. Take the square root before reporting, plotting, or feeding into option formulas.
-
Using highs and lows from illiquid bars. Stale or off-market prints corrupt H and L, and through them the product terms. Use exchange-cleaned OHLC or filter for liquidity.
Frequently Asked Questions
What is Rogers-Satchell volatility in simple terms? Rogers-Satchell volatility estimates how much an asset moved in a day using all four OHLC prices in a way that ignores any trend. It avoids inflating the reading when prices are running steadily up or down.
How does Rogers-Satchell volatility affect investment decisions? Lower bias on trending assets means more accurate position sizing and option pricing during persistent moves. It is often paired with realised vs implied vol comparisons to spot mispriced options.
What is a real-world example of Rogers-Satchell volatility? Trend followers in commodities use Rogers-Satchell to size positions in markets like crude oil during long upward or downward runs, where Parkinson would overstate the volatility regime.
How can investors use Rogers-Satchell effectively? Pair it with Parkinson or Garman-Klass on the same window. A gap between them flags how much of recent range was directional vs diffusive, useful for trend confirmation.
How is Rogers-Satchell different from Garman-Klass? Garman-Klass minimises sampling variance assuming zero drift. Rogers-Satchell sacrifices a little efficiency in exchange for being unbiased even when drift is non-zero.
Sources
- Portfolio Optimizer. "Range-Based Volatility Estimators: Overview and Examples of Usage." https://portfoliooptimizer.io/blog/range-based-volatility-estimators-overview-and-examples-of-usage/
- Molnar, P. "Properties of Range-Based Volatility Estimators." http://mmquant.net/wp-content/uploads/2016/09/range_based_estimators.pdf
- Quantreo. "Volatility Estimators." https://docs.quantreo.com/features-engineering/volatility/
- PortfoliosLab. "Rogers-Satchell Volatility." https://portfolioslab.com/tools/rogers-satchell
Disclaimer
This article is educational content only and is not financial advice. Nothing here is a recommendation to buy, sell, or hold any security. Consult a licensed advisor before making investment decisions.