Multi Z-Score analysis

Multi Z-Score analysis

This indicator is a quick attempt to represent the distance of prices from their averages using the Zscore.
By using the DRAWTEXT graphical function in a loop, you can display a large amount of information at the same time.

The Zscore is calculated dynamically against several moving averages for as many “definition” periods. The variable “definition” is a multiplier.

What the indicator shows us is that the price both to return more quickly to its mean when few Zscore (1 Zscore = 1 point on the graph) exceeds a deviation of 2 standard deviations and that quickly, while many other points form a compact package.

Other observations could be formulated for different types of graphs, time horizons and ways to trade, I leave you the pleasure to test by yourself 🙂


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?

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

  1. alfapenna • 06/26/2018 #

    good job! when it comes to the 4 standard deviation the price almost always breaks in

    • Nicolas • 06/26/2018 #

      Yes because the mean is also moving, it is not stationnary 🙂

  2. alfapenna • 06/26/2018 #


    • Jan Wind • 06/26/2018 #

      Dear Alfapenna,

      I would think the following 3 additions/changes in the code will do; however 4 is an extreme value .

      if zscore <= -4 then (CHANGE INSTEAD OF = 4 then ( CHANGE ADDED LINE)
      drawtext(“.”,barindex,zscore,Dialog,Bold,20) coloured(r,max(g,100),0)

    • Jan Wind • 06/26/2018 #

      Dear Alfapenna,
      I just saw my reply of this morning to you, it is completely mixed up (?)
      So I give it another try to answer your question:
      however ZFactor of 4 is an extreme value .

      if zscore< -4 then //ADJUSTED; was if zscore 4 then //NEW LINE
      drawtext(“.”,barindex,zscore,Dialog,Bold,20) coloured(r,max(g,100),0)
      endif //NEW LINE

  3. Jan Wind • 06/26/2018 #


    thanks for the code.
    “Smooth” does not seem to give any value (smooth=average[period](globalz))
    If you can react on this, would be great !
    KR Jan

    • Nicolas • 06/26/2018 #

      But it should, I’ll test later.

    • Jan Wind • 06/26/2018 #

      Nicolas, maybe the cause is that the values of / or the smooth line is not visible (??)

  4. Jose7674 • 06/26/2018 #

    Thanks for such a great job… I will try to use it in a trading system.
    Really great

  5. Sofitech • 06/26/2018 #

    Is there a way to create a return value for the points so we can create alerts when some points are higher or lower of a value ? how can we modify the code to do that ?

    • Nicolas • 06/26/2018 #

      So many variables to be returned! The indicator is dynamic by its settings, so you can’t know how much variables it would return, that’s why I used dots made with a graphic instruction. Zscore is pretty much the same as a standard deviation, so bollinger bands do already this job for you.

    • m-zeter • 06/26/2018 #

      Has anyone found a solution for Sofitech? Would it be possible to draw two lines? An upper line for the maximum points and a lower line for the minimum points. Would that be possible?

  6. Brisvegas • 06/26/2018 #

    Is this indicator for use in a binary sense or is it just a type of visual . If it is to be used as binary/boolean type signal what would your suggestion be ? It seems a little noisey to me , possibly i just dont get it .

    • Nicolas • 06/26/2018 #

      Multiple zscore are plotted around many different time horizons means. Purely visual as you cant get a binary signal without any studies of all the information that are plotted by the indicator. As I wrote in the post, I let everyone make their own studies about the concept.

  7. Gianluca • 06/26/2018 #

    Hello Nicolas, my prt become stuck when i load the indicator, is there any problem with it?

    • m-zeter • 06/26/2018 #

      Hm, i dont know exactly why, but I think, that the indicator needs lots of power. I need also lots of time to load it. Maybe your computer has not enaugh power for it?

Register or


avatar avatar avatar avatar avatar avatar avatar avatar avatar
Related users ' posts
Madrosat Bonjour Nicolas la formule du stop loss est elle vraiment valable ?? il n'y a pas au depart ...
Nicolas Il y a peut-être un erreur en effet, essayer avec: set stop ploss (averagetruerange[14] * ...
Madrosat ok merci Nicolas c'est avec /pipsize que ça fonctionne
snucke Hello Francesco! when i replace a&b with 10&30 the results are not the same? h...
Francesco78 @snucke the results are not the same because the pictures refers to a few years ago. I am no...
snucke @Francesco78 i mean the results differ when i test on my own. so im curious of what the p...
Nicolas voir ces sujets: https://...
PhilHowells Hi Nicolas. I am really late to the party about this post but I have a question. I am an a...
Nicolas Add it on the price chart with the wrench at the upper left side of price chart.
Lydia1948 Hi I really like this indicator - is it easy to change the colour of the blue dots to say g...
Nicolas Lines 23 and 24 are the Red and Blue value between 0 to 255, you can change the color of the...
JanWd Hi Francesco, nice algorithme, works with me on other markets as well !
Francesco78 thank you Janwd. Do you mind sharing where it works? happy new year!
Aaron Bennett Nice analysis, with the proposed tweak I'm seeing great performance since 2008/QE on the CAC...
Nicolas No sorry, please use this file instead into a prorealtime trading platform.
rdabbs I just installed this indicator. It opens in its own pane rather than overlaid on the chart ...
Nicolas Just apply it on your price chart instead and you're ok.
Wilko I am not familiar with the screener function, but I am quite certain it should be quite simp...
Gubben @Wilko have you had a look at this again since MTF support? Heard you talk on Börssnack btw..
Wilko @Gubben not really. It was something I posted to show that simpler is usually better. Hope y...
DANY overfit
fatlung Excuse me. I would like to the time zone applied to this strategy.
UkCoopDownUnder Hi, ProOrder does not recognise, "avfullnessthreshold" any ideas, thanks
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 ...
5 years ago
HerveS_67 Bonjour, A quoi correspondent les données S, M, L ? Hello, What do the data S, M, L?
Vinks_o_7 aux paramètres à rentrer : 5 20 et 200...
CavalierDeCesDames Bonjour Nicolas, Thanks for your use full job. I tried this indicator on a shorter timefram...
Nicolas You are welcome. I'm glad you like it.
Bolbo It does not appear over the price indicator on V11. Thanks in advance.
Maxime Baudin Nice, thanks!
rowestock Hi Nicolas, I am revisiting this indicator and wanted to ask, is it possible to replace sty...
Nicolas Why not, please add a new request in our probuilder forums.
majid52026 Hi I want MBXF Timing for mq5 Does anyone have this indicator???
dertopen Hi Nicolas good work for the code translation when i chek the mbfx system site i see in t...
Nicolas Yes, just change the color by yourself in the indicator settings window.
JanWd Thank you for the coding, it seems promising. FTSE gives for the short term (5 min) promis...
Jan Wind 21.04.2019: I retested the strategy for the DAX 5 minutes , it works fine for 10.000 bars, b...
bertrandpinoy hello Francesco, are you still working on this strategy?
Nicolas You'll need to preload bars to get the good calculations of you indicators. I did not test i...
David Nicolas I tried DEFPARAM Preloadbars = 5000 And still the same drawn output of entries/exit...
marcara Hi, Thank you very much for the Moving Average Daily indicator, I am using it as indicator i...
rpreviteri Hi Nicolas, thanks a  loto for sharing your knowliedge, Wasn't the original momentum pinball...
air Thank you!  
elanoa Buonasera sig. Nicolas......sarebbe possibile far in modo che quando l'indicatore raggiunga ...
Dimi.A Perfect for counter-trend scalping. I like this!
viktorthuns Hi Nicolas! Great work you've done with all your indicators. Just wondering about the code a...
Nicolas the value is not a boolean but an average of an addition of booleans. As stated in the descr...