Browse the library

Indicators · Momentum oscillators

Williams %R: formula, −20/−80 levels and real signals

How Larry Williams’ %R measures the close against the recent high, a worked calculation on Walmart, how its −20 and −80 signals fared over a year, and Finabase’s scoring.

On this page
  1. What %R measures
  2. The formula
  3. Reading %R
  4. How traders use %R
  5. Pitfalls and limitations
  6. Comparison table
  7. How Finabase calculates and scores %R
  8. Frequently asked questions
  9. Summary

Williams %R measures how far today's close is below the highest high of the recent past, as a percentage of the recent range. A close right at the top of the range reads 0; a close right at the bottom reads −100. Larry Williams introduced it in the 1970s, and it remains popular with short-term traders because it is quick, simple and bounded.

If that sounds like the stochastic oscillator, it is: %R is the fast stochastic's %K, flipped upside down and shifted to a negative scale. The two carry the same information. What makes %R worth its own page is how traders read it, especially Williams' own advice to treat "overbought" as a sign of strength. This guide calculates %R on real Walmart prices, follows a year of its signals, and covers how Finabase scores it.

What %R measures

Take the last 14 sessions. Find the highest high and the lowest low. %R asks how far the close is from the top of that range:

  • Close at the high: 0% below the top, so %R = 0.
  • Close halfway: %R = −50.
  • Close at the low: 100% of the range below the top, so %R = −100.

The negative scale is a quirk of Williams' original presentation, which measured distance down from the high. Some platforms plot it inverted, from 0 at the bottom to −100 at the top. Finabase plots it the conventional way, with 0 at the top.

The formula

A worked example on Walmart

On October 29, 2026, Walmart (WMT) closed at $121.25. Over the 14 sessions ending that day:

Step Value
Highest high $122.40 (Oct 23, 2026)
Lowest low $111.31 (Oct 12, 2026)
Range $11.09
Distance of close below high $1.15
%R = −100 × 1.15 ÷ 11.09 −10.37

Finabase shows −10.37: Walmart closed about 10% of the way down from the top of its two-week range, in overbought territory.

Two extremes from the same year:

  • December 4, 2025: close $114.84, highest high $114.89 the day before, so %R = −0.31. The close was 5 cents below the range top.
  • September 30, 2026: close $103.92, which was itself the 14-day low, so %R = −100.

Reading %R

Walmart (WMT) daily with Williams %R (14) · 2025-10-30 to 2026-10-29 $100 $120 High $135.16 · May 19 Price -80 -50 -20 −100 · Sep 30 Williams %R (14) Nov Dec Jan 2026 Feb Mar Apr May Jun Jul Aug Sep Oct
Walmart (WMT), one year of daily bars with Williams %R (14) as computed by Finabase. Shading marks the overbought (above −20) and oversold (below −80) zones.

Overbought and oversold

Above −20, closes are near the top of the recent range; below −80, near the bottom. Walmart's year had both kinds of market. It rose from $102.23 to a high of $135.16 on May 19, 2026, then fell to about $104 by early October before recovering to $121.25. %R was above −20 on 68 sessions and below −80 on 39.

Williams' own reading: strength, not reversal

Williams pointed out that strong markets close near their highs again and again, so a reading above −20 often means strength. His preferred sell setup waited for %R to reach overbought, then fall back below −20, and he advised confirming with price. The same logic in reverse applies to oversold.

Walmart illustrates it. From November 25 to December 9, 2025, %R stayed above −20 for 10 straight sessions while the stock rose from $107.00 to $115.06, about 7.5%. Selling on the first overbought reading would have missed all of it.

What the crossovers did on Walmart

Treating the zone exits as signals and measuring the next 10 sessions:

Signal Count Higher 10 sessions later Notes
%R crosses back above −80 12 8 Best: Oct 5, 2026, +13.0%
%R crosses back below −20 21 10 of 20 measurable Worst for a seller: Nov 18, 2025, then +12.8%

The oversold exits did better than chance on this chart, mostly because Walmart spent much of the year rising. The overbought exits, which should precede declines, were followed by a higher price exactly as often as by a lower one, 10 times each. Two of them worked very well: the crosses on May 15 and May 20, 2026, right after the year's high, were followed by drops of 12.8% and 10.0%.

How traders use %R

Short-term timing. %R's quickness makes it a timing tool for swing trades: buy a pullback when %R leaves the oversold zone in an uptrend; sell or tighten stops when it leaves the overbought zone in a downtrend.

Momentum failure. Williams also looked for %R to fail to reach overbought on a rally after a long time in the overbought zone, a sign that buying pressure was fading.

Combined with a trend tool. As with every bounded oscillator, the signals are much better when filtered by a trend measure such as a 50-day moving average or the ADX.

Pitfalls and limitations

Pinned in trends. A strong trend can hold %R at one extreme for weeks.

Noise. With no smoothing at all, %R jumps with every close. A 14-bar look-back is wider than the fast stochastic's default 5 bars, which helps, but the line is still jagged.

Same as the fast stochastic. Adding %R and a fast stochastic of the same length to one chart adds nothing. They are the same line on different scales.

Comparison table

Indicator Formula basis Scale Overbought / oversold
Williams %R Close vs range, from the top 0 to −100 −20 / −80
Fast Stochastic Close vs range, from the bottom 0 to 100 80 / 20
Slow Stochastic Fast %K smoothed 0 to 100 80 / 20
RSI Average gains vs losses 0 to 100 70 / 30

See Stochastic oscillator (slow %K and %D): how to read it and Relative Strength Index (RSI): how to read and use it for the smoother alternatives.

How Finabase calculates and scores %R

Finabase computes Williams %R with TA-Lib's WILLR function on each bar's high, low and close. A new WILLR study ("Williams %R") defaults to 14 periods and is drawn in its own panel with guide lines at −80, −50, −20 and 0.

In the technical gauge on the symbol page and in the Scanner, %R above −20 is flagged Overbought and counted on the bearish side, below −80 Oversold and counted on the bullish side, and anything between is neutral. The Scanner lists the stocks whose %R entered either zone, with the date. As Walmart's year shows, an Overbought flag during a rally is often a description of strength.

Frequently asked questions

Why is Williams %R negative?

Because it measures how far the close is below the recent high, as a percentage of the range. Williams presented it on a negative scale; the information is the same as the fast stochastic's 0-to-100 scale.

What is a good Williams %R setting?

Fourteen periods is the standard and Finabase's default; 10 is also common. Shorter look-backs react faster and reach the extremes more often.

Is %R overbought a sell signal?

Not on its own. Williams treated overbought readings in a strong market as strength and waited for %R to fall back out of the zone, with price confirmation, before selling.

Summary

Williams %R places the close within its recent high–low range on a 0 to −100 scale, and is the fast stochastic in different clothing. Walmart's 2026 chart showed it pinned in the overbought zone during rallies, useful when it rose back out of oversold, and unreliable as a stand-alone sell signal. Read the zone exits rather than the entries, and filter them with the trend.

Sources and further reading

  1. Larry Williams, How I Made One Million Dollars Last Year Trading Commodities (Windsor Books, 1973) — the %R indicator
  2. TA-Lib — WILLR function reference
  3. Finabase chart data — WMT daily bars, 2025-10-30 to 2026-10-29, Williams %R computed by Finabase