English Русский 中文 Español 日本語 Português 한국어 Français Italiano Türkçe
Veranschaulichung einer Strategie im Prüfprogramm von MetaTrader 5

Veranschaulichung einer Strategie im Prüfprogramm von MetaTrader 5

MetaTrader 5Beispiele | 27 Januar 2016, 09:50
1 039 0
MetaQuotes
MetaQuotes

Jeder kennt den Spruch: „Ein Bild sagt mehr als tausend Worte.“ Man kann zig Bücher über Paris oder Venedig lesen, aber die geistigen Vorstellungen vermitteln einem nie dasselbe Gefühl wie ein Spaziergang durch die abendlichen Straßen. Der Vorteil der Veranschaulichung oder der grafischen Darstellung lässt sich auf jeden beliebigen Lebensbereich übertragen, auch auf die Arbeit an den Finanzmärkten, zum Beispiel in Form der Analyse der Kurse anhand von Indikatoren auf Diagrammen sowie natürlich in Form der grafischen Darstellung der Überprüfung von Strategien.


Kennt jeder die Möglichkeiten des Strategieprüfprogramms?

Wie die Erfahrung zeigt nicht jeder. Der Wettbewerbsvorteil der Handelsplattform MetaTrader 5 besteht nicht allein in der angenehmeren und benutzerfreundlichen Oberfläche, den umfassenden Möglichkeiten des Programms vor Ort sowie von MQL5, dem mehrwährungsfähigen Strategieprüfprogramm mit der Fähigkeit zur Ausführung von Berechnungen mithilfe der MQL5-Cloud und vielen anderen Ausstattungsmerkmalen. Der Vorteil ergibt sich zudem aus dem Vorhandensein aller einem jeden Händler unerlässlichen Werkzeuge an einem einzigen Platz.

Ziel dieses Beitrags ist es, den Händlern ein weiteres nicht unwesentliches Stückchen aus der Fülle der Möglichkeiten von MetaTrader 5 vorzustellen, und zwar die Möglichkeiten zur grafischen Darstellung der Prüfung und Optimierung von Strategien. Die Analyse des Verhaltens von Expert-Systemen in Bezug auf Verlaufsdaten und die Auswahl der geeignetsten Parameter sind mehr als nur eine mühselige Analyse von Zahlen, Handelsvorgängen, Bilanzen, Reinvermögen und dergleichen, aber lehnen wir uns zurück, setzen unsere 3D-Brille auf und sehen wir uns an, was passiert.


„Oh, wie ist das schön. So was hat man lange nicht gesehen. So schön, so bildschön!“

Bei der Veröffentlichung von Expert-Systemen in der Codebasis oder dem „Markt“ hängen die Autoren in der Regel einen statistischen Prüfbericht sowie Bilanz- und Vermögenskurven an. Unter den statistischen Daten der Registerkarte „Ergebnisse“ des Strategieprüfprogramms finden sich jedoch wesentlich interessantere Darstellungen:

Diagramme mit Prüfergebnissen

Anhand dieser Diagramme kann analysiert werden, in welchen Monaten, an welchen Tagen oder in welchen Stunden ein Expert-System besser arbeitet bzw. wann es auf dem Markt am aktivsten ist. Die Leistung eines Expert-Systems kann auch anhand der Rechtzeitigkeit der Schließung von Positionen mit Gewinn bzw. des „Aussitzens“ von Verlusten auf Grundlage der Verteilungskurven der bestmöglichen Aus- (MFE) und Einstiegspunkte (MAE) beurteilt werden:

MFE/MAE-Verteilungsdiagramme

Bricht man die Ergebnisse noch weiter herunter, ergibt sich eine weitere Kurve:

Gewinnverteilung und Haltezeit der Positionen

Das Diagramm veranschaulicht die Abhängigkeit des Gewinns einer Position von ihrer Haltezeit. Es kommt gerade recht zur bevorstehenden Meisterschaft im automatischen Handel 2012. Eine der Teilnahmebedingungen verbietet das „Scalping“. Prüfen Sie Ihr Expert-System und vergewissern Sie sich, dass es den Regeln entspricht.


Filmische Rückschau oder grafische Überprüfung

Eine der revolutionären Eigenschaften des Strategieprüfprogramms ist die grafische Darstellung der Prüfung. Sie werden mir zustimmen, dass die Analyse von Abschlüssen anhand von Daten, die eigenhändige Erstellung von Diagrammen sowie ähnlich „interessante“ Routinevorgänge ein recht arbeitsaufwendiges Verfahren darstellen. Aber das Strategieprüfprogramm gibt Ihnen gleichsam das Bedienpult für ein Abspielgerät in die Hand, und Sie müssen lediglich die „Play“-Taste drücken, um sich eine filmische Rückschau anzusehen. Sie können in Zeitlupe schauen oder vorspulen, den Film anhalten und die Lage analysieren. In Echtzeit sehen Sie, wie Diagramme anhand modellierter Verlaufsdaten erstellt werden und wie ein automatisches Handelssystem auf Kursänderungen reagiert.


Die grafische Darstellung ist ebenso mehrwährungsfähig wie das Strategieprüfprogramm selbst. Das Expert-System im Film verwendet 4 Währungspaare für den Handel. Alle modellierten Kurse werden in der „Marktübersicht“ und den Diagrammen bereitgestellt.


Optimierungsergebnisse in 2D

Bevor wir zur dreidimensionalen Darstellung kommen, die neuerdings bei den großen Fernsehgeräteproduzenten recht gefragt ist, schauen wir uns kurz die Möglichkeiten der zweidimensionalen Ansicht im Strategieprüfprogramm an. Auf den ersten Blick unverständliche Rechtecke ermöglichen die Darstellung der gemeinsamen Beeinflussung des Optimierungskriteriums (in unserem Fall der höchste Wert des Guthabens) durch zwei Optimierungsparameter. Je dunkler das Grün desto höher der Wert des Guthabens:

Optimierungsergebnisse in 2D

Es ist zu erkennen, dass die Abhängigkeit irgendwie wellenförmig verläuft, und dass das höchste Ergebnis bei den Durchschnittswerten des Zeitraums und der Verlagerung des gleitenden Durchschnitts erreicht wird. Es handelt sich hierbei um die Optimierungsergebnisse für das im Lieferumfang der Hauptprogramminstanz enthaltene Expert-System Moving Average. Selbst hier findet man etwas Interessantes.


Jetzt auch in 3D

Eine noch größere Anschaulichkeit erzielen dreidimensionale Abbildungen. Unten sehen wir dieselbe Wechselwirkung der beiden zu optimierenden Kennziffern und das Ergebnis. Die Umschaltung auf diese erweiterte Darstellung erfolgt im Kontextmenü unter der Registerkarte Diagrammoptimierung.

Optimierungsergebnisse in 3D

Die dreidimensionale Optimierung war gerade im Strategieprüfprogramm von MetaTrader 5 erschienen, da wurden im Forum bereits von Händlern Beispiele für die grafische Darstellung mathematischer Berechnungen vorgestellt:

Die dreidimensionalen Diagramm sind vollständig interaktive, man kann sie vergrößern und verkleinern, um jeden gewünschten Winkel drehen usw. Nicht ganz unwichtig ist auch, dass alle Prüfungs- und Optimierungsergebnisse als Bilddateien oder Bericht im Format XML/HTML exportiert werden können.


Grafische Darstellung der Optimierung

Und zu guter Letzt begrüßen wir die Arbeit mit den Optimierungsergebnissen! Früher mussten die Händler zur Bearbeitung der Ergebnisse zunächst die Daten aufbereiten, sie irgendwohin herunterladen und irgendwo abseits verarbeiten. Heute macht man das an Ort und Stelle während der Optimierung! Zur Vorführung dieser Möglichkeit benötigen wir einige Include-Dateien mit den einfachsten Beispielen für eine derartige Verarbeitung.

Dazu laden wir die im Anhang zu diesem Beitrag angegebenen Dateien mit der Dateierweiterung MQH herunter und legen sie in dem Ordner MQL5\Include ab. In ein beliebiges Expert-System fügen wir am Ende von dessen Code folgenden Block ein:

//--- Add a code for working with optimization results
#include <FrameGenerator.mqh>
//--- генератором фреймов
CFrameGenerator fg;
//+------------------------------------------------------------------+
//| Tester function                                                  |
//+------------------------------------------------------------------+
double OnTester()
  {
//--- Insert here your own function for calculating the optimization criterion
   double TesterCritetia=MathAbs(TesterStatistics(STAT_SHARPE_RATIO)*TesterStatistics(STAT_PROFIT));
   TesterCritetia=TesterStatistics(STAT_PROFIT)>0?TesterCritetia:(-TesterCritetia);
//--- Call at each end of testing and pass the optimization criterion as a parameter
   fg.OnTester(TesterCritetia);
//---
   return(TesterCritetia);
  }
//+------------------------------------------------------------------+
//| TesterInit function                                              |
//+------------------------------------------------------------------+
void OnTesterInit()
  {
//--- Prepare the chart to show the balance graphs
   fg.OnTesterInit(3); //The parameter sets the number of balance lines on the chart
  }
//+------------------------------------------------------------------+
//| TesterPass function                                              |
//+------------------------------------------------------------------+
void OnTesterPass()
  {
//--- Process the testing results and show the graphics
   fg.OnTesterPass();
  }
//+------------------------------------------------------------------+
//| TesterDeinit function                                            |
//+------------------------------------------------------------------+
void OnTesterDeinit()
  {
//--- End of optimization
   fg.OnTesterDeinit();
  }
//+------------------------------------------------------------------+
//|  Handling of events on the chart                           |
//+------------------------------------------------------------------+
void OnChartEvent(const int id,const long &lparam,const double &dparam,const string &sparam)
  {
   //--- Starts frames after the end of optimization when clicking on the header
   fg.OnChartEvent(id,lparam,dparam,sparam,100); // 100 is a pause between frames in ms
  }
//+------------------------------------------------------------------+

Für das Beispiel haben wir das Expert-System Moving Averages.mq5 aus dem üblichen Lieferumfang gewählt. Wir fügen den Code ein und speichern das Expert-System als Moving Averages With Frames.mq5. Danach stellen wir die Optimierung zusammen und führen sie aus.


Auf diese Weise haben Händler jetzt die Möglichkeit, eine anschauliche Optimierung durchzuführen und deren Ergebnisse bereits zu bearbeiten, während sie läuft, oder sich die erforderlichen Informationen anzeigen zu lassen.


Was kann ein Händler mehr verlangen?

Wir entwickeln die Möglichkeiten der Handelsplattform MetaTrader 5 ständig weiter, indem wir neue Werkzeuge für die Händler hinzufügen. Schreiben Sie Kommentare zu diesem Beitrag und teilen Sie uns mit, wie wir die grafische Darstellung im Strategieprüfprogramm weiter verbessern können. Wir werden uns bemühen, die interessantesten und hilfreichsten Anregungen umzusetzen.


Zur Verwendung der Dateien

Alle Dateien mit der Erweiterung .mqh gehören in den Ordner MQL5\Include, denn dort sucht sie das Kompilierprogramm bei der Erstellung des Expert-Systems Moving Average_With_Frames.mq5. Die Dateien des Expert-Systems können in dem Ordner MQL5\Experts oder einem beliebigen seiner Unterordner abgelegt werden.

Rufen Sie selbst die angehängten Expert-Systeme im Strategieprüfprogramm von MetaTrader 5 auf, um die Lektüre dieses Beitrages noch etwas interessanter zu gestalten. Das wird Ihnen sicher gefallen.

Übersetzt aus dem Russischen von MetaQuotes Ltd.
Originalartikel: https://www.mql5.com/ru/articles/403

Beigefügte Dateien |
multimovings.mq5 (10.95 KB)
simpletable.mqh (10.79 KB)
specialchart.mqh (7.79 KB)
framegenerator.mqh (15.08 KB)
Gewinnbringende Algorithmen mit Trailing Stops Gewinnbringende Algorithmen mit Trailing Stops
Ziel dieses Artikels ist die Untersuchung der Einträglichkeit von Algorithmen mit unterschiedlichen Geschäftsein- und Ausstiegen anhand von automatisch nachgezogenen Verlustgrenzen (Trailing Stops). Die verwendeten Einstiegsarten sind zufälliger (random entry) und gegenläufiger Einstieg (reverse entry) und die verwendeten Stop-Grenzen die nachgezogene Verlust- (Trailing Stop) und die nachgezogene Gewinngrenze (Trailing Take). In dem Beitrag werden gewinnbringende Algorithmen mit einer Jahresertragsrate von etwa 30 % vorgestellt.
MetaTrader 5 - Jenseits aller Vorstellungen! MetaTrader 5 - Jenseits aller Vorstellungen!
Die Plattform MetaTrader 5 wurde aus dem nichts entwickelt und übertrifft ihre Vorgänger natürlich bei Weitem. Die neue Handelsplattform bietet unbegrenzte Möglichkeiten für den Handel auf allen Finanzmärkten. Darüber hinaus wird ihr Funktionsumfang ständig erweitert, um immer mehr nützliche Instrumente und eine immer größere Benutzerfreundlichkeit zu bieten. Deshalb ist es nicht ganz einfach, all die zahlreichen Vorzüge von MetaTrader 5 aufzuzählen. Wir haben uns bemüht, sie in einem Artikel kurz darzustellen, und waren überrascht, dass der Beitrag alles andere als kurz geraten ist.
Erstellung eines automatischen Handelssystems ohne Zeitverlust Erstellung eines automatischen Handelssystems ohne Zeitverlust
Der Handel auf den Finanzmärkten ist mit einer Vielzahl von Risiken verbunden, unter denen das gefährlichste darin besteht, eine falsche Handelsentscheidung zu treffen. Jeder Händler träumt davon, sich selbst durch ein automatisches Handelssystem zu ersetzen, eine Maschine, stets in Bestform, unerschöpflich und frei von menschlichen Schwächen wie Angst, Raffgier und Ungeduld.
In 6 Schritten zum eigenen automatischen Handelssystem! In 6 Schritten zum eigenen automatischen Handelssystem!
Wenn Sie nicht wissen, wie Handelsklassen aufgebaut sind, und Wörter wie „objektorientierte Programmierung“ (OOP) Sie verunsichern, ist dieser Beitrag genau das Richtige für Sie. Denn Sie müssen wirklich nicht alle Einzelheiten kennen, um Ihr eigenes Handelssignalmodul zu programmieren, sondern lediglich ein paar einfache Regeln befolgen. Alle weitere erledigt der MQL5-Assistent für Sie, und am Ende haben Sie ein einsatzbereites automatisches Handelssystem, einen Expert Advisor!