Every so often the two outer lines of a Bollinger Band® drift toward each other until the band looks pinched. Traders call this a squeeze, and the word usually arrives with a story attached: the market is coiling, energy is building, a big move is on the way.
That story is a claim about what comes next. This article is about the step before it: what the narrowing itself measures. That part is arithmetic, and it turns out to be less obvious than the pinched shape suggests. What, if anything, tends to follow a squeeze is not something Oisigma has published, and the article says so where it matters.
A standard Bollinger Band draws lines a set number of standard deviations of recent closing prices above and below a moving average of those closes, typically two standard deviations over 20 bars. The distance between the lines is therefore four standard deviations of the last 20 closes.
Because that distance is measured in price units, it is hard to compare across instruments or across years. The usual fix is BandWidth: the gap between the upper and lower lines divided by the middle line, which turns the width into a percentage of price. A squeeze is then a relative condition, most often defined as BandWidth falling to its lowest level over some longer lookback, frequently several months. There is no single threshold. "Narrow" always means narrow compared with the band's own recent history.
The width is the standard deviation of 20 closing prices. That number is small when the 20 closes sit close to one another, and there are two separate reasons they can.
The first is the one the word "squeeze" implies: the day-to-day moves have been small. The second is less often mentioned: price has not travelled anywhere. A standard deviation of price levels counts drift as dispersion, so a market that rises in small, steady steps still produces a wide band, because the closes at the start of the window sit at a different level from the closes at the end. The Bollinger Band drift problem sets out that width-inflation mechanism in full.
Put together, a squeeze in a price-space band means recent moves were small and the market went sideways while they happened. A quiet market that is trending steadily tends not to look squeezed, even though its daily moves may be just as small.
There is a third driver that has nothing to do with the most recent bars. Width is a running summary of a fixed window, so the band changes when an old observation leaves the window as well as when a new one arrives.
Suppose a single large move happened 19 bars ago. While it sits inside a 20-bar window, it holds the width up. On the next bar it drops out, and the band can narrow sharply on a day when nothing unusual happened at all. Part of what looks like compression is sometimes just an old event ageing out of the calculation. Longer windows soften this step because each bar carries less weight, at the cost of reacting more slowly; that trade-off is the subject of what is rolling volatility.
A band built from the standard deviation of returns, the percentage change from one close to the next, removes one of the two ingredients. A steady trend made of small moves produces small returns, so the band stays narrow; drift does not count as dispersion. In return space, a narrow band means one thing only: recent percentage moves have been small.
The window effect remains. A return-space band also steps down when a large return leaves its window. And because its width is already proportional to price, it does not need a BandWidth-style division to be compared across instruments or years.
Oisigma's own indicator is built this way: its range "widens or tightens with volatility," recalculated every bar from a rolling window of recent returns, as described on How It Works. As reading the expected range puts it, a narrow band means recent moves have been small, and that is a description of what has already happened.
A fair question about any band is whether it stays honest when it is narrow: does price still stay inside it about as often as it claims?
The working paper tested the closest version of this that has been published. It split the S&P 500 daily series from 1962 to 2024 by regime, including the calmest and the most turbulent quarters of the sample, ranked by realized volatility over the trailing 252 bars. On bars in the calmest quarter, the next close landed inside the inner band 68.46% of the time and inside the outer band 92.75% of the time, against 70.28% and 93.79% across all bars in the same sample. These are historical measurements on one index, and past behavior is not a guarantee of future results.
Two cautions keep that reading narrow. The partition is by a year of realized volatility, not by the band being at its narrowest, so it is the nearest published proxy rather than a test of squeezes as such. And the calm-quarter rates sat a little below the full-sample rates, not above them, so in calm conditions the band did not hold price more tightly than usual, historically.
The published record does say something about the moment a quiet period ends suddenly, and it is a limit, not a forecast. A band built from recent history is still describing the calm when volatility jumps. For a stretch of days it runs too narrow, and closes land outside it more often than the long-run rate.
On S&P 500 days since 2005 when the VIX exceeded 30, containment of Oisigma's inner band fell to about 65%, a figure measured on that band only. When volatility bands fail sets out the mechanism and the numbers. Past behavior is not a guarantee of future results. Note what this result does not say: it describes how a band behaves after calm has ended, not whether a narrow band anticipated the change.
Most squeeze guides rest on one idea: low volatility tends to be followed by high volatility, so a squeeze sets up a large move. That is an empirical claim about what follows. Oisigma has not published a test of it, in either direction, and this article makes no claim that it is true or false.
The claim sits alongside a well-documented pattern that points the other way over short horizons. Volatility clustering describes calm tending to follow calm and turbulence following turbulence. Both can hold at once, at different horizons: quiet stretches persist, and quiet stretches also end. Clustering is a statement about the size of moves, not their sign, and neither pattern says when a given quiet stretch will end or which way price will go when it does.
The paper validates the range's calibration only, not the profitability of any use of it. Whether reading width in any particular way delivers value after costs is an open question.
A Bollinger Band squeeze means the last 20 closes have bunched together. In a price-space band that happens when moves have been small and price has gone sideways; it can also happen when an old large move leaves the window. A return-space band narrows for one reason only, small recent percentage moves, though it shares the window effect. In the one published calm-regime partition, the band held close to its usual calibration, slightly below it, historically. Everything beyond that, including the breakout story, is a separate claim that deserves its own test.
Is a Bollinger Band squeeze bullish or bearish? The width is built from the size of recent moves, so it carries no information about direction by construction; a squeeze looks the same whether the next large move is up or down. Some guides pair the squeeze with a separate directional tool, but that direction comes from the other tool, not from the narrowing. Nothing Oisigma has published scores a squeeze for direction.
What is the TTM Squeeze, or Bollinger Bands inside Keltner Channels? It is a variant that flags a squeeze when the Bollinger Band narrows inside a Keltner Channel, which is built from Average True Range rather than the standard deviation of closes. Mechanically, it means the dispersion of recent closes has fallen low relative to the average distance price covered within each bar. Why close-to-close and high-low measures can disagree is covered in why closing prices matter.
How long can a Bollinger Band squeeze last? There is no fixed duration, because a squeeze is defined relative to a lookback chosen by whoever draws it, and it ends mechanically only when larger moves enter the window or the comparison period rolls forward. Quiet stretches can persist for a long time, which is what volatility clustering describes. Oisigma has not published any measurement of squeeze duration.
Does a squeeze on the daily chart show up on the weekly chart? Not necessarily. A 20-bar window covers about a month of daily bars but about five months of weekly bars, so a quiet month can pinch the daily band while barely moving the weekly one. How an expected range rescales across bar lengths is covered in daily vs weekly charts.
The full calibration record behind Oisigma's band, including the regime splits and the crisis-onset limit, is in the working paper. If you'd like to watch a return-space range widen and tighten on the markets you follow, you can start a free 30-day trial.
Oisigma provides descriptive market analytics for educational use. It is not investment advice, does not predict prices, and does not provide buy or sell signals. Statistics referenced are historical and were measured in our working paper (not peer-reviewed); past behavior is not a guarantee of future results. Trading and investing involve substantial risk of loss, including the possible loss of all capital invested. Leveraged products (futures, options, margin) carry additional risk and can result in losses that exceed your initial investment. Bollinger Bands® is a registered trademark of John Bollinger; Oisigma is not affiliated with or endorsed by Mr. Bollinger. RiskMetrics® is a registered trademark of MSCI Inc.; Oisigma is not affiliated with or endorsed by MSCI Inc. Nothing in this article is a recommendation to use any particular strategy. Read the full Disclaimer →
Try it free for 30 days and see the range update as new bars print, on whatever symbols and timeframes you actually trade.
30 days free, then $15/mo. Cancel anytime from your account.
Pick up where you left off.