Moving Average Daily

Moving Average Daily

At this stage ProRealtime doesn’t have multi timeframe capabilities. However one easy possibility is to use the moving average of the daily timeframe with the options of DOpen, DHigh, DLow, DClose and that’s what this indicator enables you to do. You can select the number of periods ie. Days: number of periods/days (please note there’s a limit depending on the timeframe you use this on and there’s a difference between PRT and IG data periods) open/high/low/close, etc… If you are going to use this in a live trading account you will need to set: DEFPARAM Preloadbars = Here is the table of how much Preloadbars you will need depending how many periods you want to look back.  The column max days shows the maximum of what you can set Preload to.

As an example of you are using a 10 minute timeframe the maximum DEFPARAM Preloadbars = 5000 // maximum is 5000 and this is equal to the moving average of 35 days.

DEFPARAM Preloadbars =
60 24 5000
Minutes bars per hour bars per day max days
1 60 1440 3
5 12 288 17
10 6 144 35
15 4 96 52
30 2 48 104
60 1 24 208

You should find this indicator useful if you are trading mean reversion system and want to make an entry a timeframe less than the daily while using the daily moving average as the mean.

REMINDER: if you want the indicator to appear in the Price section of the chart, you must add it by clicking on the spanner icon on the little Price tab in the Price window.

Share this

Risk disclosure:

No information on this site is investment advice or a solicitation to buy or sell any financial instrument. Past performance is not indicative of future results. Trading may expose you to risk of loss greater than your deposits and is only suitable for experienced investors who have sufficient financial means to bear such risk.

ProRealTime ITF files and other attachments : How to import ITF files into ProRealTime platform?

New! PRC is also now on YouTube, subscribe to our channel for exclusive content and tutorials

  1. Nicolas • 12/20/2016 #

    Thanks a lot, a lot of people will find it useful!
    About customclose of the daily OHLC, you could have compute them this way: (totalprice for instance)
    LMA = ((DOpen(i)+DHigh(i)+DLow(i)+DClose(i))/4) + LMA

  2. David • 12/20/2016 #

    Unfortunately the PRT is unreliable. 
    I made a simple 7 day moving average crosses over 30 day moving average but Pro Realtime opens position even though there’s no cross over.
    I tried to provide a screenshot but I keeping getting a HTTP error.

    • Nicolas • 12/20/2016 #

      Did you change trading hours or weekends data of the tested instruments? Calculate the daily moving average like the author do it in this code means a lot of preloaded bars, did you adapt this parameter correctly? 

    • David • 12/20/2016 #

      Nicolas, I wrote the code and I have DEFPARAM Preloadbars = 3000 on m60 so that’s plenty of preloadbars.
      As far as I know I didn’t change the weekend data of FX. But the drawn moving average lines do not cross many times but the position open and they should not open. So no one else is having this issue?
      I am running the Demo of 10.3 via IG so maybe that’s having an issue?

    • Nicolas • 12/20/2016 #

      How do you call this indicator in you trading strategy code? Did you make a CALL? Have you tried to GRAPH the returned variables of the indicators while backtesting?

    • David • 12/20/2016 #

      I’m using the call function. I checked again and it seems okay now on Demo and Live testing. Luckily I took a screen shot otherwise I wouldn’t believe that there was an entry issue as per my initial comment. 

  3. David • 12/20/2016 #

    Nicolas I’ve looked at it again and there’s a problem. 
    As an example here’s a simple cross over system and you can see the entry and exit is not at the cross over. It’s even worse if you use <> for the daily moving averages for the BUY. I made 2 instances of the indicator and Call the indicators Moving Average Daily with DHigh and DLow. I’m still having HTTP error when trying to upload a screen shot. Here’s a screenshot 
    I look forward to hearing what results you have Nicolas. 
    // Definition of code parameters
    DEFPARAM CumulateOrders = False // Cumulating positions deactivated

    // Conditions to enter long positions
    indicator1 = CALL \"Moving Average Daily HIGH\"[14]
    indicator2 = CALL \"Moving Average Daily LOW\"[50]
    c1 = (indicator1 CROSSES OVER indicator2)

    IF c1 THEN

    // Conditions to exit long positions
    indicator3 = CALL \"Moving Average Daily HIGH\"[14]
    indicator4 = CALL \"Moving Average Daily LOW\"[50]
    c2 = (indicator3 CROSSES UNDER indicator4)

    IF c2 THEN


    • Nicolas • 12/20/2016 #

      You’ll need to preload bars to get the good calculations of you indicators. I did not test it myself though. 

  4. David • 12/20/2016 #

    Nicolas I tried DEFPARAM Preloadbars = 5000
    And still the same drawn output of entries/exits not at the drawn Cross Over  around 2 days earlier than the drawn Cross Over /Cross Under. 

Register or


avatar avatar avatar avatar avatar
Related users ' posts
Leo Hi Nicolas, is it not the definition in line 44 like this: Opentf= (opentf+haclose)/2 ...
Nicolas No, because opentf is only used to calculate the haclose at line 53 and we need the real pri...
fabioerliam Hi Nicolas! thanks for this indicator! I don't understand why to indicate the daily timefr...
Leo ..for some reason I can not add PRT code properly... anyway
Vonasi Thanks for that Leo. Apparently there is some fault with the site that means posting code is...
Nicolas Sorry again, doing my best to fix this problem..
swapping merci gabri, on va le mettre à l'essai ;)
victormork Hi! No I don't have 200k history.
Yannick There is a huge drawdown from 2012 to 2013 after it keeps rising
victormork Thanks for sharing the 200k test!
Mirko Vaglio Interesting idea to bypass the limit of PRT about multiple timeframe, and I am just trying t...
Mirko Vaglio Looking a little bit more, now I understand what had to be absolutely obvious from the first...
Seb nice code! I'm trying to use your method to do a higher timeframe EMA, without success yet. ...
Robin von Bauhn Here you go! Would like to hear your feedback :) cl = RSI[2]100-a if cl and close &...
Francesco78 Sorry there might be few typos, pls send the full code. Thank you
Robin von Bauhn Oh, it's "cs" that's missing. I don't have the code right now but it's the exact same condit...
Genotik Merci de votre contribution !
Leo Hi all, I posted a new version of this indicator ( I just add arrows to spot the local maxi...
Trading_En_El_Ibex35 Muchas Gracias por compartir este interesante indicador. Un saludo
JM David, Thanks a lot and next week I begin the test of this strategy in real... You have ot...
rejo007 hello david, i'll try it could you tell me wich strategy do you use in real? thanks
David Somogyi Hello, I have a couple of DAX strategies of breakout and mean reversion. I'll try to post...
Thomas007 Is there any way to build something similar for FX? I wonder what would be the replacement f...
atlante je me demande si prorealtime pourrait etre programee sur fonction lorsquún point cgange de c...
lizmerrill can you provide this code for tradestation, please. Thanks
Nicolas No sorry, please use this file instead into a prorealtime trading platform.
StantonR Got good results on ZAF 1hr timeframe
Wilko Great!
Wilko Thanks for letting the community know!
lizmerrill can you explain the flow of the code, just to clarify. RE:fullness = (Dclose(0)-Dopen(0))/ab...
Francesco78 hi Lizmerril, yes, that is correct
lizmerrill Thanks for replying, so.... I assume in your backtest, the fullness calculations using dclos...
supertiti Felicidades Laurenzo d'avoir pris le temps pour ce gros travail et en plus dans l'esprit du ...
gatarayihajp Hello,  It's very interesting indicator. Could you explain more about it? Thank a lot
Wing I do not run this strategy myself, currently. As for why it is not taking trades live: Do yo...
dkinse Hey, Yes it´s running in 30 m timeframe. I had it running and it made two trads in januar...
Wing There's a few threads on the forum about backtest and live trades being different at times. ...
diegofe_2000 cordial saludo NICOLAS , gracias por excelente indicador. ¿ es posible obtenerlo en MT4 ? ...
Nicolas Lo siento, pero no estoy trabajando para ayudar a la gente aquí de forma gratuita para promo...
diegofe_2000 Nicolas , gracias por tu atención. La pregunta era por curiosidad (yo no trabajo ni manejo ...
juanj I mean a moving average line
juanj I coded the above indicator into a strategy, seems to be profitable on the EURUSD 1Hr
Leo I just have a question about trading. What is better for use as a filter in trading (long)...
David Balance thanks for sharing this excellent indicator.  Here are some thoughts.  please ad...