This page explains the logic behind the indicator. It’s background, not a prerequisite — you can use BTM without reading it.
BTM measures how price has recently been moving and draws a normal range around it — an expected price, a band where price usually trades, and a wider boundary it only crosses on unusual days. Everything recalculates on every bar.
It does not predict price, generate signals, or define trades. It describes where price is relative to its own recent behavior.
At each bar, the model looks back over a rolling window of recent returns (percentage moves), typically the last ~60 bars. That window is the behavioral context:
It uses only data already available at the prior bar — nothing from the future. Once a bar closes, its range and markers are fixed and never change afterward. While the current bar is still forming, its live abnormal-move marker can update until the bar closes.
From those recent returns, the model computes an expected price: the level implied by how price has recently been moving, anchored to the prior close.
Read it as a balance point or anchor — not a forecast of direction. In testing, this center line carries almost no information about which way price will go next; its job is to center the range, not to call the next move.
Around the expected price, the model places two boundaries from the dispersion (standard deviation) of recent returns:
The key design choice is that these are measured in return space — percentage moves anchored to the prior close — and then projected onto price. That keeps the range centered on where price actually is and scaled to current conditions, instead of drifting off-center or ballooning the way a band built on raw price levels does in a trend.
As each new bar prints, the window rolls forward: the return distribution updates, the expected price shifts, and the range widens or tightens with volatility. No manual redrawing, no regime-switching logic — the structure always reflects current behavior, not distant history.
Is price behaving normally… or not?
Price is inside the normal range — typical for recent conditions.
Price has stepped beyond the normal range — unusual relative to recent conditions.
The model doesn’t call a move good or bad, bullish or bearish — only more or less typical given how price has lately behaved.
Just structure.
These are ways users commonly apply BTM — descriptions of use, not recommendations:
It supports discretionary decisions; it doesn’t automate them, and it isn’t advice.
The main input is the length of the rolling window, which sets the model’s memory — shorter for responsiveness, longer for stability.
Different lengths emphasize different time horizons. No setting removes uncertainty or risk.
It describes recent behavior; it does not predict price or direction.
The center line is a reference, not a directional forecast.
Different symbol, timeframe, source, and window all produce different structure.
Accurate over the long run but not in every moment. It runs too narrow in the first days of a fast crisis (when volatility spikes faster than recent history can register), and the outer band is slightly optimistic in the deep tails.
Use BTM alongside your own analysis and risk management. Trading involves risk, including the possible loss of capital.
The construction, the assumptions, every figure, the statistical tests, and the limitations — documented in our working paper (complete and citable, not yet peer-reviewed). We’d rather show the math than ask you to take our word for it.
“How Well Does a Rolling-Volatility Band Calibrate? Evidence Across Asset Classes and Market Regimes.” oisigma.com LLC. Not peer-reviewed.
Read the working paper →The methodology is the explanation; the calibration is the evidence. The best way to read both is to watch BTM on the markets you actually trade.
Start your free 30-day trial →30-day free trial, then $15/month billed monthly — auto-renews until you cancel. Cancel anytime.
Pick up where you left off.