Average Daily Range ADR Indicator: Day Open and ADR Bands

Written by Dominic Walsh · Published · Last updated

The average daily range adr indicator puts the session’s usual distance on the chart. It shows the current day open as a dotted silver line. Two purple lines then sit one average daily range above and below that open. Intraday traders use them as plain targets and stretch markers.

This build ships as average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex4 for MT4 and average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex5 for MT5; the screenshots below come from XAUUSD H1.

Platforms MT4 (.ex4) + MT5 (.ex5)
Chart window Main price chart
Plots 3: Day open, ADR upper, ADR lower
Alerts popup, push notification, email, sound
Inputs 7

What the Average Daily Range Adr Indicator draws on the chart

Day open shows as the dotted silver line. It holds the opening price of whichever session each bar belongs to, so it steps at every new day. ADR upper runs one average range above that open, and ADR lower runs the same distance below. Both purple lines draw at two pixels wide.

All three lines sit over the candles. Together they form a channel that resets each session. Inside the channel price still has room by the average measure. Outside it the day has already gone further than the recent norm.

The lines run flat across a session. They only jump at the day boundary. A fresh open then takes over and the whole band recentres around it.

  • Day open: line, silver, width 1
  • ADR upper: line, medium purple, width 2
  • ADR lower: line, medium purple, width 2
XAUUSD H1 chart with the average daily range adr indicator Day open, ADR upper and ADR lower lines.
XAUUSD H1 chart with the average daily range adr indicator Day open, ADR upper and ADR lower lines.

How the Average Daily Range Adr Indicator calculates its values

Measuring past sessions

The scan works from chart bars, not from daily candles. It groups bars by calendar day and tracks the high and low of each one. Bars from today drop out of the sample. It keeps going until it has AdrDays complete sessions. Then it averages those ranges into one number.

Finding the session open

Each bar needs its own opening price. The code walks back through nearby bars until the calendar day changes. The open of that first bar becomes the reference. Every bar in the same session shares it. So the silver line stays flat until the next rollover.

Placing the bands

Two sums finish the picture. ADR upper takes the session open plus the average range. ADR lower takes the same open minus that number. Both lines then hold their value for the rest of the day. So they make easy targets to work with.

How to read the signals

Start with where price sits inside the band. Near the middle, the session still has room both ways. Near ADR upper, buyers have already used the usual daily distance. That is a place to bank rather than to chase.

The edges work as soft targets. Many intraday traders take partial exits there and trail the rest. A close beyond ADR upper marks an expansion day, so the average no longer fits it. Quiet range days often stall well inside both lines.

Alert channels in this build: popup, push notification, email and sound.

EnableAlerts sits at the top of the alert block, with EnablePopup, EnablePushNotify, EnableEmail and EnableSound covering popup, mobile push, email and sound.

Every Average Daily Range Adr Indicator input

Core settings

Setting What it does Default
AdrDays AdrDays (default 14) sets how many completed sessions feed the average. A smaller count reacts faster to a change in volatility. A larger one steadies the band. 14

Alert settings

Setting What it does Default
EnableAlerts (see inputs panel) on
EnablePopup (see inputs panel) on
EnablePushNotify (see inputs panel) off
EnableEmail (see inputs panel) off
EnableSound (see inputs panel) off
SoundFile (see inputs panel) alert.wav
Average daily range adr indicator inputs: AdrDays 14 plus popup, push, email and sound toggles.
Average daily range adr indicator inputs: AdrDays 14 plus popup, push, email and sound toggles.

Settings that fit your chart

The screenshot chart uses XAUUSD on H1, where the swings show up clearly. Gold moves a long way most days, so the band gets tested often. Majors and index CFDs act the same way, with tighter bands. Any intraday timeframe suits it, because the maths only needs the day boundary. On daily charts the lines lose their point.

When the Average Daily Range Adr Indicator fails

The day boundary follows your broker’s server clock. One feed rolls at midnight in New York, another rolls at midnight in London. The whole band shifts with that choice. Check where the silver line steps before you trust it.

Averages hide their own spread. Fourteen quiet sessions plus one huge one give the same mean as fourteen normal ones. The band then looks fine on a day that acts nothing like the sample behind it.

A short chart history starves the scan. The code needs enough loaded bars to find AdrDays complete sessions. On a fresh terminal or a thin symbol it averages fewer days. The band then comes out too narrow.

The alert toggles do nothing in this build. No condition ever calls the alert routine. So the band stays quiet when price reaches an edge.

Copy average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex4 into MQL4/Indicators and average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex5 into MQL5/Indicators, then restart the terminal and drag the Average Daily Range Adr Indicator onto a chart. The step-by-step guide with screenshots is at how to install MT4 and MT5 indicators.

Moving Average Crossover Strategy

Background reading on the method behind the Average Daily Range Adr Indicator: Average True Range Percent Atrp at StockCharts ChartSchool, Daily Stocks on Wikipedia.

Download the Average Daily Range Adr Indicator for MT4 and MT5

The zip average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.zip holds average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex4, average-daily-range-adr-indicator-mt5-indicator-forexmt4systems.ex5 and a short README, compiled files only. 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.

  • 1,380+ indicators
  • MT4 and MT5 files
  • No spam, unsubscribe any time

FAQ

Why does the Day open line step at the same hour each day?

It tracks the calendar day of every bar. When that day changes, the code takes the open of the first bar in the new session and holds it. The step lands on your broker’s server rollover. That hour can sit well away from your local midnight.

Does AdrDays include the current session in its average?

The current session stays out. The scan skips every bar that shares today’s calendar day. It then collects complete sessions until it reaches the AdrDays count. So today’s own range never feeds the reference, and the band holds still from the first bar.

What does a close beyond ADR upper tell me on XAUUSD H1?

It says gold has already covered more than its recent daily average. Expansion days do run further, so the line works as a warning and not a ceiling. Most traders tighten stops or take partial exits there. Look for news that explains the extra range.

Can I load the average daily range adr indicator on a daily chart?

You can, but the bands lose their meaning. Each daily candle becomes one bar inside its own session, so the open it uses equals that bar’s open. The channel then wraps a single candle at a time. Keep it on intraday charts, from M5 up to H1.

Are results guaranteed?

No. Trading involves risk. Results are not guaranteed; past performance is not indicative of future results. Use the Average Daily Range Adr Indicator as one input. Always backtest before trading live.

Category: this is part of our Volatility collection. Also, still, browse more Volatility for MetaTrader, or explore every MT4 indicator and MT5 indicator on the site.

External references

Dominic Walsh - Forex trader and MT4/MT5 developer

About the author

Written by Dominic Walsh, a Forex trader and MT4/MT5 indicator, Expert Advisor and script developer. Every tool on forexmt4systems.com is tested on live charts before release and ships with ready-to-use compiled MT4 (.ex4) and MT5 (.ex5) files. Learn more about the trader and developer behind this site.

How we build, test and correct every tool: Editorial & Testing Policy. Trading carries risk; see the disclaimer.

Leave a Comment