Volatility & bands

Bollinger %B · %B

Where price sits inside its Bollinger Bands, expressed as a single number around 0 to 1.

Works in most conditionsEngine-computed on a fixed sample series
14612196Price above Upper = strengthPrice below Upper = weaknessUpper acts as support / resistance
UpperMiddleLowerHow to read %B on the chart — the callouts mark what to look for.

The formula

It turns the visual 'how close to the band' question into a plottable line, which makes divergence easy to spot and lets you compare band position across instruments.

%B = (Close − Lower Band) ÷ (Upper Band − Lower Band)
Worked example
ComponentValue
Close104.0
Lower band95.0
Upper band105.0

%B = (104 − 95) ÷ (105 − 95) = 0.90 — price is near the upper band but not yet beyond it.

What it is

Bollinger %B is a companion indicator to Bollinger Bands that answers a single precise question: where does price sit inside its bands right now, expressed as one number? It converts the visual, at-a-glance impression of how close price is to the upper or lower band into a plottable value that typically ranges around zero to one. A reading of one means price is exactly at the upper band, zero means it is at the lower band, and one-half means it is at the middle moving average. Because it is a clean line rather than an envelope, %B makes it easy to spot divergences and to build mechanical, rule-based band strategies. John Bollinger created it as part of his own trading system to quantify band position. It turns the qualitative question of nearness to a band into a quantitative one you can compare and chart.

How it's calculated

%B is calculated by taking the closing price minus the lower band, then dividing by the upper band minus the lower band — in other words, price's position expressed as a fraction of the total band width. When the close sits on the lower band the numerator is zero, so %B reads zero; when it sits on the upper band the numerator equals the denominator, so %B reads one; and at the middle band it reads one-half. Crucially, %B is not capped: when price closes above the upper band the numerator exceeds the denominator and %B pushes above one, and when price closes below the lower band %B falls below zero. Because it is built entirely from the underlying Bollinger Bands, it inherits their settings — the twenty-period average and two-standard-deviation bands by default — and its behavior depends directly on how those bands are configured.

Reading it step by step

The core read is straightforward: %B tells you the relative position of price within the bands, with values above one or below zero flagging genuine closes outside the bands and therefore statistically extreme moves. But its most powerful use is divergence, which is far easier to see on the %B line than on the bands themselves. If price makes a new high while %B makes a lower peak, the new high is happening less far into the upper band than before, hinting the thrust is weakening even as price rises. The mirror applies at lows. A %B that climbs back above zero from below signals price has re-entered the bands after an extreme, often an early reversal cue, while a %B pushing above one in an uptrend can signal a powerful breakout. Reading %B well means combining its absolute extremes with its divergences against price.

Reading the signals on the chart

14612196
UpperMiddleLowerThe ▲/▼ marks flag where price most recently crossed the line — the cues a trend-follower would act on.

Best timeframes

  • Scalping1m – 5mjumpy on short lookbacks
  • Day trading5m – 15m
  • Swing1h – Daily
  • PositionDaily – Weekly

%B is only as steady as the band settings feeding it, so a longer lookback gives a smoother, more readable line.

%B vs related position tools

%BBollinger BandsStochastic
OutputOne line ~0 to 1Price envelope0 to 100 line
ReferenceThe bandsStd-dev of priceHigh / low range
Marks close outside bandYes (>1 or <0)VisuallyNo
Divergence-friendlyYesHarder to readYes

Common price-action setups

How the signal typically plays out on the chart.

Reclaim above zero

Buy when %B climbs back above 0 from below, signalling price has re-entered the bands after an extreme. Stop below the recent low, target the middle band.

Buy the reclaim
Snap-back higher
Breakout above one

In an uptrend, take a long when %B pushes above 1, showing price closing outside the upper band with momentum. Stop back inside the band.

Buy above 1
Trend thrust
Bearish divergence

Price prints a higher high while %B makes a lower peak — the thrust is weakening. Short the rollover with a stop above the high.

Short divergence
Momentum fades

Best timeframes and settings

%B works on any timeframe, inheriting the timeframe-agnostic nature of Bollinger Bands, and is used from intraday scalping to weekly position trading. Its settings are simply the settings of the bands feeding it, conventionally twenty periods and two standard deviations, and changing those changes %B directly. This dependency is important: a short, jumpy lookback produces a jumpy, noisy %B that whips between extremes, while a longer lookback yields a smoother line that reacts more slowly. Widening the standard-deviation multiplier compresses %B toward the middle since price reaches the wider bands less often, while narrowing it pushes %B to its extremes more frequently. As with the bands, the responsiveness-versus-noise trade-off is governed entirely by the underlying settings, and most traders keep the classic 20/2 unless they have a specific reason to change it.

When and where to use it

Use %B when you want a numerical, comparable measure of band position — for building mechanical rules, for scanning across many instruments at once, or for spotting divergences that are hard to see on the bands directly. Its ability to compare band position across different instruments, which the raw bands cannot do because they are in each instrument's price units, makes it valuable for screening. It is regime-neutral but interpreted differently in trends versus ranges, just like the bands. Avoid treating a %B extreme as directional on its own, since price can remain above one for many bars in a strong uptrend just as it can walk the upper band. It is most useful as an analytical and screening layer on top of the bands rather than a standalone signal. Skip it if you are not already using Bollinger Bands, since it only makes sense in their context.

Strategies that use it

A mechanical reversion strategy in a range buys when %B climbs back above zero from below — price re-entering the bands after tagging the lower extreme — and sells when %B drops back below one from above, with stops beyond the recent extreme. A breakout strategy in a trend goes long when %B pushes above one in an established uptrend, treating the close above the upper band as confirmation of strength, with the stop below the middle band. A divergence strategy watches for price to make a new high while %B makes a lower high, then fades the exhaustion once price confirms with a reversal candle. A screening strategy ranks a watchlist by %B to find instruments at band extremes across the whole list at once. In each, %B provides the precise, comparable trigger that the visual bands cannot easily supply.

Combining it with other indicators

%B pairs naturally with momentum oscillators, since a %B divergence confirmed by an RSI or MACD divergence is a much stronger exhaustion signal than either alone. It also complements Bollinger Bandwidth: %B tells you where price is within the bands while Bandwidth tells you how wide the bands are, and together they describe the full band environment for a squeeze-and-breakout approach. Volume confirmation helps validate a %B breakout above one, distinguishing a real thrust from a thin poke outside the band. A trend filter such as a longer moving average tells you whether to read a high %B as overbought-and-fadeable in a range or as strength-to-ride in a trend. Because %B is derived from standard deviation, combining it with a structural level like support or resistance grounds its statistical extremes in actual price memory.

Where it fails

The most important caveat is that %B is only as good as the band settings feeding it, so a poorly chosen, jumpy lookback produces a %B that flags false extremes constantly. Like the bands themselves, an extreme %B reading is not directional on its own — a value above one means price is strong and outside the upper band, which in a trend is a reason to stay long, not to sell. Traders who fade every %B above one in a trending market get repeatedly stopped out as price walks the band. Because %B can exceed one and fall below zero without bound, mechanical rules that assume it stays between zero and one break down at exactly the extremes that matter most. The remedy is to interpret %B in the context of the trend, confirm divergences with an independent oscillator, and remember that it measures position, never direction.

A worked example

Suppose a stock's Bollinger Bands sit with the upper at 105.00 and the lower at 95.00, and the stock closes at 103.00. Then %B equals the close minus the lower band, 103 minus 95, which is 8, divided by the band width, 105 minus 95, which is 10 — giving 0.80, meaning price is eighty percent of the way from the lower band to the upper. A few days later price prints a new high and closes at 106.00, above the upper band, so %B reads 1.10, confirming a genuinely extreme close. But the trader notices that on the prior high, %B had reached 1.25, so despite a higher price the new high is less deep into the band — a bearish %B divergence. Waiting for a reversal candle to confirm, the trader fades the exhaustion, using the %B divergence as the analytical trigger that the raw bands alone would not have made obvious.

Common mistakes

  • Treating a high %B as an automatic sell — like the bands, an extreme reading is not directional.
  • Feeding it a jumpy short lookback, which produces an equally jumpy %B.
  • Ignoring that %B is only as good as the band settings behind it.
  • Reading 0.5 crossings as signals when they merely mark the middle SMA.
  • Using %B alone without price structure to confirm the divergence or reclaim.