Alan Ross

Alan Ross Forex

Free Forex Indicators, MetaTrader Tools and Honest Trading Guides

Manual Strategies

Williams %R Tested on EURUSD M5: 41 of 45 Fade Settings Made Money Before the Spread, 44 Lost After It

Key takeaways

  • I tested Williams %R on 16,926 EURUSD 5-minute bars: five periods (7 to 28), three pairs of levels, three entry rules and three exits — 135 setups, 1 pip of cost on every trade, each result split into two halves.
  • The classic fade has a real edge, and it is smaller than the spread. Selling when %R touches -20 and buying when it touches -80 was positive before costs in 41 of 45 setups. After 1 pip of cost, 44 of the 45 lost.
  • The default %R 14 won 68.7% of trades and still lost 0.27 pips per trade. Average win 3.75 pips, average loss 9.12. It made 0.73 pips per trade before costs.
  • Reading -20 as strength and buying it — the momentum use of %R — lost in all 45 setups, -1.73 pips per trade with the default 14.
  • %R spent 48% of all bars in a zone and 26.4% pinned at exactly 0 or -100. “Overbought” is where the indicator lives half the time, not a rare event.

Williams %R is one of the oldest oscillators on MetaTrader, and most guides explain it the same way: above -20 is overbought, below -80 is oversold, trade the turn. What they almost never show is what happens when you actually trade it with a spread. So I did, on the same 16,926 EURUSD 5-minute bars I have used for Stochastic, RSI and Bollinger Bands.

The short answer: %R does see something. It just sees about 0.7 pips of it, and a normal EURUSD account pays 1 pip to find out.

What does Williams %R actually measure?

Monitor with a EURUSD chart and a Williams %R window below the price

%R answers one question: where did this bar close inside the range of the last N bars? A close at the very top of the range reads 0. A close at the very bottom reads -100. With the default period 14 on a 5-minute chart, the range is the last 70 minutes.

The formula is %R = -100 × (highest high − close) ÷ (highest high − lowest low). If that looks familiar, it should: it is the raw Stochastic %K minus 100. I checked it bar by bar on all 16,913 bars where both could be calculated, and the two never differed by more than 0.000000000001. The comparison with Stochastic and RSI is in my Williams %R vs Stochastic vs RSI test.

How was %R tested?

Trader checking an overbought reading on a 5-minute currency chart
  • Data: 16,926 EURUSD M5 bars, June 3 to August 26, 2026, split at July 15 into two halves.
  • Periods: 7, 10, 14 (default), 21, 28.
  • Levels: -20/-80 (default), -10/-90, -5/-95.
  • Entry “touch”: sell when %R crosses up into the top zone, buy when it crosses down into the bottom zone. The textbook fade.
  • Entry “exit”: the patient fade — wait until %R leaves the zone again, then trade the turn.
  • Entry “break”: the momentum reading — buy when %R enters the top zone, sell when it enters the bottom one.
  • Exits: after 1 hour, after 2 hours, or when %R reaches the opposite zone (capped at 24 hours).
  • Cost: 1 pip per trade, the same as my spread and swap test. One trade at a time.

Does the overbought/oversold fade work?

Before costs, mostly yes. After costs, no. Here is every entry rule, summed over its 45 setups:

Entry rule, 45 setups eachPositive before costPositive after 1-pip costMedian gross per tradeMedian net per trade
Touch the zone, fade it411+0.58-0.42
Leave the zone, fade it280+0.10-0.90
Enter the zone, follow it (momentum)40-0.58-1.58

Pips per trade, EURUSD M5. Every setup had at least 300 trades.

Three things stand out. The fade on first touch is the version with an edge. Waiting for %R to leave the zone — the “confirmation” many guides recommend — gave most of that edge away, because by the time %R turns back, price has already moved. And the momentum rule was negative even before costs in 41 of 45 setups.

What did the default %R 14 do?

%R 14, levels -20/-80TradesWin rateGrossNet1st half2nd half
Touch, exit at opposite zone70768.7%+0.73-0.27-0.36-0.19
Touch, exit after 1 hour95148.3%+0.32-0.68-0.53-0.82
Leave zone, exit at opposite zone95965.8%+0.22-0.78-0.90-0.67
Momentum, exit at opposite zone70726.2%-0.73-1.73-1.64-1.81

The first row is the one worth staring at. More than two trades in three were winners, the result was on the same side in both halves, and it still lost money. The reason is in the shape of the trades: the average winner was 3.75 pips, the average loser 9.12. The fade collects small reversals most of the time and gives them back when the move keeps going and %R never reaches the other zone.

That is the same trap as in my Bollinger Bands fade on M5: a high win rate built on small wins. A win rate tells you how often; only the average trade tells you whether you get paid.

Did any %R setting make money after costs?

One out of 135. %R 21 with levels at -5/-95, fading the touch and exiting at the opposite zone: 415 trades, 66.7% winners, +0.14 pips per trade. It made +0.83 in the first half and lost 0.48 in the second, so it is noise, not a setting to trade.

The more useful pattern is how the fade changed as the levels moved further out:

Touch fade, exit at opposite zone-20/-80-10/-90-5/-95
Period 7-0.42-0.29-0.31
Period 10-0.39-0.37-0.34
Period 14-0.27-0.19-0.01
Period 21-0.23-0.24+0.14
Period 28-0.31-0.17-0.41

Net pips per trade after 1 pip.

Longer periods and more extreme levels mostly helped, and period 14 at -5/-95 finished at break-even over 599 trades, -0.09 and +0.06 by half. If you trade on an account with a spread well under a pip, that is the setting to forward test. The differences between settings are small, though — the same thing my optimized vs default settings test found for other indicators.

How long does %R stay overbought?

Much longer than the textbook picture suggests. With period 14 on EURUSD M5:

  • %R was above -20 on 21.9% of bars and below -80 on 26.1%. Together, almost half the time.
  • It sat at exactly 0 on 13.2% of bars and at exactly -100 on another 13.2% — every time a bar closed on a fresh 70-minute high or low.
  • Most visits were short, a median of 2 bars. But 3.3% lasted more than an hour, and the longest ran 31 bars, over 2.5 hours.
  • After a bar above -20, price fell over the next hour 57.5% of the time — yet the average move was +0.12 pips, up. Many small drops, fewer larger rises. The win rate and the average pointed in different directions.

That last line is the whole article in one number. %R is good at telling you that a small pullback is likely, and bad at warning you about the moves that pay for everything else.

So how would I use Williams %R?

  • Not as a stand-alone scalping signal on EURUSD M5. The edge before costs, 0.5 to 1 pip, is too small for a normal spread.
  • Fade the first touch, not the exit from the zone. Waiting for confirmation cost about half a pip per trade.
  • Exit when %R reaches the other zone, not on a timer. The same entries lost 0.68 pips with a one-hour exit against 0.27 with the zone exit.
  • Move to a higher chart. On H1, the same default %R 14 made money in both halves — the settings and timeframes are in my Williams %R settings for MT4 guide.
  • Add a trend filter if you use it on M5. On Stochastic, a 200-period average turned the average trade positive in my overbought test, and %R is the same raw line.

Frequently asked questions

Does Williams %R work for forex?

It has a small edge on EURUSD 5-minute bars that the spread removes. Fading a touch of -20 or -80 was positive before costs in 41 of 45 settings, but after a 1-pip cost 44 of the 45 lost. The default %R 14 won 68.7% of trades and lost 0.27 pips per trade.

What are the best Williams %R settings?

On EURUSD M5, period 14 with levels at -5 and -95 came closest to break-even: -0.01 pips per trade over 599 trades after costs. The standard -20/-80 lost 0.27. No setting was profitable in both halves of the data.

Is Williams %R overbought a sell signal?

Only a weak one. After %R 14 was above -20, EURUSD fell over the next hour 57.5% of the time, but the average move was slightly up, +0.12 pips, because the rises were larger than the drops.

Is Williams %R the same as Stochastic?

Yes, mathematically. %R equals the fast Stochastic %K minus 100. On 16,913 EURUSD bars the two never differed beyond rounding.

Should I buy when Williams %R goes above -20?

Not on EURUSD M5. Treating -20 as strength and buying it lost in all 45 settings I tested, -1.73 pips per trade with the default period 14.

Want a clean indicator to install right now?

It is my own enhanced DeMARK Trend Line indicator for MetaTrader 4 and 5. Non repaint, clean, and free.

Download the Free DeMARK Indicator

Written by Alan Ross

Forex trader and MetaTrader indicator developer. I build and test MT4 and MT5 tools, then write the honest version of how they actually work. More about me.

Last reviewed September 2026
Alan Ross
Alan Ross

Forex educator and indicator developer. I build and trade my own MetaTrader tools, and share the ones that genuinely help.

Leave a comment

Your email address will not be published. Comments are reviewed before they appear.