Startseite Technischer Indikator Beitrag

ColorXdinMA_Alert – Der Trendindikator für MetaTrader 5

Anhang
17111.zip (22.91 KB, Herunterladen 0 mal)

Autor: dimeon

Der ColorXdinMA ist ein leistungsstarker Trendindikator für MetaTrader 5, der dir nicht nur die Möglichkeit gibt, die Trendrichtung zu erkennen, sondern auch Echtzeit-Alerts via E-Mail und Push-Benachrichtigungen auf dein mobiles Gerät zu senden.

Um die Alerts zu implementieren, wurden folgende Anpassungen im Code des Indikators vorgenommen:

  1. Globales Enumerationsfeld für die Optionen der Signalgenerierung vor den Eingangsvariablen definiert:
    //+----------------------------------------------------+
    //| Enumeration für Signal-Generierungsoptionen   |
    //+----------------------------------------------------+
    enum ENUM_SIGNAL_MODE
      {
       MODE_SIGNAL,  // Breakout-Signale
       MODE_TREND    // Breakout- und Trend-Signale
      };
  2. Neue Eingabeparameter hinzugefügt:
    //---- Eingangsvariablen für Alerts
    input ENUM_SIGNAL_MODE SignMode=MODE_SIGNAL; // Signal-Generierungsmodus
    input uint NumberofBar=1; // Anzahl der Kerzen für ein Signal
    input bool SoundON=true; // Alerts aktivieren
    input uint NumberofAlerts=2; // Anzahl der Alerts
    input bool EMailON=false; // E-Mail-Benachrichtigungen aktivieren
    input bool PushON=false; // Push-Benachrichtigungen aktivieren
  3. Drei neue Funktionen am Ende des Indikatorcodes hinzugefügt: BuySignal(), SellSignal() und GetStringTimeframe()
    //+------------------------------------------------------------------+
    //| Funktion für Kaufsignal                                              |
    //+------------------------------------------------------------------+
    void BuySignal(string SignalSirname,// Text für E-Mail und Push-Nachrichten
               double &ColorArray[],// Farb-Index-Puffer
               int ColorIndex,// Farbindex im Puffer
               const int Rates_total,     // Aktuelle Anzahl der Kerzen
               const int Prev_calculated,// Anzahl der Kerzen im vorherigen Tick
               const double &Close[],     // Schlusskurs
               const int &Spread[])       // Spread
      {
    //---
       static uint counter=0;
       if(Rates_total!=Prev_calculated) counter=0;
    ...
  4. Aufrufe der Funktionen BuySignal() und SellSignal() nach den Berechnungen im OnCalculate()-Block hinzugefügt:
    //---    
       BuySignal("ColorXdinMA_Alert",ColorXdinMA,1,rates_total,prev_calculated,close,spread);
       SellSignal("ColorXdinMA_Alert",ColorXdinMA,2,rates_total,prev_calculated,close,spread);
    //--- 

Hierbei ist ColorXdinMA der Name des Farbindex-Puffers für die Indikatorfarben. Die Werte 1 und 2 stehen für die Farben, bei denen sich der gleitende Durchschnitt aufwärts bzw. abwärts bewegt.

Es wird angenommen, dass nur ein Aufruf der Funktionen BuySignal() und SellSignal() im OnCalculate()-Block des Indikatorcodes verwendet wird.

Der Indikator nutzt die Klassen der SmoothAlgorithms.mqh-Bibliothek (kopiere sie in <terminal_data_folder>\MQL5\Include). Die Nutzung dieser Klassen ist ausführlich im Artikel "Averaging Price Series for Intermediate Calculations Without Using Additional Buffers" beschrieben.

Fig1. Der ColorXdinMA_Alert-Indikator im Chart

Fig1. Der ColorXdinMA_Alert-Indikator im Chart

Fig.2. Der ColorXdinMA_Alert-Indikator. Generierung des Alerts für Breakout-Signal

Fig.2. Der ColorXdinMA_Alert-Indikator. Generierung des Alerts für Breakout-Signal

Fig.3. Der ColorXdinMA_Alert-Indikator. Generierung des Alerts für Trend-Signal

Fig.3. Der ColorXdinMA_Alert-Indikator. Generierung des Alerts für Trend-Signal

Verwandte Beiträge

Kommentar (0)