DSSBressertSignAlert: De Indicator voor MetaTrader 5 met Alerts

Mike 2016.09.19 21:41 15 0 0
Bijlage

Welkom bij mijn blog! Vandaag gaan we het hebben over de DSSBressertSignAlert, een innovatieve indicator voor MetaTrader 5 die gebruik maakt van semaphore signalen. Deze indicator is niet alleen handig, maar kan ook alerts verzenden, inclusief e-mails en push-notificaties naar je mobiele apparaat.

Om de alerts, e-mailberichten en push-notificaties te implementeren, zijn er een aantal belangrijke wijzigingen aangebracht in de code van de indicator. Laten we deze veranderingen eens bekijken:

  1. Nieuwe invoerparameters toegevoegd:
    input uint NumberofBar=1;//Aantal bars voor het signaal
    input bool SoundON=true; //Alerts inschakelen
    input uint NumberofAlerts=2;//Aantal alerts
    input bool EMailON=false; //E-mail notificaties inschakelen
    input bool PushON=false; //Push-notificaties inschakelen
    
  2. Drie nieuwe functies toegevoegd: BuySignal(), SellSignal() en GetStringTimeframe()
    //+-------------------------------------------------+
    //| Functie voor koop signalen                     |
    //+-------------------------------------------------+
    void BuySignal(string SignalSirname,// tekst voor e-mail en push berichten
    double &BuyArrow[],// buffer voor koop signalen
    const int Rates_total,// huidig aantal bars
    const int Prev_calculated,// aantal bars op de vorige tick
    const double &Close[],// sluitprijs
    const int &Spread[])// spread
    {//---
    static uint counter=0;
    if(Rates_total!=Prev_calculated) counter=0;
    
    bool BuySignal=false;
    bool SeriesTest=ArrayGetAsSeries(BuyArrow);
    int index;
    if(SeriesTest) index=int(NumberofBar);
    else index=Rates_total-int(NumberofBar)-1;
    if(NormalizeDouble(BuyArrow[index],_Digits) && BuyArrow[index]!=EMPTY_VALUE) BuySignal=true;
    if(BuySignal && counter<=NumberofAlerts)
    {//...
    }
    //---
    }
  3. Calls naar de BuySignal() en SellSignal() functies toegevoegd: na de berekeningen in de OnCalculate() functie:
    //---
    BuySignal("DSSBressertSignAlert",BuyBuffer,rates_total,prev_calculated,close,spread);
    SellSignal("DSSBressertSignAlert",SellBuffer,rates_total,prev_calculated,close,spread);
    //---

Hierbij zijn BuyBuffer en SellBuffer de namen van de indicatorbuffers voor het opslaan van de koop- en verkoop signalen. Let op dat lege waarden in de buffers moeten worden ingesteld als nul of EMPTY_VALUE.

De indicator maakt gebruik van de SmoothAlgorithms.mqh bibliotheek. Zorg ervoor dat je deze kopieert naar de juiste map ( MQL5 eInclude). In een eerder artikel wordt uitgebreid beschreven hoe je deze functies kunt gebruiken: "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers".


Fig.1. De DSSBressertSignAlert indicator op de grafiek

Fig.1. De DSSBressertSignAlert indicator op de grafiek

Fig.2. De DSSBressertSignAlert indicator. Genereren van alerts.

Fig.2. De DSSBressertSignAlert indicator. Genereren van alerts.

Lijst
Reactie 0