The Best ADR Indicator for MetaTrader 4

ADR Indicator for Forex

Are you looking for an ADR indicator for MT4? Today, I’m going to show you what is, in my opinion, the best average daily range indicator for MetaTrader 4.

There are many reasons to incorporate an average daily range indicator into your trading plan. For instance, if your trading system provides reversal setups, those reversals are more likely to work out after the average daily range has been hit. Similarly, it would not be wise to trade continuation patterns in the direction of price action that has already hit its ADR.

What’s the Best ADR Indicator for MT4?

I use the excellent ADR indicator from Day Trading Forex Live. It has been very useful to me, so I went looking for a similar ADR indicator to share with you guys. What I found is almost identical.

I had to edit the code slightly to get the results that I was looking for, but I think you guys will be pretty happy with it. The result is a simple, clean looking ADR indicator for MT4.

Note: I basically commented out some code related to labels which cluttered up the chart. I also commented out a couple of unnecessary features.

ADR Indicator MT4

As you can see from the chart above, this ADR indicator prints a text label in the upper-left hand corner showing the average daily range as well as the current day’s range. It also prints out an upper and lower ADR line which adjust with the day’s price action.

Note: The ADR is not the difference between the upper and lower levels that this indicator displays. The ADR is represented by measuring the difference between the lowest low of the day and the upper ADR level, or the highest high of the day and the lower ADR level – depending on which direction your measuring.


These levels adjust when new highs or lows are made, because the ADR stays the same (at least until the next day). In other words, in the image above, if price were to make a new high for the day, the lower ADR level would come up so that the measurement between the two would remain 114.9 pips.

When one of those lines are reached, the average daily range has been hit. You can select different colors, thicknesses, and styles for your regular line and your hit line. I use the same thickness and style, but my regular line is black, while my hit line is crimson (see the settings below).

The indicator also prints out a vertical line marking the start of the day. This is helpful for making sure that the indicator is in sync with your broker’s data. To check this, bring up your period separators (Ctrl+Y), and make sure the vertical lines are in sync.

Average Daily Range Indicator

This indicator should work with most brokers by default, but if it’s out of sync, you can adjust the TimeZoneOfData or TimeZoneOfSession variables to bring the indicator into sync with your broker.

Other settings include adjusting the ATRPeriod variable to increase or decrease the number of days that will be counted to get your average range. I suggest using a 15-day average. You can also change the line styles, thicknesses, and colors as I mentioned earlier.

Installation Instructions:

  1. Download and extract the custom ADR indicator.
  2. Move it to your “Indicators” folder (MetaTrader 4 > MQL4 > Indicators).
  3. Start or restart MT4.
  4. Open your “Navigator” window, if it’s not already open (Ctrl+N).
  5. Drag the ADR indicator onto your chart.
  6. Adjust your desired settings, if needed, and click the “Ok” button.

I use an average daily range indicator anytime I’m trading intra-day strategies. I hope you guys find this ADR indicator for MT4 as useful as it has been for me. If you found this indicator useful or you’d like to know what I changed in the code, leave a comment below.

Still looking for a profitable trading system? I've tested 10+ systems. Only 3 were profitable! Learn more about my #1 recommended trading system, Day Trading Forex Live.


  1. Lakshmish October 10, 2016
    • Chris October 10, 2016
  2. ch November 2, 2016
    • Chris November 2, 2016
  3. Damyan Diamandiev December 14, 2016
    • Chris December 14, 2016
      • Damyan Diamandiev December 14, 2016
        • Chris December 14, 2016
  4. Jeff January 10, 2017
    • Chris January 10, 2017
      • Jeff January 10, 2017
        • Chris January 10, 2017
  5. Sylvester January 27, 2017
    • Chris January 28, 2017
  6. Phenyo Modisane June 12, 2017
    • Chris June 13, 2017
  7. Andy November 22, 2017
    • Chris November 27, 2017
  8. zephyrL January 6, 2018
    • Chris January 16, 2018
  9. Daniel March 6, 2018
    • Chris March 8, 2018
  10. Mike J March 9, 2018
    • Chris March 10, 2018
    • reyner June 22, 2018
  11. Joel July 16, 2018
    • Chris July 17, 2018
  12. Rafnix October 29, 2018
    • Chris October 31, 2018
  13. JohnB October 31, 2018
    • Chris November 2, 2018
  14. George Coucourakis March 9, 2019
    • Chris March 19, 2019
  15. William Zysk March 24, 2019
    • Chris March 28, 2019
  16. Twana September 3, 2019
    • Chris September 6, 2019
  17. Mazn September 3, 2019
    • Chris September 6, 2019
  18. Randy November 6, 2019
    • Chris January 3, 2020
  19. Allan March 17, 2020
    • Chris April 2, 2020
  20. Peter July 12, 2020
    • Chris August 9, 2020

Add Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.