Rogers-Satchell Volatility – Drift-Adjusted Vol for Trending Markets

MSFT climbed from $393 to $433 over seven sessions in mid-April 2026. A close-to-close volatility estimate over that window would have been inflated by every single up-close, measuring the trend as if it were noise. Rogers-Satchell volatility strips that drift out. It uses all four OHLC values on each bar to isolate the intraday dispersion from the directional move, giving you a cleaner read on how much the price actually scattered around its path.

I started paying attention to Rogers-Satchell after noticing that my close-to-close vol estimates kept spiking during clean trending legs on daily charts. The spikes were not wrong mathematically. They were wrong practically. The stock was trending, not thrashing. Rogers-Satchell fixed that gap by telling me what the market’s actual wiggle was, independent of direction.

What Rogers-Satchell Volatility Measures

Standard close-to-close volatility measures dispersion in log returns. The problem is that a stock grinding higher by 1% per day for ten days will register the same variance contribution as one that whipsaws 1% up and down. Both produce identical absolute return magnitudes. Close-to-close conflates direction with scatter.

Rogers-Satchell solves this by working from the relationships between open, high, low, and close within each bar. It captures how far price traveled from the open to the extremes and from the extremes to the close, then combines those distances in a way that cancels out any constant drift term. The result is a variance estimate that reflects intraday range behavior, not return direction.

A common mistake is treating Rogers-Satchell as a “better” version of historical volatility in all situations. It is not. In range-bound, mean-reverting markets where drift is near zero, close-to-close and Rogers-Satchell give similar results. The edge appears specifically when the underlying is trending. If you are measuring volatility on a consolidating index, you probably do not need this estimator. If you are measuring it on a stock that has been grinding in one direction for weeks, you do.

The Rogers-Satchell Formula

For a single bar with open O, high H, low L, and close C, the Rogers-Satchell variance contribution is:

\sigma^2_{RS,t} = \ln\!\left(\frac{H_t}{C_t}\right)\ln\!\left(\frac{H_t}{O_t}\right) + \ln\!\left(\frac{L_t}{C_t}\right)\ln\!\left(\frac{L_t}{O_t}\right)

 

Over n bars, the Rogers-Satchell variance is the average:

\sigma^2_{RS} = \frac{1}{n}\sum_{t=1}^{n}\left[\ln\!\left(\frac{H_t}{C_t}\right)\ln\!\left(\frac{H_t}{O_t}\right) + \ln\!\left(\frac{L_t}{C_t}\right)\ln\!\left(\frac{L_t}{O_t}\right)\right]

 

Daily volatility is \sigma_{RS} = \sqrt{\sigma^2_{RS}}. To annualize, multiply by \sqrt{252}.

Two properties are worth noting. First, each day’s contribution is always non-negative. The high is always above or equal to both the open and close, and the low is always below or equal to both, so each product of log ratios is zero or positive. Second, the formula does not include any return term (close-to-previous-close). That is exactly why drift drops out.

People sometimes confuse Rogers-Satchell with Garman-Klass volatility, which also uses OHLC data. Garman-Klass is more statistically efficient (lower variance of the estimator), but it assumes zero drift. When the stock is trending, Garman-Klass will be biased. Rogers-Satchell will not. That distinction matters more than the efficiency difference for most trading applications.

Worked Example With AAPL

Here is AAPL’s OHLC data for seven sessions from April 14 to April 22, 2026:

Date Open High Low Close
Apr 14 259.25 261.93 257.19 258.83
Apr 15 258.16 266.56 257.81 266.43
Apr 16 266.80 267.16 261.27 263.40
Apr 17 266.96 272.30 266.72 270.23
Apr 20 270.33 274.28 270.29 273.05
Apr 21 271.50 272.80 265.40 266.17
Apr 22 267.82 273.74 266.87 273.17

AAPL moved from roughly $259 to $273 over this window. A net gain of about 5.5%. Let me walk through April 17 as a single-bar calculation:

\ln(272.30/270.23) = 0.00763

 

\ln(272.30/266.96) = 0.01980

 

\ln(266.72/270.23) = -0.01309

 

\ln(266.72/266.96) = -0.00090

 

\sigma^2_{RS,17} = 0.00763 \times 0.01980 + (-0.01309) \times (-0.00090) = 0.0001629

 

Computing the same for all seven days and averaging, the mean Rogers-Satchell variance comes to approximately 0.0001377. Take the square root: daily Rogers-Satchell volatility is about 1.17%. Annualized, that is roughly 18.6%.

Compare that with the close-to-close standard deviation over the same window. The six daily log returns have a sample standard deviation of about 2.27% per day, annualizing to roughly 36%. Close-to-close is nearly double the Rogers-Satchell figure. The difference is almost entirely drift. AAPL was trending up, and each positive close-to-close return inflated the measured dispersion. Rogers-Satchell filtered that out.

The takeaway is not that 18.6% is “right” and 36% is “wrong.” They answer different questions. If you need to know how much the price scattered within each bar, net of the directional move, Rogers-Satchell is the better tool. If you want total return dispersion including the trend, close-to-close is what you need.

Rogers-Satchell vs Parkinson and Garman-Klass

The Parkinson estimator uses only the high and low. It is efficient when drift is zero and the price path is continuous. But it ignores the open and close, which means it loses information about where the bar started and ended. And it assumes zero drift, just like Garman-Klass.

Garman-Klass adds the open and close back in and achieves better statistical efficiency than Parkinson. But that efficiency comes with the same zero-drift assumption. In a trending market, Garman-Klass can actually produce negative variance estimates on individual bars. That should not happen with a variance, and it is a direct consequence of the drift assumption being violated. Rogers-Satchell avoids this entirely because each bar’s contribution is guaranteed non-negative.

In practice, I use Garman-Klass when I am looking at a stock in a multi-week range and want the tightest estimate I can get. I switch to Rogers-Satchell when the stock has a visible slope. The decision is not complicated: look at a 20-day chart. If there is a clear trend, use Rogers-Satchell. If the stock is going sideways, either estimator works.

A mistake I see in quant forums is benchmarking Rogers-Satchell against Garman-Klass on random-walk simulated data and concluding that Rogers-Satchell is “less efficient.” That benchmark is rigged. Random walks have zero drift by construction. Of course the zero-drift estimator wins on zero-drift data. Test on actual equity data where trends last for weeks, and Rogers-Satchell holds its value much better.

Where Rogers-Satchell Breaks Down

Rogers-Satchell is not immune to the problems that affect all range-based estimators. The big one is overnight gaps. The formula uses the open as a reference point, but it does not account for the jump from the previous close to the current open. If a stock gaps up 3% at the open and then trades in a tight range, Rogers-Satchell will show low volatility for that bar. Close-to-close will capture the gap. Neither is lying. They are measuring different things.

This matters most for earnings announcements and macro events. A stock that gaps 8% at the open and drifts quietly for the rest of the day will register a tiny Rogers-Satchell contribution. If you are sizing positions around Rogers-Satchell vol, you will understate the risk around known event dates. One practical fix: exclude the bar immediately following an earnings release or use a blended estimator like standard deviation of returns for the event window.

A second failure mode is thin markets. Rogers-Satchell assumes continuous price paths within the bar. In illiquid names where the high might be a single print at an extreme price, the estimator will spike on noise, not signal. Stick to liquid names with real intrabar price discovery.

Third, very short lookback windows amplify sampling noise. A 5-bar Rogers-Satchell estimate can swing wildly from day to day because each bar is an independent sample. I do not trust the reading below a 10-bar window. Twenty is better for screening. For single-stock analysis on daily charts, I default to a 20-bar lookback and recalculate weekly.

How to Use Rogers-Satchell in Practice

The cleanest application is volatility screening for trending stocks. Run Rogers-Satchell and close-to-close vol over the same lookback. When close-to-close is substantially higher than Rogers-Satchell, the difference is drift. The stock is trending. When the two converge, the stock is range-bound. That ratio by itself is a useful trend filter without requiring any moving averages or momentum oscillators.

For stop placement, Rogers-Satchell gives you the intraday scatter net of trend. A stop set at 2x daily Rogers-Satchell vol below the current price accounts for normal intrabar noise without being stretched by the trend’s own contribution. Compare that with a stop based on Bollinger Band Width, which uses close-to-close standard deviation and will be wider during trending phases simply because of the drift.

For options traders, the gap between implied vol and Rogers-Satchell realized vol is sometimes more informative than the gap between implied vol and close-to-close realized. If a stock has been trending hard and implied vol is at 25%, but Rogers-Satchell says realized intraday scatter is only 15%, the implied vol might be priced fairly. The 10-point gap could be the market pricing in the possibility that the trend reverses or the stock re-enters a choppy regime. Close-to-close realized would show 30%, making you think IV is cheap. It is not. The extra realized dispersion was directional, not random.

Do not over-optimize the lookback period. I have tested 10, 15, 20, and 30-bar windows on equity indexes. The results are not dramatically different. Twenty bars on daily data is the standard in academic literature and it works fine for trading. If you are on intraday bars, scale accordingly, but the same logic holds.

When Drift Adjustment Actually Matters

Rogers-Satchell earns its place in two specific scenarios. The first is sustained directional moves, like a stock rallying after earnings guidance or selling off during a sector rotation. In those phases, close-to-close vol paints a misleading picture of the market’s “riskiness.” The stock is not more dangerous just because it is going up steadily. Rogers-Satchell keeps the number honest.

The second scenario is regime identification. Plot Rogers-Satchell vol and close-to-close vol on the same chart. When the two lines diverge, the market is trending. When they converge, the trend is fading or absent. This is not a trading signal by itself, but it is a clean, formula-based way to confirm or deny what you think you see on the price chart.

If you are backtesting a system that sizes positions by volatility, the choice of estimator changes your results. A trend-following system sized by close-to-close vol will take smaller positions during the best trending periods because measured vol is inflated by the trend it is trying to capture. Switching to Rogers-Satchell for the sizing component can improve capital efficiency during strong trends without changing the entry or exit logic.

Educational content only. Not investment advice. Trading involves risk. You are responsible for your decisions.