The asian range indicator keeps two gold lines and waits for the first close past either. Once an edge breaks, that side is done for the day. You get at most one buy mark and one sell mark, which keeps a busy London open from filling the chart with arrows.
This build ships as a compiled .ex4 for MT4 and .ex5 for MT5; the screenshots below come from USDJPY M30.
| Platforms | MT4 (.ex4) + MT5 (.ex5) |
|---|---|
| Chart window | Main price chart |
| Plots | 4: Asian High, Asian Low, Buy, Sell |
| Alerts | popup, push notification, email, sound |
| Inputs | 10 |
What draws where
Two gold lines and two marks.
`Asian High` and `Asian Low` both run gold at width 2.
`Buy` uses arrow 233 in lime at width 4.
`Sell` uses arrow 234 in red.
Marks sit `ArrowOffsetPoints` `35` points clear.
No box or rectangle gets drawn.
- Asian High: line, gold, width 2
- Asian Low: line, gold, width 2
- Buy: arrow, lime, width 4, arrow code 233
- Sell: arrow, red, width 4, arrow code 234

The mechanism
Building the pair
Hours decide the window. `SessionStartHour` `0` and `SessionEndHour` `8` bracket it. Every bar inside pushes the running high up or the running low down.
First close wins
Each side fires once. A close above the high marks a buy and shuts that side off. The low side behaves the same, and both reset when a new session begins.
How far back it looks
History has a limit. `MaxBars` `3000` caps the scan. Past that the lines simply stop, which keeps a long chart from rebuilding every session it holds.
How to judge the output
Two flat lines mean the session still runs.
A mark says one edge gave way on a close.
A second mark on the other side means both went.
Wide lines describe an unusually busy night.
The pair steps to fresh values each session.
Nothing prints once both sides have fired.
Alert channels in this build: popup, push notification, email and sound, one message per closed bar.
`EnableAlerts` governs the break alerts and arrives true with `EnablePopup`. Set `EnablePushNotify` for a phone, `EnableEmail` for mail, or `EnableSound` to sound `SoundFile`. Those three start off.
Every Asian Range Indicator input
Core settings
| Setting | What it does | Default |
|---|---|---|
SessionStartHour |
Hour the window opens, `0`. | 0 |
SessionEndHour |
Hour it shuts, `8`. | 8 |
Display settings
| Setting | What it does | Default |
|---|---|---|
ArrowOffsetPoints |
Points between mark and candle, `35`. | 35 |
Alert settings
| Setting | What it does | Default |
|---|---|---|
MaxBars |
History the scan covers, `3000`. | 3000 |
EnableAlerts |
Master switch, `true`. | on |
EnablePopup |
Box in the terminal, `true`. | on |
EnablePushNotify |
Buzz on a phone, `false`. | off |
EnableEmail |
Mail on a break, `false`. | off |
EnableSound |
Cue on a break, `false`. | off |
SoundFile |
Which clip plays, `”alert.wav”`. | alert.wav |

Where the defaults make sense
USDJPY M30 is the reference chart, and the choice is deliberate. The yen pairs actually move during those hours. Sixteen bars build the range there. On H1 you get eight. On H4 the whole window is two bars.
What to be wary of
One break per side can skip the better second push.
Hours come from the broker clock, not GMT.
A trending night gives a range that is already stretched.
The first close past an edge is often the false one.
Copy the compiled Asian Range Indicator file into your MQL4/Indicators folder, and the MT5 build into MQL5/Indicators, then restart the terminal and drag it onto a chart. The step-by-step guide with screenshots is at how to install MT4 and MT5 indicators.
Related on forexmt4systems.com: Range Trading Strategy.
Background reading on the method behind the Asian Range Indicator: Breakout at Investopedia, Support and Resistance at StockCharts ChartSchool.
Download the Asian Range Indicator for MT4 and MT5
The zip holds the compiled Asian Range Indicator build for MT4 and MT5, plus a short README. Compiled files only, no source. Enter your email below and the download link arrives in your inbox.
Download this indicator free
Enter your email and the file is yours. You also get the full MT4 and MT5 library.
FAQ
Why does each side of the range fire only once?
Because a range that has already broken is no longer a range. Once a close clears the high, that side switches off for the session, so a choppy London open cannot print the same signal five times.
What do SessionStartHour and SessionEndHour cover?
Midnight to eight on the broker clock, which spans the Tokyo hours on most servers. They do not follow GMT, so checking your own server offset once is worth the minute it takes.
Does MaxBars 3000 change any signal?
No, only how much history it rebuilds. Three thousand bars is around two months of M30 data, and past that the lines simply stop rather than climbing further back.
Why is USDJPY M30 the reference chart?
Because the yen pairs are the ones that actually trade during those hours. On a European pair the same window is often a flat drift, and the range it produces is too tight to break usefully.
Are results guaranteed?
No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Asian Range Indicator as one input. Always backtest before trading live.
Category: this is part of our Signal and Forecast collection. Also, truly, browse more Signal and Forecast for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.
External references
- For background on this concept, see Range expansion index on Wikipedia.
- For broader market context, see Average True Range ATR at StockCharts ChartSchool.
