Williams %R (Williams Percent Range) was developed by Larry Williams and published in his 1979 book "How I Made One Million Dollars Last Year Trading Commodities." It is a momentum oscillator that measures the current closing price relative to the highest high over a lookback period, expressed as a percentage range from 0 to -100. Values near 0 indicate price is closing near the top of the recent high-low range (overbought). Values near -100 indicate price is closing near the bottom of the recent range (oversold). Unlike RSI (which compares average gains to average losses), Williams %R uses a simpler high-low range calculation that makes it faster to respond to price changes — particularly useful for identifying exact turning points in momentum within established trends.
Williams %R is available in DennTech's indicator library as both a standalone strategy and a confirmation filter for primary strategies. Related guides: RSI, StochRSI, MACD, EMA trend filter.
Williams %R Formula
Williams %R = ((Highest High over N periods - Close) / (Highest High - Lowest Low over N periods)) x -100 Scale: 0 to -100 (note: values are negative) Overbought: 0 to -20 (closing near the top of the range) Oversold: -80 to -100 (closing near the bottom of the range) Standard period: 14 (same as RSI, Stochastic defaults)
The formula is essentially the inverse of the Stochastic %K — where Stochastic measures where close is relative to the lowest low, Williams %R measures where close is relative to the highest high. Both oscillators produce very similar signals and are often interchangeable as confirmation filters.
Williams %R Signal Types
1. Oversold Bounce (Core Long Entry)
Williams %R drops below -80 (price closing near the bottom of the 14-period range) and then crosses back above -80 — the oversold bounce. Entry rule: %R crosses from below -80 to above -80 AND price is above EMA 50 (uptrend filter) → long entry with 1.5× ATR stop below entry. This signal fires when momentum shifts from extreme oversold back toward neutral within an uptrend. See our EMA guide and ATR guide.
2. Overbought Rejection (Short Entry or Exit)
Williams %R rises above -20 (overbought) and crosses back below -20 — the overbought rejection. For spot strategies: use as a take-profit signal when %R reaches -20 while in a long position. For futures strategies with short capability: combined with price below EMA 50, use as a short entry signal.
3. Williams %R Failure Swing
A failure swing occurs when %R makes a second attempt to reach the oversold zone (-80 to -100) but fails — stopping at a less extreme level (e.g., -70) before reversing upward. This failure to reach the prior extreme is a sign of strengthening momentum and a higher-quality entry signal than the simple oversold cross. The failure swing requires monitoring two consecutive %R moves, which DennTech automates through the failure swing detection logic.
4. %R Momentum Divergence
Bullish divergence: price makes a new low but %R makes a higher low (less extreme oversold reading) — momentum is improving despite price declining. This is the same divergence concept used with RSI and MACD. See our RSI divergence guide and MACD divergence guide.
Williams %R vs. RSI and Stochastic
| Oscillator | Scale | Response Speed | Best For |
|---|---|---|---|
| Williams %R | 0 to -100 | Fast (single period calculation) | Precise short-term turning points, failure swing detection |
| RSI | 0 to 100 | Medium (uses average gain/loss) | Sustained momentum conditions, divergence, trend strength |
| Stochastic %K | 0 to 100 | Fast (similar to %R but inverted) | K/D crossover signals, similar to %R use cases |
Williams %R is slightly faster than RSI because it uses only the highest high and lowest low (not a smoothed average), making it more sensitive to short-term momentum turns. The faster response is both an advantage (earlier entry signals) and a risk (more false signals in choppy markets). The trend filter — only taking oversold %R signals when price is above EMA 50 — is the essential filter for reducing false signals.
Configuring Williams %R in DennTech
- Navigate to Strategy → Williams %R
- Set period: 14 (standard)
- Set overbought/oversold levels: -20/-80 (standard)
- Select signal: Oversold Bounce, Overbought Rejection, Failure Swing, or Divergence
- Enable EMA trend filter: long entries only above EMA 50; short entries only below EMA 50
- Set stop-loss: 1.5× ATR below entry for long bounce signals
- Paper trade first — see paper trading guide
Full documentation at DennTech docs. All 25 strategies at the strategies page. Start at the pricing page.
Multi-Oscillator Confirmation Framework
Williams %R works particularly well as a multi-oscillator confirmation filter alongside RSI. A long entry requiring both RSI below 35 AND Williams %R below -80 simultaneously confirms oversold conditions through two independent calculation methodologies. The double confirmation reduces false signals at the cost of reduced signal frequency. For higher-timeframe strategies (Daily), this double-confirmation approach often improves consistency by filtering out single-oscillator noise. See our RSI guide and the full strategy list at the strategies page.
Frequently Asked Questions
- Is Williams %R better than RSI for crypto bot trading?
- Williams %R and RSI measure different aspects of momentum and are best treated as complementary rather than competitive. %R identifies where price sits within the recent range (range position) while RSI measures the momentum of gains vs losses (momentum quality). The two often align at turning points, but occasional disagreements provide useful information — when %R is oversold but RSI is not confirming, momentum strength is ambiguous and a more conservative position size is appropriate. Using both as a dual-confirmation filter typically outperforms either alone on 4H timeframes for BTC/USDT and ETH/USDT. Compare editions at the pricing page.
- What period setting works best for Williams %R on crypto charts?
- The standard 14-period setting (originally designed for equities on daily charts) translates well to crypto on 4H and Daily timeframes. For 1H strategies, a shorter 10-period %R is more responsive to the faster-moving 1H momentum cycles. For Weekly chart strategies, a 7 or 8-period %R captures the full recent weekly range more effectively than 14. As with all oscillator parameters, backtest your specific pair and timeframe before committing to non-standard settings — see our backtesting guide.
- Can Williams %R be used as a take-profit signal for DCA strategies?
- Yes — Williams %R reaching the overbought zone (-20 or above) can serve as a take-profit trigger for DCA accumulation positions that were entered during oversold conditions. When the DCA accumulation cycle is complete and %R reaches -20, close the full DCA position at a profit. This is a more adaptive take-profit mechanism than a fixed percentage target because %R's overbought reading naturally adjusts to the current market momentum rather than using a static profit target. See our DCA guide and DCA setup guide. Get started at the pricing page.
Momentum oscillators: RSI, StochRSI, Williams %R (this guide). All strategies at the strategies page.