Williams %R

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.


 * $$\%R = { high_{Ndays} - close_{today} \over high_{Ndays} - low_{Ndays} } \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.
 * $$\%R = { high_{Ndays} - close_{today} \over high_{Ndays} - low_{Ndays} } \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.