Divergentie Awesome Oscillator: Een Onmisbare Indicator voor MetaTrader 5

Mike 2025.06.11 20:56 15 0 0
Bijlage

Deze MQL5-code is een aangepaste indicator die is ontworpen om divergenties tussen prijsbewegingen en de Awesome Oscillator (AO) te detecteren en visualiseren. Divergenties ontstaan wanneer de prijsbeweging en de oscillatorbeweging niet op één lijn liggen, wat vaak wijst op mogelijke omkeringen of continuaties in de markt. De indicator geeft koop- en verkoop-signalen weer, toont een histogram van de AO en tekent trendlijnen om deze divergenties te benadrukken.

divergentie van kopen


Belangrijkste Kenmerken van de Indicator:

  1. Divergentie Detectie:

    • Detecteert bullish divergences (prijs maakt lagere dieptepunten terwijl AO hogere dieptepunten maakt).
    • Detecteert bearish divergences (prijs maakt hogere pieken terwijl AO lagere pieken maakt).
  2. Visualisatie:

    • Koop-/Verkooppijlen: Plaatst pijlen op de grafiek om potentiele koop- of verkoop-signalen aan te geven op basis van divergenties.
    • Histogram: Toont de waarden van de Awesome Oscillator (AO) als een histogram.
    • Trendlijnen: Tekent trendlijnen op de grafiek om de divergenties tussen prijs en AO te benadrukken.
  3. Aangepaste Buffers:

    • Maakt gebruik van vier buffers om gegevens op te slaan:
      • BuyBuffer en SellBuffer voor koop-/verkoopsignalen.
      • HistogramBuffer voor AO-waarden.
      • PointsCounterBuffer om uitgelijnde punten voor divergentiebevestiging bij te houden.
  4. Dynamic Trendline Tekenen:

    • Maakt gebruik van CChartObjectTrend om dynamisch trendlijnen op de grafiek voor prijs en AO te tekenen.
  5. Crossing Check:

    • Bevat een functie (CheckCrossing) om te verifiëren of de prijs of AO een trendlijn kruist, wat helpt om een divergentie te bevestigen of te ontkrachten.
  6. Interpolatie:

    • Maakt gebruik van lineaire interpolatie (CalculateIntermediateValue) om tussenliggende waarden te berekenen, die worden gebruikt om kruisingen te controleren.

Hoe het Werkt:

  1. Initialisatie:

    • De OnInit() functie stelt de indicatorbuffers in, wijst eigenschappen toe (bijv. kleuren, stijlen) en initialiseert de Awesome Oscillator (AO) handle.
  2. Hoofd Berekening:

    • De OnCalculate() functie verwerkt prijs- en AO-gegevens om divergenties te detecteren:
      • Identificeert bodems (lagere dieptepunten) en toppen (hogere pieken) in zowel prijs als AO.
      • Controleert op divergenties door prijs- en AO-trends te vergelijken.
      • Plaatst koop-/verkoopsignalen en tekent trendlijnen wanneer een divergentie is bevestigd.
  3. Divergentiebevestiging:

    • Maakt gebruik van voorwaarden zoals IsBullishTrend en IsBearishTrend om divergencies te bevestigen.
    • Zorgt ervoor dat er geen kruising plaatsvindt tussen de prijs- en AO-trendlijnen om de divergentie te valideren.
  4. Dynamische Updates:

    • De indicator werkt dynamisch bij elke nieuwe balk, herberekent divergenties en tekent trendlijnen opnieuw indien nodig.

Belangrijkste Functies:

  1. IsBottom() en IsTop():

    • Detecteert lokale minima (bodems) en maxima (toppen) in een array (prijs of AO).
  2. CheckCrossing():

    • Controleert of de prijs of AO een trendlijn kruist, wat een divergentie kan ongeldig maken.
  3. CalculateIntermediateValue():

    • Bereken tussenliggende waarden met behulp van lineaire interpolatie voor trendlijnanalyse.
  4. AddUniqueCoordinates():

    • Zorgt ervoor dat unieke coördinaten aan de array worden toegevoegd voor het tekenen van trendlijnen.
  5. TotalAligned():

    • Telt het aantal uitgelijnde punten om de sterkte van de divergentie te bevestigen.

Gebruik:

  • Deze indicator is nuttig voor traders die vertrouwen op divergentiestrategieën om potentiële omkeringen of continuaties in de markt te identificeren.
  • Het biedt visuele aanwijzingen (pijlen, trendlijnen en histogrammen) om traders te helpen weloverwogen beslissingen te nemen.

Voorbeeldscenario:

  • Als de prijs lagere dieptepunten maakt (bearish), maar de AO hogere dieptepunten maakt (bullish), wordt er een bullish divergentie gedetecteerd. De indicator zal een kooppijl plaatsen en trendlijnen tekenen om de divergentie te benadrukken.
  • Omgekeerd, als de prijs hogere pieken maakt (bullish), maar de AO lagere pieken maakt (bearish), wordt er een bearish divergentie gedetecteerd. De indicator zal een verkooppijl plaatsen en trendlijnen tekenen.

Technische Details:

  • Platform: MetaTrader 5 (MT5).
  • Taal: MQL5.
  • Afhankelijkheden: Maakt gebruik van de Awesome Oscillator (iAO) voor berekeningen.
  • Aangepaste Objecten: Gebruikt CChartObjectTrend voor het tekenen van trendlijnen en CArrayInt voor het beheren van arrays van coördinaten.

Deze indicator is een krachtig hulpmiddel voor traders die de detectie en visualisatie van divergenties willen automatiseren, wat tijd bespaart en de nauwkeurigheid van hun handelsstrategieën verbetert.

Lijst
Reactie 0