Maschinelles Lernen für Roboter

 

Hallo zusammen, ich beschäftige mich mit dem maschinellen Lernen (ML) von EAs und Indikatoren und habe beschlossen, meine Experimente der Öffentlichkeit zur Diskussion zu stellen.

Zu den Experimenten gehören das Erstellen von Ausgangsaufgaben - Vorlagen, maschinelles Lernen, das Erstellen von Robotern - EAs oder Indikatoren - und das Testen dieser.

Um es auszuprobieren, habe ich alle genannten Schritte bereits im entsprechenden Thread des MO-Forums durchgeführt und sogar Teilnehmer eingeladen, aber leider fand es dort keine Resonanz, anscheinend sind theoretische, wissenschaftliche Diskussionen zum Thema dort interessanter. https://www.mql5.com/ru/forum/86386/page1035#comment_8231641

Deshalb habe ich beschlossen, einen neuen Thread im Bereich Roboter zu erstellen und es noch einmal zu versuchen, diesmal mit der Einladung an alle, auch an diejenigen, die nichts mit DOD zu tun haben, sich an dem Experiment zu beteiligen.
Auch hier sind für die Teilnahme an dem Experiment keine besonderen Fähigkeiten oder Kenntnisse auf dem Gebiet der MO oder der Programmierung erforderlich, sondern nur Autotrading.

Nun geht es an die Organisation und Diskussion von Experimenten:

  • Jeder willige Autor erstellt Vorlagen mit den Handelssignalen seiner Strategie und postet sie in diesem Thread.
  • Ich bearbeite Vorlagen, erstelle Expert Advisors oder Indikatoren und stelle sie hier zusammen.
  • Allen anderen steht es frei, Vorlagen und Roboter herunterzuladen, sie zu testen und ihre Expertenmeinung abzugeben.

Um den Anforderungen des Autors gerecht zu werden, sind alle Handelsroboter nur für die Verwendung auf MetaQuotes-Demo gesperrt. Sie können ihre Verwendung auch auf die von den Autoren angegebenen Handelsinstrumente beschränken.
Bewertungen können auf der Grundlage von Testergebnissen vorgenommen werden, und nur Autoren können Quellcodes erhalten.

Um Sie zu motivieren, an dem Experiment teilzunehmen, zeige ich Ihnen Screenshots des Vorwärtstests des EA_EURUSD_H1_RF unter dem angegebenen Link.

Dies ist das Ergebnis des gesamten vorderen Abschnitts, in dem noch kein Training stattgefunden hat.

Jeder kann dieses Ergebnis auf MetaQuotes-Demo überprüfen und die weitere Handelsdynamik in der Zukunft beobachten.

Машинное обучение в трейдинге: теория и практика (торговля и не только)
Машинное обучение в трейдинге: теория и практика (торговля и не только)
  • 2018.07.31
  • www.mql5.com
Добрый день всем, Знаю, что есть на форуме энтузиасты machine learning и статистики...
 
Ivan Negreshniy:

Jetzt geht es darum, Experimente zu organisieren und zu diskutieren:

  • Jeder willige Autor erstellt Vorlagen mit Handelssignalen seiner Strategie und postet sie in diesem Thread.
  • Ich bearbeite die Vorlagen, erstelle Expert Advisors oder Indikatoren und stelle sie hier in zusammengestellter Form ein.
  • Allen anderen steht es frei, Vorlagen und Roboter herunterzuladen, sie zu testen und ihre Expertenmeinung abzugeben.

Um das Urheberrecht zu respektieren, werden alle Roboter für die Verwendung nur auf MetaQuotes-Demo gesperrt. Falls gewünscht, können Sie die Verwendung auch auf die von den Autoren angegebenen Handelsinstrumente beschränken.
Die Bewertungen können auf der Grundlage der Testergebnisse festgelegt werden, und nur den Autoren kann der Quellcode persönlich zur Verfügung gestellt werden.

Ich möchte Sie enttäuschen, aber Sie werden sie nicht in kompilierter Form herunterladen können. Ja, es gibt kein solches Verbot in den Forenregeln, aber dieser Thread wird gelöscht. Vor kurzem wurde ein ähnliches Experiment im englischen Teil durchgeführt. Schauen Sie in meine persönliche Nachricht, ich werde dort Empfehlungen schreiben, wo es möglich ist.

 
Alexey Volchanskiy:

Ich möchte Sie enttäuschen, in kompilierter Form werden Sie hier nicht zugelassen werden. Ja, es gibt kein solches Verbot in den Forenregeln, aber der Thread wird gelöscht. Vor kurzem wurde ein ähnliches Experiment im englischen Teil durchgeführt. Schauen Sie in meinem persönlichen Konto nach und ich werde Ihnen Empfehlungen geben, wo Sie das tun können.

Danke, aber ich habe einen anderen Fall - der Quellcode wird automatisch von der Vorlage des Autors generiert, und ich kann ihn theoretisch nur an den Autor weitergeben, der dann selbst entscheidet, ob er ihn veröffentlicht.
 

Die Aktivität der Versuchsteilnehmer ist noch nicht aus dem Ruder gelaufen, aber der Test EA zeigt weiterhin 100% Rentabilität:)

...bereits 11 Trades im Gewinn, dies mit einer Trainingsstichprobe von weniger als tausend Signalen und einer Trainingszeit von nur ein paar Sekunden.

 

Ich empfehle die Verwendung des Expert Advisors makeSignals, der die Handelssignale in Form von Pfeilen auf dem Chart darstellt.

Sobald die Signale angewendet wurden, kann ein Händler sie bewerten, korrigieren, indem er sie verschiebt, entfernt oder neue hinzufügt, und dann alles in der Vorlagendatei speichern (Menü - Charts/Vorlage/Vorlage speichern...).

Der Expert Advisor hat die folgenden Einstellungen:

  • Anzahl der Signalbalken - Anzahl der Balken, nach denen das Signal berechnet wird
  • Kaufsignal Pips - geschätzte Anzahl von Gewinnpunkten für das Kaufsignal
  • Verkaufssignal Pips - berechnete Anzahl der Gewinnpunkte für das Verkaufssignal
  • Startdatum Uhrzeit - Beginn eines Zeitraums, in dem Signale berechnet und angewendet werden
  • Enddatum Zeit - Enddatum des Zeitraums, in dem die Signale berechnet und angewendet werden
  • Art der Pfeilzeichnung - Art des grafischen Objekts - Pfeile, die zum Zeichnen von Signalen verwendet werden
  • Typ des verwendeten Indikators - Typ des Indikators, der zum Filtern von Signalen verwendet wird
  • Alles löschen beim Beenden - Löschen aller grafischen Objekte beim Trennen des Expert Advisors

Der Expert Advisor sucht innerhalb eines bestimmten Intervalls alle Signale, die den berechneten Parametern (Anzahl der Balken und Anzahl der Pips) entsprechen, und kann sie auch filtern, wenn Sie den verwendeten Indikator auswählen, von denen bisher nur zwei zur Verfügung stehen - der ZigZag-Indikator und der Crossover von Slow und Fast EMA.

Informationen zu den Signalen werden in der Kommentarzeile angezeigt - es handelt sich um das Intervall, die Größe in Punkten und die aktuelle Anzahl der KAUF- bzw. VERKAUFssignale.


Dateien:
makeSignals.mq4  16 kb
 
Ivan Negreshniy:

Jetzt geht es darum, Experimente zu organisieren und zu diskutieren:

  • Jeder willige Autor erstellt Vorlagen mit Handelssignalen seiner Strategie und postet sie in diesem Thread.
  • Ich bearbeite die Vorlagen, erstelle Expert Advisors oder Indikatoren und stelle sie hier in zusammengestellter Form ein.
  • Allen anderen steht es frei, Vorlagen und Roboter herunterzuladen, sie zu testen und ihre Expertenmeinung abzugeben.

Es ist nicht klar, wie eine Vorlage aussehen soll - ein nacktes Diagramm mit Auf- und Abwärtspfeilen? Oder ist es erforderlich, die Indikatoren beizufügen, auf deren Grundlage die Signale erzeugt wurden?

 
Aleksey Vyazmikin:

Es ist nicht klar, was die Vorlage sein soll - ein einfaches Diagramm mit Auf- und Abwärtspfeilen? Oder ist es erforderlich, die Indikatoren, aus denen die Signale generiert wurden, beizufügen?

Die Vorlage kann beliebige Indikatoren, grafische Layouts usw. enthalten, aber bei der Generierung des Roboters werden nur Signale verwendet, d. h. mehrere Pfeiltypen (siehe Pfeilzeichnungstyp - EA makeSignals).

Vielleicht werden wir im Laufe des Experimentierens einige andere Elemente von Handelsstrategien formalisieren, so dass sie auch in Vorlagen und Codegenerierung einbezogen und verwendet werden können.


PS: Es gibt auch spezielle Vorlagen, die etwas andere Formate und Signale haben, wie z.B. visuelle Testcharts von EAs, Handelshistorie und andere, mit solchen Vorlagen müssen wir Experimente ein bisschen anders durchführen, aber darüber werde ich separat schreiben.

 
Ivan Negreshniy:

Die Vorlage kann beliebige Indikatoren, grafische Layouts usw. enthalten, aber nur Signale, d.h. es werden mehrere Pfeiltypen bei der Generierung des Roboters verwendet (siehe Pfeilzeichnungstyp - EA makeSignals).

Vielleicht werden wir im Laufe des Experimentierens einige andere Elemente von Handelsstrategien formalisieren, so dass sie auch in Vorlagen und bei der Codegenerierung verwendet werden können.

Erzählen Sie uns etwas über die Verarbeitung dieser Pfeile. Es ist nicht ganz klar, wie Algorithmen auf der Grundlage dieser Pfeile erstellt werden, welche Merkmale verwendet werden, um diese Pfeile zu verbinden, wie Muster gebildet werden. Wenn ich es richtig verstanden habe, sollen die Pfeile auch außerhalb des Template-Markup platziert werden.

 
Aleksey Vyazmikin:

Erzählen Sie uns etwas über die Verarbeitung dieser Pfeile. Es ist nicht ganz klar, wie Algorithmen auf der Grundlage dieser Pfeile erstellt werden, welche Merkmale verwendet werden, um diese Pfeile zu verbinden, wie Muster gebildet werden. Wenn ich es richtig verstanden habe, sollen die Pfeile auch außerhalb des Template-Markup platziert werden.

Ich habe es bewusst einfach gehalten, um niemanden mit den Feinheiten des maschinellen Lernens - Arbeit mit Prädiktoren, Modellen usw. - zu überfordern oder zu verängstigen, denn eigentlich sind nur die Zielsignale absolut notwendige Eingabedaten, und der Rest kann anders ausgewählt und iteriert werden, im Idealfall sogar automatisiert. Die Hauptsache ist, dass der Autor der Vorlage sich auf die richtige Anordnung der Signale konzentriert, entsprechend seiner Erfahrung und Strategie, unter Berücksichtigung von Handelszyklen, Sitzungen, Nachrichten usw., um Ausnahmen zu machen und Indikatoren zu korrigieren usw.

Als jemand, der mit dem MO vertraut ist, kann ich Ihnen sagen, dass wir in diesem Stadium der Algorithmusentwicklung Muster mit mehreren Varianten von Formeln für die Berechnung von Bar- und Volumenpreisattributen und mehrere Variantenvon Regressionsmodellen, die serialisierbar und in MQL konvertierbar sind, als Prädiktoren verwenden. Kurz gesagt, erstellen Sie Ihre eigene Autorenvorlage, ich werde sie für Sie generieren, und dort, im Quellcode, werden Sie als Programmierer selbst sehen.

 
Ivan Negreshniy:

Ich habe mich bewusst dafür entschieden, die Dinge nicht zu verkomplizieren, um niemanden mit allen möglichen Feinheiten des maschinellen Lernens - Arbeit mit Prädiktoren, Modellen usw. - zu überfordern oder zu verschrecken. Tatsächlich sind die absolut notwendigen Eingabedaten nur Zielsignale, und der Rest kann auf verschiedene Weise ausgewählt, wiederholt und idealerweise automatisiert werden. Die Hauptsache ist, dass der Autor der Vorlage sich auf die richtige Anordnung der Signale konzentriert, entsprechend seiner Erfahrung und Strategie, unter Berücksichtigung von Handelszyklen, Sitzungen, Nachrichten usw., um Ausnahmen zu machen und Indikatoren zu korrigieren usw.

Als jemand, der mit dem MO vertraut ist, kann ich Ihnen sagen, dass wir in diesem Stadium der Algorithmusentwicklung Muster mit mehreren Varianten von Formeln für die Berechnung von Bar- und Volumenpreisattributen und mehrere Varianten von Regressionsmodellen verwenden, die serialisiert und in MQL konvertiert werden. Kurz gesagt, erstellen Sie Ihre eigene Autorenvorlage, ich werde sie für Sie generieren, und dort, im Quellcode, werden Sie als Programmierer selbst sehen.

Wenn Sie den Prozess, von dem Sie sprechen, automatisiert haben, dann sollten Sie vielleicht auf den Signaldienst achten (der Einfachheit halber ohne Martin) und versuchen, dort Ziele auszuwählen?

Nun, die Pfeile zu setzen mühsam, kann ich eine Vorlage nach der Prüfung mit Pfeilen aus dem Handel fallen, wird es gehen?

Allerdings möchte ich klarstellen, dass es auf die Kontrolle der Position? Ich habe nur keinen mit festem Start- und Endpunkt - meine Ausfahrt erfolgt immer mit dem Schleppnetz.

 
Aleksey Vyazmikin:

Wenn Sie den Prozess, von dem Sie sprechen, automatisiert haben, dann sollten Sie vielleicht auf den Signaldienst achten (der Einfachheit halber ohne Martin) und versuchen, dort Ziele auszuwählen?

Nun, die Pfeile zu setzen mühsam, kann ich eine Vorlage nach der Prüfung mit Pfeilen aus dem Handel fallen, wird es gehen?

Allerdings möchte ich klarstellen, dass es auf die Kontrolle der Position? Ich habe nur keinen mit festem Start- und Endpunkt - meine Ausfahrt erfolgt immer mit dem Schleppnetz.

Was die Signale betrifft, so kann die Vorlage direkt aus dem Terminal-Panel über die Schaltfläche <Im Chart anzeigen> und über den verfügbaren EA abgerufen werden, nachdem der Test mit aktivierter Visualisierung durchgeführt wurde, und beide speziellen Vorlagen eignen sich gut für die Codegenerierung, aber wie bereits erwähnt, ist dies ein etwas anderes Thema.

Da es besser wäre, Filter zur Verbesserung der ursprünglichen EAs zu generieren als neue EAs auf der Grundlage solcher Vorlagen zu erstellen, möchte ich dieses Thema noch nicht ansprechen, da es unnötige Verwirrung stiften würde.

Ich denke, wir sollten Experimente mit Beispielen für die einfachsten EAs beginnen.

Sie können makeSignals für die Automatisierung von Pfeilen verwenden - https://www.mql5.com/ru/forum/270216#comment_8277261

Was das Schleppnetz angeht, können wir die Einstellungen der generierten EAs verwenden, siehe EA_EURUSD_H1_RF als Beispiel.

Машинное обучение роботов
Машинное обучение роботов
  • 2018.08.02
  • www.mql5.com
Привет всем, я занимаюсь машинным обучением (МО) советников и индикаторов и решил вынести на всеобщее обсуждение свои эксперименты...