Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Telegram!
und werden Sie Mitglied unserer Fangruppe
Interessantes Skript?
Veröffentliche einen Link auf das Skript, damit die anderen ihn auch nutzen können
Hat Ihnen das Skript gefallen?
Bewerten Sie es im Terminal MetaTrader 5
Expert Advisors

MQL5 Wizard - Trading Signals of Candlestick Patterns + Stochastic - Experte für den MetaTrader 5

Ansichten:
2282
Rating:
(44)
Veröffentlicht:
2016.03.21 11:05
Aktualisiert:
2016.11.22 07:34
\MQL5\Include\Expert\Signal\MySignals\
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Beschreibung:

Mit dem MQL5 Wizard, können Trader nun automatisch Expert Advisor Code generieren, der auf den Klassen trading signals, positions tracking und money management basiert. Mit den trading signals' classes aus der Standardbibliothek, Können Sie nun Ihre eigenen Tradingsysteme entwickeln und testen. Um das tun zu können, brauchen Sie lediglich ein Modul für Tradingsignale zu schreiben.

Das Buch "The Strategies of the Best Traders in the World" (in Russisch) Beschreibt Indikatoren und Tradingstrategien für die technische Analyse unter Verwendung des MetaStock Softwarepaketes. Zu den konventionellen tradingsignalen, befasst sich dieses Buch auch mit denen die sich mit der Kombination von Umkehrkerzenformationen mit der Bestätigung durch Stochastic, CCI, MFI und RSI beschäftigen.

Die Verwendung von Umkehrkerzenformationen, zusammen mit Signalen von Oszillatoren, reduzieren die Anzahl der falschen Signale und erhöhen die Effizienz des Tradings.

In der vorherigen Publikation haben wir uns mit Tradingsignalen beschäftigt die auf Kerzenformationen mit der Bestätigung von stochastischen Indikatoren Stochastic beruhen:

  1. 3 Black Crows/3 White Soldiers
  2. Dark Cloud Cover/Piercing Line
  3. Bullish Engulfing/Bearish Engulfing
  4. Bullish Harami/Bearish Harami
  5. Hammer/Hanging Man
  6. Bullish/Bearish Meeting Lines
  7. Morning/Evening Stars

In dieser Beschreibung werden wir die Ergebnisse der kombinierten Anwendung aller dieser Modelle zusammen mit stochastischen Indikatorsignalen betrachten.


1. Bullische und Bärische Kerzenmodelle / Formationen und deren Erkennung

Die Kerzenmuster Klasse besitzt auch Funktionen für die Erkennung von bullischen und bärischen Kerzenformationen (Mit Ausnahme der Hammer/Hanging Man Kombination).

Das Muster einer bärischen Kerzenformation wird durch die Funktion CheckPatternAllBullish() geprüft:

//+------------------------------------------------------------------+
//| Prüft die Formation von bullischen Mustern                       |
//+------------------------------------------------------------------+
bool CCandlePattern::CheckPatternAllBullish()
  {
   return(CheckPatternThreeWhiteSoldiers()  || 
          CheckPatternPiercingLine()       || 
          CheckPatternMorningDoji()        || 
          CheckPatternBullishEngulfing()   || 
          CheckPatternBullishHarami()      || 
          CheckPatternMorningStar()        || 
          CheckPatternBullishMeetingLines());
  }

Das Muster einer bullischen Kerzenformation wird durch die Funktion CheckPatternAllBearish() geprüft:

//+------------------------------------------------------------------+
//| Prüft die Formation von bärischen Mustern                        |
//+------------------------------------------------------------------+
bool CCandlePattern::CheckPatternAllBearish()
  {
   return(CheckPatternThreeBlackCrows()     || 
          CheckPatternDarkCloudCover()     || 
          CheckPatternEveningDoji()        || 
          CheckPatternBearishEngulfing()   || 
          CheckPatternBearishHarami()      || 
          CheckPatternEveningStar()        || 
          CheckPatternBearishMeetingLines());
  }

2. Tradingsignale in Kombination mit stochastischem Indikator

Es wird eine Kauf oder Verkaufsposition geöffnet wenn eines von der bullischen/bärischen Muster gefunden wurde und diese durch einen stochastischen Oszillator bestätigt wurde. Der %D Wert der Signallinie sollte oberhalb oder unterhalb der angestrebten kritischen Ebenen (30 und 70) liegen.

Für die Bildung eines Ausstiegssignals gibt es zwei Fälle:

  1. Wenn ein gegensätzliches Kerzenmuster gebildet wurde (Eine Bärische für eine Long-Position und eine Bullische für eine Short-Position).
  2. Gemäß dem nachfolgenden Verhalten von %D. Wenn %D einen Level erreicht hat welches entgegen der Marktrichtung ist (80 im Falle von Long und 20 im Falle einer Short-Position) oder wenn %D das Umkehrsignal nicht bestätigt und im Falle einer Long-Position 20 oder im Falle einer Short-Position 80 erreicht.

Die Überprüfung der Einstiegs- und Ausstiegsbedingungen wird durch die folgende Funktion überprüft:

  • int CCP_Stoch::LongCondition() - Überprüfung der Bedingungen für das Eröffnen einer Longposition (m_pattern_0) und das Schließen einer Shortposition (m_pattern_1);
  • int CCP_Stoch::ShortCondition() - Überprüfung der Bedingungen für das Öffnen einer Shortposition (m_pattern_0) und das Schließen einer Longposition (m_pattern_1).

2.1. Öffnen einer Long-Position und Schließen einer Short-Position

  1. Das Signal für das Öffnen einer Long-Position wird gebildet durch eine bullische Kerzenformation und die erfüllte Bedingung von StochSignal(1)<30 (Der Wert von der Signallinie des Stochatischen Indikators an der letzten vollständigen Bar ist kleiner als 30);

  2. Das Signal für das Schließen einer Shortposition ist die Formation eines bullischen Kerzenmusters, oder wenn der Stochastic Indikator die 20er Ebene kreuzt (aufwärts) oder den 80er level (aufwärts).

//+------------------------------------------------------------------+
//| Methode für die Überprüfung ob Marktmodelle gebildet werden      |
//| Überprüft die Bedingungen für                                    |
//| Einstieg (Öffnen einer Shortposition, m_pattern_0)               |
//| Ausstieg  (Schließen einer Longposition, m_pattern_1)            |
//+------------------------------------------------------------------+
int CCP_Stoch::LongCondition()
  {
   int res=0;
//---- Überprüfen der Bedingungen für das Öffnen einer Shortposition
//---- Die Formation eines bullischen Musters und die Signallinie des Stochastik Indikators ist kleiner 30 
   if(CheckPatternAllBullish() && (StochSignal(1)<30)) res=m_pattern_0; // signal to open long position 

//--- Überprüfen der Bedingungen für das Schließen einer Shortposition
//--- Die Formation eines bärischen Musters oder die Kreuzung der Signallinie (aufwärts 20, aufwärts 80)
   if(CheckPatternAllBullish() ||
      ((StochSignal(1)>20) && (StochSignal(2)<20)) || 
      ((StochSignal(1)>80) && (StochSignal(2)<80)))    res=m_pattern_1; // signal to close short position
//---
   return(res);
  }


2.2. Öffnen einer Shortposition Und Schließen einer Longposition

  1. Das Signal für das Öffnen der Short-Position bildet eine der bärischen Kerzenmuster und erfüllt die Bedingungen des StochSignal(1)>70. (Der Wert von der Signallinie des Stochastic Indikators an der letzten vollständigen bar überschreitet 70):

  2. Das Signal für das Schließen einer Longposition bildet eine von den bärischen Kerzenmustern oder wenn die Linie des Stochastic Indikators den Wert von 80 unterschreitet (downwards) oder den Wert 20 unterschreitet (downwards).

//+------------------------------------------------------------------+
//| Methode für die Überprüfung ob Marktmodelle gebildet werden      |
//| Überprüft die Bedingungen für                                    | 
//| Einstieg (Öffnen einer Shortposition, m_pattern_0)               |
//| Ausstieg  (Schließen einer Longposition, m_pattern_1)            |
//+------------------------------------------------------------------+
int CCP_Stoch::ShortCondition()
  {
   int res=0;
//--- Überprüft die Bedingungen für das Öffnen einer Shortposition
//---- Formation von einem bärischen Muster und die Signallinie des Stochastik Indikators überschreitet den Wert 70
   if(CheckPatternAllBearish() && (StochSignal(1)>70)) res=m_pattern_0; // Das Signal für das Öffnen einer Shortposition 

//--- Überprüfung der Bedingungen für das Schließen einer Longposition 
//---- Formation eines bärischen Musters oder das Kreuzen der Signallinie(abwärts 80, abwärts 20)
   if(CheckPatternAllBearish() || 
      ((StochSignal(1)<80) && (StochSignal(2)>80)) || 
      ((StochSignal(1)<20) && (StochSignal(2)>20)))    res=m_pattern_1; // signal to close long position 
//---
   return(res);
  }

2.3. Erstellen eines Expert-Advisors basierend auf den Tradingsignalen von "Candlestick Patterns+Stochastic" Umkehrmustern unter Verwendung von dem MQL5 Wizard

Die CCP_Stoch class ist in der Standardbibliothek "Trading signals" nicht enthalten Dafür laden Sie bitte die Datei ccp_stoch.mqh file (angefügt) und speichern Sie diese bitte in dem Ordner \terminal_folder\Include\Expert\Signal\MySignals . Die Datei candlepatterns.mqh sollte in das gleiche Verzeichnis kopiert werden wie ccp_stoch.mqh. Um die Dateien im MQL5 Wizard benutzen zu können, müssen Sie den MetaEditor neu starten.

Um einen Handelsroboter zu entwerfen, der diese Strategie über den MQL5 Wizard erstellt, wählen Sie im zweiten Schritt den Signaltyp aus: "Signals based on Candlestick Patterns+Stochastic" :

Fig. 1. Wählen Sie "Signals based on Candlestick Patterns+Stochastic" im Generator für Tradingsignale in MQL5 Wizard

Abb. 1. Wählen Sie "Signals based on Candlestick Patterns+Stochastic" im Generator für Tradingsignale in MQL5 Wizard

Bei den anschließenden Schritten geben Sie den Typ des Trailing stops und des Money Managements an. Der Programmcode des Expert-Advisors wird automatisch erstellt. Jetzt sollte alles fertig sein, um es zu kompilieren und zu testen.


2.4. Testergebnisse

Die Ergebnisse des Expert Advisors bei einem Test unter Verwendung von historischen Daten (EURUSD H1, Zeitraum: 1.1.2000-02.02.2011, PeriodK=33, PeriodD=37, PeriodSlow=30, MA_period=25).

Dieser Expert Advisor benutzt dieses Modul für das Trading mit einer festgelegten Lotgröße von 0.1 lot (Trading Fixed Lot). Ein Trailingstop wird nicht verwendet (Trailing not used).

Fig. 2. Ergebnisse des Tests mit dem Expert Advisor basierend auf "Signals based on Candlestick Patterns+Stochastic" Tradingsignalgenerator

Abb. 2. Ergebnisse des Tests mit dem Expert Advisor basierend auf "Candlestick Patterns+Stochastic" Tradingsignalgenerator

Das beste Parameterset für das Tradingsystem finden Sie unter der Verwendung von Metatrader5 Strategy Tester.

Der von dem MQL5 Wizard generierte Code für den Expert Advisor ist angefügt als Datei: expert_cp_stoch.mq5.


Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalpublikation: https://www.mql5.com/ru/code/327

iChartsSwitchSymbol iChartsSwitchSymbol

Wenn das Symbol des Charts geändert wird, dann werden auch alle anderen Symbole in allen anderen Charts geändert.

Demo_BitmapOffset (OBJPROP_XOFFSET and OBJPROP_YOFFSET) Demo_BitmapOffset (OBJPROP_XOFFSET and OBJPROP_YOFFSET)

Wenn sie nur einen Teil des Bildes anzeigen wollen und einen anderen Teil nicht, dann können Sie das bewegbare Fenster dazu benutzen unter Angabe des sichtbaren Bereiches des Bildes.

Die Erzeugung von Fraktalen in MQL5 unter Verwendung der Iterated Function Systems (IFS) (Iterationsfunktionen) Die Erzeugung von Fraktalen in MQL5 unter Verwendung der Iterated Function Systems (IFS) (Iterationsfunktionen)

Die Bibliothek cIntBMP gibt Ihnen die Möglichkeit Bilder im BMP-Format zu erzeugen Wir betrachten hier ein Beispiel, wie Sie die Iterated Function System (IFS) für die Herstellung von selbstähnlichen fraktalen verwenden.

DRAW_NONE DRAW_NONE

Der DRAW_NONE Zeichnungstyp wird in den Fällen verwendet, wo sie eine Berechnung durchführen und die Ergebnisse der Berechnungen im "Data Window" anzeigen aber die Zeichnung selbst nicht benötigt wird.