Williams %R

Technical analysis oscillator


title: "Williams %R" type: doc version: 1 created: 2026-02-28 author: "Wikipedia contributors" status: active scope: public tags: ["technical-indicators"] description: "Technical analysis oscillator" topic_path: "general/technical-indicators" source: "https://en.wikipedia.org/wiki/Williams_%R" license: "CC BY-SA 4.0" wikipedia_page_id: 0 wikipedia_revision_id: 0

::summary Technical analysis oscillator ::

Williams %R, or just %R, is a technical analysis oscillator showing the current closing price in relation to the high and low of the past N days (for a given N). It was developed by a publisher and promoter of trading materials, Larry Williams. Its purpose is to tell whether a stock or commodity market is trading near the high or the low, or somewhere in between, of its recent trading range.

The Williams %R (Percent Range), created by Larry Williams, is a momentum oscillator. It represents the price level in relation to the highest point in the previous period. The default period is generally set to 14. By doing this, you can monitor overbought and oversold conditions. Since the Williams %R fluctuates between 0 and -100, this would mean that readings between 0 and -20 are overbought, while readings between -80 and -100 are oversold. This means that the Williams %R is a bound indicator.

: %\text{R} = { \text{high}{N\text{days}} - \text{close}{\text{today}} \over \text{high}{N\text{days}} - \text{low}{N\text{days}} } \times -100

The oscillator is on a negative scale, from −100 (lowest) up to 0 (highest), obverse of the more common 0 to 100 scale found in many technical analysis oscillators. A value of −100 means the close today was the lowest low of the past N days, and 0 means today's close was the highest high of the past N days. (Although sometimes the %R is adjusted by adding 100.)

Note

The original formula from his book multiplies the % with 100 instead of −100. It is possible that another book/magazine printed it incorrectly and this mistake spread out. Many softwares have already implemented it as −100. : %\text{R} = { \text{high}{N\text{days}} - \text{close}{\text{today}} \over \text{high}{N\text{days}} - \text{low}{N\text{days}} } \times 100

Buy-/sell-signalling

Williams used a 10 trading day period and considered values below −80 as oversold and above −20 as overbought. But they were not to be traded directly, instead his rule to buy an oversold was

  • %R reaches −100%.
  • Five trading days pass since −100% was last reached
  • %R rises above −95% or −85%.

or conversely to sell an overbought condition

  • %R reaches 0%.
  • Five trading days pass since 0% was last reached
  • %R drops below −5% or −15%.

The timeframe can be changed for either more sensitive or smoother results, the more sensitive you make it, though, the more false signals you will get.

Notes

Due to the equivalence

: { (close_{today} - low_{Ndays}) - (close_{today} - high_{Ndays}) = high_{Ndays} - low_{Ndays} }

the %R indicator is arithmetically exactly equivalent to the %K stochastic oscillator, mirrored at the 0%-line, when using the same time interval.

References

Book reference:

References

  1. "Williams %R [ChartSchool]".
  2. "Original Williams %R | Williams Percent R Indicator (%R)".

::callout[type=info title="Wikipedia Source"] This article was imported from Wikipedia and is available under the Creative Commons Attribution-ShareAlike 4.0 License. Content has been adapted to SurfDoc format. Original contributors can be found on the article history page. ::

technical-indicators