Schau, wie man Roboter kostenlos herunterladen kann
Finden Sie uns auf Facebook!
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

SelfLearningExperts - Experte für den MetaTrader 5

Ansichten:
1719
Rating:
(53)
Veröffentlicht:
2016.05.12 08:33
Aktualisiert:
2016.11.22 07:34
Benötigen Sie einen Roboter oder Indikator, der auf diesem Code basiert? Bestellen Sie ihn im Freelance-Bereich Zum Freelance

Dieser Expert Advisor wurde neu geschrieben und stammt ursprünglich aus MQL4. Der Autor ist lsv, Hier der Link zu dem Quellcode - https://www.mql5.com/ru/code/9431.

Wie er funktioniert:

Dieser Expert Advisor arbeitet mit Tickdaten, unabhängig von der Timeframe. Es zählen hier lediglich die durch die Kurse geformten Muster. Es werden mehrere Muster mit unterschiedlichen Parametern gebildet. Die Anzahl der Muster wird in der Nidelt Variable festgelegt. Für das erste Muster wird der dstop Parameter verwendet, für das zweite Muster - dstop*2, etc. bis dstop*N, wobei N - die Anzahl an Mustern ist. Wenn sich der Preis um dstop*N verändert hat, wird damit ein neuer Punkt eines Musters festgehalten. Dabei wird der letzte Punkt immer gelöscht und somit hat das Muster immer eine feste Länge von Nidelt Punkten. Die Höhe der Wert für das Muster ist, umso weiter reicht es in die Vergangenheit zurück. Somit wird der Markt gleichzeitig mit verschieden tiefen Blicken in die Vergangenheit abgetastet.

Wenn sich Muster ändern (Änderungen in der Marktsituation), Dann wird eine virtuelle Position geöffnet. Die Aufgabe dabei ist es, eine Position mit einer bestimmten Marktsituation in Verbindung zu bringen. Dieses geschieht auf die Folgende Art und Weise: Muster von Kursen werden in eine binäre Sequenz zerlegt. Wenn der Wert eines Punktes höher ist als der vorherige, dann ist der Wert 1, andernfalls 0. In dieser Sequenz wird eine eindeutige Muster-Nummer berechnet (Dieses bedeutet also eine Konvertierung von binären Daten in dezimale Werte).

Es können bis zu drei virtuelle Positionen mit unterschiedlichen Stop Loss und Take Profit geöffnet werden, wobei die Stop Loss und Take Profit Werte die gleiche Größe haben. Die Stop Loss/Take Profit Werte werden über den dstop-Parameter angegeben, Für die erste Position wird dstop*1 verwendet, für die nächste wird dstop*2 verwendet und so weiter. Wenn der Kurs bei einem bestimmten Muster und Stop Loss/Take Profit Wert nach oben geht, wird sein Wahrscheinlichkeitswert für steigende Kurse erhöht, wenn der Kurs nach unten geht wird der Wahrscheinlichkeit für fallende Kurse erhöht. Für jeden der drei Muster wird eine virtuelle Position geöffnet: Muster-Parameter, Muster-Nummer (seine Form) und für jeden Wert von Stop Loss/Take Profit. Also wird für jede dieser Kombinationen ein virtueller Trade mit einer Wahrscheinlichkeit für steigende oder fallende Kurse berechnet.

Wenn durch die Kombination der drei Parameter (parameter, number, Stop Loss/Take Profit) mindestens zehn virtuelle Transaktionen erzeugt worden sind und die gleiche Situation am Markt erneut auftritt (Die Parameter und Zahlenmuster werden automatisch erkannt), dann können wir das Öffnen einer Position in die Richtung der berechneten Wahrscheinlichkeit in Betracht ziehen.

Das Sammeln der statistischen Daten benötigt viel Zeit. Wie der Autor des Artikel ist schreibt: "Es kann einige Wochen in Anspruch nehmen". Dieser Prozess kann mithilfe des Strategietesters beschleunigt werden. Allerdings muss man im Kopf behalten, dass die Tickdaten des Testers von dem realen Marktdaten im hohen Maße abweichend. Daher empfiehlt der Autor die folgende Vorgehensweise: Zunächst sollte der Expert Advisor im Tester laufen gelassen werden und anschließend für mindestens noch eine Woche auf einen Demo-Account. Sollte der Expert Advisor positive Ergebnisse liefern (Dieses muss man ein wenig studieren), Dann könnte es möglich sein ihn auf einem realen Account laufen zu lassen.

Vorbereiten des Expert Advisors

Die erste Stufe der Vorbereitung des Expert-Advisors ist die Optimierung seiner Parameter: Nidel, Nstop, dstop, forg, Probab, NN, delta. Auf dieser Stufe wird die Optimierung mit ausgeschalteten Parametern ReadHistory und SaveHistory durchgeführt. Nach dem eine akzeptable Kombination von Parameterdaten gefunden wurde, ist es notwendig einen Test mit SaveHistory=true durchzuführen. Anschließend sollte der Expert Advisor auf einem Account mit ReadHistory=true gestartet werden - Der Expert Advisor startet augenblicklich mit seiner Arbeit, sofern er genügend statistische Daten gesammelt hat. Wenn sie auf einen Account arbeiten, sollte der SafeHistory 'an' sein, damit automatisch alle Daten gespeichert werden und im Falle eines Neustarts diese wieder geladen werden können.

Wenn SaveHistory Im Tester verwendet wird, dann werden die erlernten Daten in der Datei FD_[Symbol] gespeichert. Wenn Sie den Expert Advisor mit dem Symbol EURUSD testen, dann hat die Datei den Namen «FD_EURUSD», wenn sie mit GBPUSD testen – dann hat sie den Namen «FD_GBPUSD», etc. Alle Dateien werden in dem 'Common' Dateiordner der Terminals abgespeichert. Sie können dieses Verzeichnis über das Hauptmenü im MetaEditor öffnen – "open general data folder". Aus diesem Verzeichnis werden die Daten auch mit der Funktion ReadHistory gelesen.

Außer den Lernergebnissen speichert der Expert Advisor noch zwei weitere Dateien, die für den Handelsprozess notwendig sind. Die Dateien haben die Namen: FDlast_buy[Symbol][TimeFrame], und FDlast_sell[Symbol][TimeFrame]. Diese Dateien brauchen Sie nicht zu beachten.

Die Timeframe des Expert Advisors bestimmt lediglich die Periode für das Lernen von Daten, das Speichern und den minimalen Abstand zwischen virtuellen Transaktionen. Es ist gleich der Dichte von zwei Bars, daher kann es zu Unterschieden in den Ergebnissen von Expert Advisorn auf verschiedenen Timeframes kommen.

Das nachfolgende Bild zeigt die Ergebnisse des Expert Advisors mit EURUSD M15 und den voreingestellten Parameter-Daten.

 

Parameter:

  • ReadHistory - Lesen der gelernten historischen Daten.
  • SaveHistory - Abspeichern der gelernten Daten. Während des Testvorgangs werden die gelernten Daten bis zum Ende des Tests gespeichert, wenn Sie auf einem Account arbeiten.
  • Lots - Positionsgröße.
  • Nidelt - Anzahl der Muster, maximal 30.
  • Nstop - Anzahl der virtuellen Positions-Parameter (Unterschiedliche Werte für Stop Loss und Take Profit, Stop Loss und Take Profit sind gleich), 1, 2 oder 3.
  • dstop - Schrittweite für die Veränderung der Parameter der virtuellen Positionen (Stop Loss und Take Profit).
  • forg - Die Rate für das Vergessen von erlernten Ergebnissen. Dieser Wert sollte ein wenig größer als 1 sein.
  • Probab - Wahrscheinlichkeitsgrad definiert durch die Lernergebnisse auf welcher Position eröffnet werden.
  • NN - Die Größe des Musters. Maximal 12.
  • delta - Die Schrittweite für die Veränderung der Muster-Parameter.
  • ReplaceStops - Für die Modifizierung von Stop Loss/Take Profit bei neuen Signalen. Eine Veränderung von Stop Loss/Take Profit wird nur in Handelsrichtung ausgeführt.
  • Trailing - Trailingstop-Level; Wenn der Wert 0 ist, wird diese Funktion nicht verwendet.

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

Lucky Lucky

Einfacher Scalper

GO GO

Lisa Expert Advisor analysiert vier gleitende Durchschnitte: open, high, low, close. Er berechnet den GO Wert und öffnet entsprechen dieses Wertes eine Position

Exp_BuySell Exp_BuySell

Ein Handelssystem welches auf den Signalen des BuySell semaphore Signal Trend Indikators basiert

iAlligator_HTF iAlligator_HTF

Der Alligator von Bill Williams gezeichnet als Zigzag-Form. Dieser Indikator wird mit einer festen Timeframe verwendet und berechnet.