Skip to content

Williams %R

OVERVIEW

Williams %R (%R) is a bounded momentum oscillator developed by Larry Williams in 1973. It measures where the current close sits within the trading range of the past N periods, expressed as a negative percentage from 0 (close at the period high) to −100 (close at the period low). Default lookback is 14 periods. Readings above −20 indicate overbought conditions; readings below −80 indicate oversold conditions.

Parameter Default Range
Lookback period 14 5–200+
Overbought threshold −20 Configurable
Oversold threshold −80 Configurable
Output bounds 0 to −100 Fixed

Note

Williams %R is mathematically equivalent to an inverted, unsmoothed stochastic %K. If you already plot Stochastic %K on your chart, %R adds no new information.


FORMULA

%R = ((Highest High over N − Current Close) / (Highest High over N − Lowest Low over N)) × −100

Variables:

Variable Description
Highest High over N Highest high in the lookback window
Lowest Low over N Lowest low in the lookback window
Current Close Most recent closing price

Boundary conditions:

Close position %R output
At the period high 0
At the midpoint −50
At the period low −100

WORKED EXAMPLE

NVDA — 2026-05-07 (14-period lookback)

Input Value
14-day Highest High $1,025.40
14-day Lowest Low $948.20
Current Close $1,012.80
%R = ((1,025.40 − 1,012.80) / (1,025.40 − 948.20)) × −100
%R = (12.60 / 77.20) × −100
%R = −16.32

Tip

A reading of −16 places NVDA above the −20 overbought threshold — the close is in the upper 20% of its 14-day range. In a strong uptrend this is consistent with continuation; in a range-bound market this signals an unfavorable risk-reward for new long entries.


HOW TO USE

Mean-Reversion Entries

Buy signals trigger at readings below −80; sell signals trigger at readings above −20. This is the classic configuration and works best in range-bound regimes.

Tip

Combine with Bollinger Bands to confirm a range-bound regime before acting on %R extremes.

Divergence

A bearish divergence occurs when price prints a higher high while %R fails to exceed its prior reading above −20. This signals momentum exhaustion. The symmetric setup applies on the long side.

Trend-Following Filter

In strong uptrends %R spends the majority of time above −50. Readings below −50 signal trend weakening rather than an oversold buy condition. Always read %R in the context of the underlying trend direction.

Multi-Timeframe Confirmation

Pairing daily %R with weekly trend direction filters the majority of false signals. Many systematic mean-reversion strategies require %R extremes only when the long-term trend confirms the trade direction.

Signal Confirmation Matrix

Condition Suggested Pairing Purpose
Range-bound market Bollinger Bands Confirm regime before entry
Momentum exhaustion RSI Two-of-three divergence confirmation
Oversold/overbought Stochastic oscillator Cross-indicator agreement
Volume-blind gaps Money Flow Index Catch divergences %R misses

LIMITATIONS

Note

Understanding where %R fails is as important as knowing when it works.

Limitation Detail
Overbought ≠ sell signal In strong trends %R stays pinned above −20 for weeks. Selling every overbought print in NVDA during 2024 produced a string of losses.
Redundant with Stochastic %K Williams %R is mathematically identical to (Stoch %K − 100). If you already use Stoch, %R adds no information.
Lookback sensitivity A 5-period setting generates excessive false signals. A 28-period setting lags too heavily for active timeframes. No universally optimal value exists.
Regime shifts When volatility expands and price breaks the prior 14-day range, %R pins at −100 or 0 and provides no actionable signal until a new range stabilizes.
No volume input %R is price-only. Volume-aware oscillators such as the Money Flow Index catch divergences that %R cannot detect.