震盪指標 MomentumScalpingMean Reversion 在 Builder 中可用

Williams %R

Williams %R shows where the close sits inside the recent high–low range on an inverted −100 to 0 scale. It is the fastest of the common bounded oscillators, with no signal line and no smoothing, which makes it a scalping tool rather than a swing one.

Default period
14
Common levels
−20 / −80
Indicator range
−100 to 0
OverboughtOversoldCentreline 50Divergence

示意性 — 合成資料,非即時報價。

What Williams %R tells you

Williams %R is the raw version of the same question Stochastic asks: where in the recent range did this bar close? It applies no smoothing at all, so it reaches its extremes sooner and stays there for shorter — useful when you want speed, punishing when you want reliability.

  • Above −20: closes are clustering at the top of the range
  • Below −80: closes are clustering at the bottom
  • The scale is inverted — 0 is the strong end, −100 the weak one
  1. 1 Find the high–low range of the last N bars
  2. 2 Measure the close down from the high
  3. 3 Express it as −100 to 0
顯示公式與計算詳情

Williams %R measures the close against the top of the recent range:

  1. Over the last N bars, find the highest high and the lowest low.
  2. Measure how far the current close sits below that highest high.
  3. Express that distance as a percentage of the whole range, negated: %R = −100 × (Highest High − Close) / (Highest High − Lowest Low).

A close exactly at the highest high gives 0; a close at the lowest low gives −100. No smoothing is applied at any stage — the value published on buffer 0 is the raw ratio for the current bar, which is why %R can travel from one extreme to the other in a single bar and why it produces far more extreme readings than Stochastic on the same data.

The relationship to Stochastic is exact rather than approximate: %R = %K − 100 for the unsmoothed case. They are the same measurement on two scales, and the difference in behaviour comes entirely from the smoothing Stochastic applies and %R does not.

In MQL5 the call is iWPR(symbol, period, calc_period) and it returns a handle to a single buffer. There is no applied-price argument and no signal line. Larry Williams introduced %R in the 1970s.

訊號

Williams %R 提供的可回測訊號 — 及每個訊號適合的市場狀態。

Overbought / Oversold

Builder 可實現
條件
%R moves above −20 or below −80
最佳市場狀態
Ranging markets
典型用法
Fade the extreme on a short horizon

Leaving the Extreme

Builder 可實現
條件
%R crosses back out of the −80 or −20 zone
最佳市場狀態
Ranging markets
典型用法
Wait for the extreme to start unwinding instead of catching it

Centreline Cross

Builder 可實現
條件
%R crosses −50
最佳市場狀態
Trending markets
典型用法
Flip momentum bias without waiting for an extreme

Divergence

進階邏輯
條件
Price makes a new extreme, %R does not
最佳市場狀態
Trend exhaustion
典型用法
Anticipate a stall before price confirms

MT5 實作

MetaTrader 5 實際計算與繪製的內容——本頁每條規則的依據。

緩衝區

索引 緩衝區 MT5 中的繪製方式 存放內容
0 MAIN_LINE Line The %R value, from −100 (close at the bottom of the range) to 0 (close at the top). One buffer only — there is no signal line.

平台說明

最佳適用場景 / 謹慎使用

沒有任何指標具有普適優勢。以下是 Williams %R 發揮作用的場景 — 以及可能誤導的場景。

最佳適用場景

  • Ranging markets
  • Short-horizon entries
  • Tight-spread instruments and sessions
  • With a session or volatility filter

謹慎使用

  • Strong one-way trends
  • Wide-spread pairs
  • Extremes as standalone entries
  • Optimised levels without validation

構建 Williams %R 策略

將訊號接入進場和出場規則,然後匯出可編譯的 MT5 EA — 無需撰寫程式碼。

  1. Williams %R (14)
  2. %R below −80 → Open Buy · SL 15 / TP 20
  3. %R above −20 → Open Sell
  4. Break-even at +10 pips, locking 2

將 Williams %R 與其他指標組合

單一指標很少獨立有效。這些組合彌補了 Williams %R 的盲點。

Williams %R + Bollinger Bands

  1. %R below −80
  2. Price at lower band
  3. Buy
原因
Require price to be statistically stretched at the same moment the oscillator is extreme, which filters out the fastest false readings
最佳市場狀態
Ranging

No single-flow template pairs Williams %R with Bollinger Bands — the portfolio template that holds both runs them as separate legs. Start from Williams Scalper and add band nodes with a Price node into a Compare.

開啟 Builder →

Williams %R + ADX

  1. ADX < 20
  2. %R below −80
  3. Buy
原因
Suppress the fade while a trend is running, which is when %R pins at an extreme and stays there for a whole session
最佳市場狀態
Range filtering

No single-flow template pairs Williams %R with ADX. Start from Williams Scalper and add an ADX node with a Compare below 20.

開啟 Builder →

Williams %R + ATR

  1. %R below −80
  2. ATR sets the stop distance
  3. Buy
原因
Replace the fixed 15-pip stop with a volatility-sized one, since a scalping stop is the first thing a change of regime invalidates
最佳市場狀態
Any

No single-flow template pairs Williams %R with ATR. Add an ATR node feeding a risk-based lot or stop node.

開啟 Builder →

參數

在您自己的貨幣對和時間框架上驗證的起始值 — 非保證設置。

參數 預設值 建議測試範圍 功能說明
Period 14 5–30 How many bars the high–low range is measured over. Shorter makes %R touch its extremes almost every bar; longer makes an extreme mean something.
Overbought / Oversold −20 / −80 −10 to −30 / −70 to −90 Your levels, not indicator inputs — iWPR has no threshold argument. Remember the scale is inverted: −20 is the strong end.
Shift 0 0–3 Which bar back the value is read from. Shift 1 compares against a fully closed bar, which matters more here than on slower oscillators.

初始預設

Scalping 9 Very fast, needs tight spreads
Standard 14 Williams' default baseline
Swing 28 Fewer, more meaningful extremes

市場示例

Williams %R 有效的場景、失效的場景,以及篩選器如何改變結果。

有效

Fade inside a session range

In a quiet London range %R drops under −80, price stalls and the short move back plays out — the horizon the scalping template is built for.

失效

Pinned in a trend

In a directional session %R sits above −20 for most of the day. Selling every reading fights the move and pays the spread each time.

已篩選

Session filter earns its keep

The same extremes appear outside the London session on a wider spread and are all skipped — on a 20-pip target the spread decides whether the trade was ever viable.

FAQ

Is Williams %R the same as Stochastic?
Almost. Both measure where the close sits in the recent high–low range. %R reports it on an inverted −100 to 0 scale and applies no smoothing at all; Stochastic reports 0–100 and smooths twice, and publishes a signal line. In practice %R is the faster, noisier member of the pair, which is why it shows up in scalping strategies.
Why is the scale negative?
Larry Williams defined it as the distance from the highest high down to the close, expressed as a negative percentage of the range. A close at the very top gives 0 and a close at the very bottom gives −100. It carries no meaning beyond the convention, but it does mean a comparison copied from a Stochastic rule will be backwards.
What levels should I use?
−20 and −80 are conventional and map onto Stochastic's 80/20. They are your levels, not indicator inputs — iWPR takes only a period. On a short period %R touches both extremes constantly, so widening to −10/−90 or lengthening the period usually matters more than moving the levels a little.
Does Williams %R have an applied-price setting?
No. The calculation needs the highest high, the lowest low and the close together, so there is no single series to pick. MQL5's iWPR takes only a period.
Can I build a Williams %R EA without coding?
Yes for level rules and centreline crosses — one %R node plus a Compare, with the period as an EA input. The Williams Scalper template also shows the execution filters a short-horizon strategy needs. Divergence is the exception and requires custom MQL5.
How should I validate settings before going live?
Backtest on quality tick data first, then run the EA on a demo account before risking money. When optimising, hold back data the search never saw and prefer settings that stay profitable across periods over the single in-sample peak — chasing that peak is overfitting the noise. On short-horizon strategies also check that the spread and execution assumptions in the test resemble your broker's, because a 20-pip target has no room for optimism.

Glossary

關鍵術語