Calculating Williams %R: Formula and Mechanics
Williams %R measures overbought and oversold conditions by comparing the current close to the highest high over a lookback period. The formula reads:
[ %R = \frac{\text{Highest High}{N} - \text{Close}{t}}{\text{Highest High}{N} - \text{Lowest Low}{N}} \times (-100) ]
- (N) typically equals 14 periods.
- The result ranges from 0 to -100.
- Values near 0 indicate overbought.
- Values near -100 indicate oversold.
For example, on the 5-minute chart of ES futures, if the highest high in the last 14 bars is 4200, the lowest low is 4150, and the current close is 4180:
[ %R = \frac{4200 - 4180}{4200 - 4150} \times (-100) = \frac{20}{50} \times (-100) = -40 ]
This reading suggests a moderately neutral momentum, neither overbought nor oversold.
Prop trading desks calculate %R in real-time for instruments like NQ and SPY, updating every tick or bar close. Algorithms often use 14-period %R on 1-minute or 5-minute charts to detect short-term exhaustion.
Interpretation: Overbought, Oversold, and Reversal Triggers
Traders treat %R readings above -20 as overbought and below -80 as oversold. However, these thresholds do not guarantee reversals. Instead, they signal potential exhaustion of recent price moves.
For example, on AAPL’s 15-minute chart, %R above -20 during an uptrend often precedes a pullback of 0.5% to 1%. Conversely, %R below -80 during a downtrend can signal a bounce or consolidation.
Institutional traders combine %R with volume spikes and order flow to confirm signals. A %R oversold reading on TSLA accompanied by a surge in buy orders signals a higher probability of a reversal than %R alone.
Algorithms embed %R thresholds in filters. For instance, a prop desk’s mean-reversion bot may short CL futures when %R crosses above -10 on the 1-minute chart with RSI above 70 and volume above the 20-period average.
Worked Trade Example: Using Williams %R on the 5-Minute ES Chart
- Date: March 15, 2024
- Instrument: ES Futures
- Timeframe: 5-minute
- Setup: Mean reversion after a strong rally
At 10:15 AM, ES rallies from 4150 to 4175 in 30 minutes. The 14-period %R on the 5-minute chart hits -5, signaling extreme overbought conditions.
Entry
At 10:20 AM, price stalls at 4175. %R crosses below -10, indicating momentum loss. Enter a short at 4174.
Stop
Place a stop 6 ticks above entry (4174 + 6 ticks = 4180.50). ES tick size = 0.25, so 6 ticks = 1.5 points.
Target
Set target at 10 ticks below entry (4174 - 10 ticks = 4169.5).
Position Size
Account risk per contract = 6 ticks × $12.50 = $75 (ES tick value).
Risk per trade = $75. Account size = $50,000. Risk 1.5% = $750.
Position size = $750 / $75 = 10 contracts.
Risk-Reward
Reward = 10 ticks × $12.50 × 10 contracts = $1,250.
Risk = $75 × 10 contracts = $750.
Risk-reward ratio = 1.67:1.
Outcome
Price retraces to 4169.5 within 20 minutes. The trade closes at target with a 1.67:1 R:R.
This trade illustrates how %R extremes identify exhaustion. The stop protects against continuation. The 5-minute timeframe balances noise and signal clarity.
When Williams %R Fails: Trending Markets and False Signals
Williams %R underperforms in strong trends. In a sustained rally, %R may stay above -20 for extended periods without meaningful pullbacks. Traders who short solely on overbought %R in such cases risk catching a “falling knife.”
For example, during Tesla’s 2023 Q4 earnings rally, %R on the daily chart stayed above -10 for five consecutive sessions. Shorts triggered by %R alone suffered losses exceeding 4% per trade.
Prop firms avoid %R-based shorts during confirmed trends by layering trend filters like moving averages or ADX above 25.
False signals also occur in low-volume conditions. On Gold futures (GC), %R readings can spike due to thin order books, triggering premature entries. Institutional desks cross-reference %R with volume and VWAP to filter noise.
Institutional and Algorithmic Use of Williams %R
Prop trading firms integrate Williams %R into multi-factor models. Algorithms combine %R with momentum indicators, volume, and price action patterns to optimize entries.
For example, a proprietary algo on SPY uses:
- 14-period %R on 1-minute and 5-minute charts.
- Entry triggers only when %R crosses below -80 and RSI < 30.
- Stops based on ATR (Average True Range).
- Position sizing scaled dynamically by volatility.
This reduces false signals and aligns trades with institutional liquidity zones.
Traders in prop firms monitor %R divergences against price. A higher low in %R paired with a lower low in price signals bullish divergence and potential reversal. Such setups show up frequently on the 15-minute CL chart around inventory imbalances.
Summary
Williams %R calculates momentum exhaustion by comparing current close to recent highs and lows. It works best in range-bound or mean-reverting markets. Use 14 periods on intraday charts (1-min, 5-min, 15-min) for short-term signals.
Interpret %R readings near 0 as overbought and near -100 as oversold. Combine with volume, price action, and trend filters to improve reliability. Expect false signals in strong trends and low-volume environments.
Institutional traders and algorithms embed %R in multi-factor systems, adjusting position size and stops based on volatility and order flow.
Key Takeaways
- Williams %R equals (\frac{\text{Highest High} - \text{Close}}{\text{Highest High} - \text{Lowest Low}} \times (-100)), typically over 14 periods.
- Overbought: %R > -20; oversold: %R < -80; use as exhaustion signals, not standalone triggers.
- Works best in range-bound markets; fails in strong trends where %R can remain extreme.
- Combine %R with volume, RSI, and trend filters to reduce false signals.
- Prop firms and algos use %R in multi-factor models with dynamic sizing and volatility-based stops.
