Multi Fractals ZigZag High/Low

Multi Fractals ZigZag High/Low

Second version of this indicator, first one can be found here:

This new version draw only High/Low points of the fractals zigzag on chart. It draws major points (green and red squares) which are calculated with a lookback of 20 periods by default (“cp” parameter can be changed at will).

The minor points (green and red dots) are calculated the same way but with the default period divided by 2 (so 20/2=10 periods by default).

This indicator can be used to trade 123 pattern of any other kind of breakout strategies.


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. Seemore Profit • 272 days ago #

    Nothing gets added, a indicator sections opens on the bottom part of the chart but nothing anywhere all blank

    • Nicolas • 272 days ago #

      Please add it on price instead. Use the wrench at the upper left side of the chart.

  2. Loop • 269 days ago #

    Hi Nicolas,
    would it be possible to have a tradins system based on this indicator?
    I tried but it’s too complicate for my skills…
    Thanks a lot!

  3. geoken • 267 days ago #

    Hi! Is there any way to set an audio alarm or pop-out box alert when the fractal appear?  Any suggestions is greatly appreciated. 
    Thank you

  4. Stenozar • 234 days ago #

    Buongiorno Nicolas, mi scuso per l’ignoranza, ma non ho capito come si può utilizzare questo indicatore. Potrebbe spiegarlo brevemente?

    • Nicolas • 233 days ago #

      Questo indicatore disegna picchi massimi ei minimi basso per determinare le zone di supporto e resistenza. È tutto 🙂

  5. NYORKA • 223 days ago #

    Hello Nicolas
    Can this code be transferred to Tradingview charts? Thanks

    • Nicolas • 223 days ago #

      Certainly, but I will not do it.

  6. Vin's Regnault • 193 days ago #

    Bonjour Nicolas,
    Je tenais  à te remercier pour tout ce travail incroyable que tu fais pour nous !
    Merci quel indicateur de qualité !!
    Je te souhaite que le meilleur

  7. shephinc • 180 days ago #

    Thank you for amazing stuff you do here!
    I tried to make this into an indicator but it seems to lag ahead! is this by design or I do something wrong ? 🙂

    • Nicolas • 180 days ago #

      It’s not lagging, Fractals are confirmed few bars only after a new peak or trough had been discovered.

    • shephinc • 180 days ago #

      Ok! Thanx!

  8. SEBASTIEN DELABOETIE • 177 days ago #

    Hello Nicolas,
    Ok, i will try to speak english…
    I suppose this indicator repaint ?… am I right ?

    • Nicolas • 177 days ago #

      No it doesn’t. Points are drawn afterwards.

  9. Pietro Fontana • 158 days ago #

    Hi Nicolas,
    i wanna use this indicator in an automatica trading strategy. but it seems that is not possibile. I’ve changed the code so the function will return the last value obtained  but it seems that it’s not in sync with the draw. It a my error or is not possible to return the value for this indicator?
    //---external parameters
    //cp = 20

    once lastpoint = 0
    ATR = averagetruerange[cp]

    //---major zigzag points
    if high[cp] >= highest[2*cp+1](high) then
    LH = 1
    LH = 0

    if low[cp] <= lowest[2*cp+1](low) then
    LL = -1
    LL = 0

    if LH = 1 then
    TOPy = high[cp]
    TOPx = barindex[cp]

    if LL = -1 then
    BOTy = low[cp]
    BOTx = barindex[cp]

    if LH>0 and (lastpoint=-1 or lastpoint=0) then
    DRAWTEXT(\"░\",TOPx,TOPy+ATR/2,Dialog,Bold,20) coloured(200,0,0,255)
    lastpoint = 1
    last = 2
    if LL<0 and (lastpoint=1 or lastpoint=0) then
    DRAWTEXT(\"░\",BOTx,BOTy-ATR/2,Dialog,Bold,20) coloured(0,200,0,255)
    lastpoint = -1
    last = -2

    //---mino zigzag points
    if high[round(cp/2)] >= highest[cp+1](high) then
    LLH = 1
    LLH = 0

    if low[round(cp/2)] <= lowest[cp+1](low) then
    LLL = -1
    LLL = 0

    if LLH = 1 then
    LTOPy = high[round(cp/2)]
    LTOPx = barindex[round(cp/2)]

    if LLL = -1 then
    LBOTy = low[round(cp/2)]
    LBOTx = barindex[round(cp/2)]

    if LLH>0 then
    DRAWTEXT(\"º\",LTOPx,LTOPy+ATR/2,Dialog,Bold,20) coloured(200,0,0,255)
    last = 1
    if LLL<0 then
    DRAWTEXT(\"º\",LBOTx,LBOTy-ATR/2,Dialog,Bold,20) coloured(0,200,0,255)
    last = -1

    RETURN last as \"last\"

    • Nicolas • 158 days ago #

      Seems ok to me. However, you can take a look at this strategy that already show how to use it:

  10. paulon • 150 days ago #

    Hi Nicolas. I am very impressed with your work! 
    For real-time charts, could the Multi Fractals High/Low indicator be adapted so that it triggers an alert when a high or low point is created?

    • Nicolas • 150 days ago #

      It has been discussed many times, I believe already in the comments of this post or even in the forums. Please make a quick search 🙂

    • Eusebio Garcia Nuez • 144 days ago #

      please nicolas, ondas de wolf

  11. Real Pro • 39 days ago #

    Hi Colin,
    How would one add horizontal lines from the pivot points? I’d like to try to create a system where one buys the breakout above the line. Thankyou.

  12. Abbeymac • 12 days ago #

    I don’t understand which folder we’re to put this file. couldn’t find it in my indicator folder after copyin it there, same thing as Template folder. What’s needed to be done, please advise. Thanks

    • Nicolas • 12 days ago #

Register or


avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar avatar

+15 more likes

Related users ' posts
Al Gran bel lavoro Gabri, il libro di Larry Williams merita tanto. Sarebbe possibile sviluppar...
gabri Al, ci posso provare ma non so quando...mi sta nascendo una bimba a giorni :) me lo segno e...
Al Grazie mille, e auguri per il lieto evento :-)
Nicolas C'est une condition horaire pour afficher ou non les signaux de trading de l'indicateur.
ludo6977 il me semblait, excellent job, good nice. met un macd zero retard et le resultat sera bien ...
Nicolas Avec un halftrend par dessus ? :lol:
klaus Hi Nicolas, this indicator is repainting, is it?
HerveS_67 Attention, regardez bien la construction du code !!! Les points bleu s'affichent entre bari...
Nicolas There's no repainting indicator in prorealtime. But this one plots the points afterwards of ...
juanj Definitely, need to code this into an automated strategy.
Marc Boliart dear nicolas, tyvm for your indicators and strategies, i have this following error when i ch...
Nicolas Your picture is too small, but for sure the problem is about the fact you are still using v1...
swapping Oups nicolas ! je pense que tu a oublié de mettre les variables "setting" accessible en exte...
Nicolas Je viens de vérifier, elles y sont pourtant?
swapping Mea culpa, j'ai fait un bête (copier/coller) et forcément cela ne pouvait pas y être puisqu'...
Thomas007 It's a very powerful tool. Thanks for sharing! The Signal crosses the Trader a few times but...
rb-72 Thank you, area of twist by dilatacion of the price, missing part of the code that is not pu...
Thomas007 after reading your blog now I understand why there is only a part of your code here. I'm try...
Marcel If you are interested in my way of trading, please follow me on Twitter @MvvTrading
Genotik Excellent, merci !
swapping Hello Van Salt Thank you for this indicator. Very interest for add into price and follow ex...
DaxRider nice job thanks
Alai-n Je ne peux aller plus loin que le 30.10.2017 sur un graphique en Ticks. Et cela ne fonctionn...
Alai-n Merci pour ce travail...
Bianca Bonjour Nicolas, tu as fait qc avec les estensioni de Fibonacci? daily et weeckly? 2) quest...
2 weeks ago
Genotik Merci !
Rolanbay Lors de la validation du programme, j'obtiens : Erreur de syntaxe Veuillez définir la va...
Nicolas Télécharger le fichier et l'importer ou supprimer les // devant les noms de ces variables
Rolanbay Merci beaucoup, c'est exactement ce qu'il fallait faire.
Toto le Heros Tx Nicolas. Looks very interresting. No text display on my charts. Any specific option to ti...
Nicolas Be sure to have these settings set with these values: //edblHigh1 = 0.04 //edblLow1 = -0....
Toto le Heros Ok, got it ! Great ! Tx
gabri Agree. Many of those indicators are using very similar ideas. ADX is a very powerful and und...
Marcel But still it is a (lagging) derivation of price itself.
gabri All the indicators are lagging because they are all based on historical data.
Trading_En_El_Ibex35 Para calcular el punto pivote y los niveles de soporte y resistencia para operar durante la ...
supertiti Hola mis disculpas, creia que tu eres Jose Antonio Madrigal ! gracias por las explicaci...
Trading_En_El_Ibex35 espero que las explicaciones te hayan sido de ayuda saludos
JohnScher Fine Work. I am currently working on divergences. I wanted to ask if there was already a b...
Nicolas There are many divergences indicators on the website already, please make a quick search wit...
JohnScher indicators i did fond, no problem, but a basic code to trade maybe RSI divergence didn´t fou...