MultiZigZag is gebaseerd op het originele zigzag-algoritme dat samen met MetaTrader 4 in 2005-2006 werd geïntroduceerd. Dit algoritme heeft zijn waarde bewezen en wordt in veel op maat gemaakte indicatoren gebruikt. In eerste instantie is dit algoritme vertaald naar MQL4 door Rosh, waarvoor dank! Maar wie het precies heeft uitgevonden, dat blijft onbekend. Mocht iemand dat weten, laat het dan vooral weten in de reacties!
Hier zijn enkele van de nadelen van de originele versie uit 2005-2006:
- Processorbelasting: Het algoritme zorgde voor een hoge belasting van de processor omdat de zigzag bij elke tick volledig werd herberekend. Dit leidde tot vastlopers op minder krachtige computers tijdens drukke markten.
- Inaccurate weergave: De fracties van de zigzag hingen soms 'in de lucht' zonder duidelijke binding aan de maxima of minima van de candlesticks. Dit maakte het moeilijk om de werkelijke positie van een piek of dal te bepalen op de grafiek.
- Geschiedenis scrollen: Bij het terugscrollen in de geschiedenis begon de zigzag te zweven en was deze niet visueel aan de grafiek gebonden.
De MultiZigZag versie heft deze problemen op. Alleen de laatste drie segmenten van de zigzag worden herberekend, en dat gebeurt alleen wanneer de prijzen zich buiten het berekende deel van de nul-candle bewegen. Dit betekent dat de herberekening plaatsvindt wanneer de minimum of maximum van de nul-candle genullificeerd wordt, of wanneer er een nieuwe candle verschijnt.
Elke zigzag maakt gebruik van twee buffers: één voor de maxima en één voor de minima. Dit maakt het mogelijk om zowel de hoogste als de laagste waarde op een enkele candle weer te geven. Er zijn ook twee lege buffers beschikbaar voor diegenen die willen experimenteren met extra code. Dit kan een leuke oefening zijn voor beginnende MQL4-programmeurs!
Wat betreft de berekening en weergave van de zigzags van grotere tijdframes: dit gebeurt zonder de icustom() functie. Dit betekent dat we de indicatorbuffers kunnen negeren en zigzags voor alle tijdframes en symbolen tegelijkertijd kunnen berekenen, zolang er voldoende RAM beschikbaar is. Dit biedt ook de mogelijkheid om patronen zoals Gartley op verschillende tijdframes te zoeken.
Parameters:
De meeste externe parameters zijn stringvariabelen. De parameters worden gescheiden door komma's en zijn geschreven in elke stringvariabele voor de zigzag. De eerste waarde is voor de eerste zigzag, de tweede voor de tweede en de derde voor de derde, gescheiden door komma's.
ExtDepth, ExtDeviation en ExtBackstep zijn standaardparameters voor de zigzag. Als je ExtDepth=0 instelt, wordt de bijbehorende zigzag niet weergegeven.
ExtMaxBar - het aantal candles waarop de zigzag wordt berekend. GrossPeriod - de perioden van de grafieken, gespecificeerd in minuten, waarvan de gegevens voor de zigzagberekening worden gebruikt. Als je 0 opgeeft, wordt de zigzag berekend op de huidige tijdsperiode.
Je kunt de volgende waarden opgeven: 0-1-5-15-30-60-240-1440-10080-43200.
ExtReCalculate - het aantal extremen van de zigzag dat in real-time wordt herberekend. Het is een goed idee om deze parameter niet te wijzigen. Standaard worden de zigzags weergegeven vanaf H1, H4 tot D1. Alleen de zigzag op basis van de D1-gegevens wordt weergegeven op de dagelijkse grafiek.
In het voorbeeld hieronder zie je dat de zigzag uit H1 in aqua is weergegeven, H4 in rood en D1 in geel.

Gerelateerde berichten
- PCA Synthetics: Automatische Coëfficiëntselectie voor MetaTrader 5
- iExposure Indicator: Beheer je Handelsposities Efficiënt met MetaTrader 5
- Efficiënt Grafische Objecten Kopiëren in MetaTrader 5 met ChartObjectsCopyPaste
- Efficiëntie Ratio (ER) Berekenen met de CEROnRingBuffer voor MetaTrader 5
- Correlatiecoëfficiënt: Een Onmisbare Indicator voor MetaTrader 5