Diskussion zum Artikel "Erstellung einer Strategie der Rückkehr zum Mittelwert auf der Grundlage von maschinellem Lernen" - Seite 9
Sie verpassen Handelsmöglichkeiten:
- Freie Handelsapplikationen
- Über 8.000 Signale zum Kopieren
- Wirtschaftsnachrichten für die Lage an den Finanzmärkte
Registrierung
Einloggen
Sie stimmen der Website-Richtlinie und den Nutzungsbedingungen zu.
Wenn Sie kein Benutzerkonto haben, registrieren Sie sich
Guten Tag, Maxim. Guten Tag, verehrte Kollegen.
Ich habe eine brennende Frage.
Ich wollte den Bot um zusätzliche Funktionen erweitern (Ausgabe einer Position zu Breakeven und Trawl Sl), bin aber auf die Unmöglichkeit gestoßen, den Quellcode zu kompilieren (ich verwende den Standard-Compiler aus dem MT5-Paket).
Auch der Original-Quellcode , also reversion.mq5, den der Autor dem Artikel beigefügt hat, geht nicht durch .
Das Problem liegt in den Funktionen OnnxSetInputShape und OnnxSetOutputShape (Zeilen 51, 58, 66, 71). Laut der mql5-Hilfe sind die Eingabedaten für diese Funktionen drei Variablen: zwei vom Typ long und die dritte vom Typ const ulong. Dem Code des Expert Advisors zufolge sind jedoch die Variablen ExtInputShape, ExtInputShape2 und output_shape, die als Ausgangsvariablen in den betrachteten Funktionen verwendet werden, als const long initialisiert ( Zeilen 31, 32, 65).
Wenn der Datentyp der Variablen in const ulong geändert wird, ist die Kompilierung erfolgreich. Allerdings funktioniert der Bot nicht mehr "im Gewinn", d.h. der implementierte Handelsstrategie-Algorithmus wird nicht ausgeführt.
Bitte helfen Sie mir, dieses Problem zu lösen. Ich ziehe die Option mit einem externen Compiler an letzter Stelle in Betracht. Ist es möglich, mit Standard-MT5-Tools zu kompilieren, ohne die Korrektheit des Codes zu überprüfen?
Wenn der Datentyp der Variablen in const ulong geändert wird, ist die Kompilierung erfolgreich. Allerdings funktioniert der Bot nicht mehr "im Gewinn", d.h. der implementierte Handelsstrategie-Algorithmus wird nicht ausgeführt.
Bitte helfen Sie mir, dieses Problem zu lösen. Ich ziehe die Option mit einem externen Compiler an letzter Stelle in Betracht. Ist es möglich, mit Standard-MT5-Tools zu kompilieren, ohne die Korrektheit des Codes zu überprüfen?
Kind, versuchen Sie diese Option. Ich weiß nicht mehr, was ich außer ulong noch geändert habe. Ja, nach dem Update begannen einige ph-iases anders zu funktionieren als vorher.
Schreiben Sie in #define die Namen Ihrer Phasen aus Ihrer Include-Datei.Kind, versuchen Sie diese Option. Ich weiß nicht mehr, was ich außer ulong noch geändert habe. Ja, nach dem Update begannen einige ph-iases anders zu funktionieren als vorher.
Schreiben Sie in #define die Namen Ihrer Phasen aus Ihrer Include-Datei.Schönen Tag noch.
Ich habe es getan. Aber leider ist der Grund ein anderer. Ich füge Screenshots der Ergebnisse Ihrer kompilierten Version und der Version, in der die Variablentypen durch ulong ersetzt werden, bei.
Guten Tag.
Das habe ich. Aber leider ist der Grund ein anderer. Ich füge Screenshots der Ergebnisse Ihrer kompilierten Version und der Version, in der die Variablentypen durch ulong ersetzt werden, bei.
Verwenden Sie im Bot dieselbe Art von Attributen wie in der Schulung? Es kommt vor, dass Sie die Attribute im Python-Skript geändert haben, aber nicht im Inklulnik.
Wahrscheinlich. Denn ich ziehe die Modelldateien heran, die in der ursprünglichen Version des Bots enthalten waren.
Aber der Algorithmus des Modelltrainings befindet sich noch in der Phase des Studiums und der Realisierung. Ich habe keine Probleme mit Mql5, aber mit Python habe ich immer noch Schwierigkeiten, mich damit anzufreunden.
Wahrscheinlich. Denn die Modelldateien, die ich abrufe, sind die, die bei der ersten Veröffentlichung des Bots vorhanden waren.
Aber der Algorithmus für das Modelltraining befindet sich noch in der Studien- und Realisierungsphase. Ich habe keine Probleme mit Mql5, aber die Freundschaft mit Python ist immer noch ein bisschen schwierig.
Überprüft, alles funktioniert bei mir. Ich habe die Dateien der trainierten Modelle aus dem Artikel und dem aktualisierten Bot oben angehängt.
Es ist wünschenswert, die Modelle anschließend neu zu trainieren, da dem Artikel Demomodelle beigefügt sind. Wenn Sie das Python-Skript zu verstehen.
Überprüft, alles funktioniert bei mir. Beigefügt sind die Dateien der trainierten Modelle aus dem Artikel und der aktualisierte Bot oben.
Es ist wünschenswert, die Modelle anschließend neu zu trainieren, da dem Artikel Demomodelle beigefügt sind. Wenn Sie das Python-Skript verstehen.
Ja, in dieser Version kompiliert der Bot selbst und funktioniert korrekt. Aber die Modelle müssen neu trainiert werden. Und das sollte, so wie ich es verstehe, regelmäßig geschehen.
Ich komme langsam mit Python zurecht, aber ich habe noch nicht alles verstanden. Ich habe die Hauptversion von Rutop auf meinem Laptop ausgerollt und auf die aktuelle Version aktualisiert. Ich habe alle notwendigen Pakete installiert (pandas, numba, numpy, catboost, scipy, scikit-learn). Quotes heruntergeladen. Ich habe die Datei mit den Kursen und allen Skripten in den Ordner Files im Hauptkatalog von MT5 gelegt. Ich habe die Pfade in den Code des Modell-Trainingsskripts geschrieben. Aber etwas geht nicht zum Ergebnis.
Ich korrigiere den Skriptcode in MetaEditore. Ich versuche, das Skript von dort aus zu starten. Der Prozess stürzt mit einem Fehler ab (er findet das Bots-Paket Python nicht, und der Versuch, es nach dem Schema der Installation anderer Pakete zu installieren, endet ebenfalls mit einem Fehler). Derselbe Fehler tritt auf, wenn ich das Skript über die Python-Konsole ausführe.
Können Sie mir einen Tipp geben, in welche Richtung ich das Thema vertiefen kann?
Guten Tag!
Ja, in dieser Version kompiliert der Bot selbst und funktioniert korrekt. Aber die Modelle müssen neu trainiert werden. Und das sollte, so wie ich es verstehe, regelmäßig geschehen.
Ich komme mit Python gut zurecht, aber noch funktioniert nicht alles. Ich habe die Hauptversion von Rutop auf meinem Laptop installiert und sie auf die aktuelle Version aktualisiert. Ich habe alle notwendigen Pakete installiert (pandas, numba, numpy, catboost, scipy, scikit-learn). Quotes heruntergeladen. Ich habe die Datei mit den Kursen und allen Skripten in den Ordner Files im Hauptkatalog von MT5 gelegt. Ich habe die Pfade in den Code des Modell-Trainingsskripts geschrieben. Aber etwas geht nicht zum Ergebnis.
Ich korrigiere den Skriptcode in MetaEditore. Ich versuche, das Skript von dort aus zu starten. Der Prozess stürzt mit einem Fehler ab (er findet das Bots-Paket Python nicht, und der Versuch, es nach dem Schema der Installation anderer Pakete zu installieren, endet ebenfalls mit einem Fehler). Der gleiche Fehler tritt auf, wenn ich das Skript über die Python-Konsole ausführe.
Können Sie mir einen Tipp geben, in welche Richtung ich das Thema bearbeiten soll?
Bots ist nur das Stammverzeichnis (Ordner), in dem sich die Module aus dem Artikel befinden. Wenn das Skript sie beim Importieren von Modulen (zusätzliche Dateien) nicht sieht, dann schreiben Sie die vollständigen Pfade zu den Dateien.
Oder legen Sie alle diese Dateien in denselben Ordner wie das Hauptskript und tun Sie stattdessen dies:
Das kann passieren, wenn Sie bei der Installation von Python den PYTHONPATH nicht vorgeschrieben haben. Suchen Sie im Internet, um herauszufinden, wie Sie ihn für Ihr System vorgeben können. Das heißt, Python sieht die Dateien auf der Diskette nicht.
Oder lesen Sie einen Grundkurs über den Import von Modulen im Internet.
Bots ist lediglich ein Stammverzeichnis (Ordner), in dem sich die Module aus dem Artikel befinden. Wenn das Skript sie beim Importieren von Modulen (zusätzlichen Dateien) nicht sieht, schreiben Sie die vollständigen Pfade zu den Dateien.
Oder legen Sie alle diese Dateien in denselben Ordner wie das Hauptskript und tun Sie stattdessen dies:
Das kann passieren, wenn Sie bei der Installation von Python den PYTHONPATH nicht vorgeschrieben haben. Suchen Sie im Internet, um herauszufinden, wie Sie ihn für Ihr System vorgeben können. Das heißt, Python sieht die Dateien auf der Diskette nicht.
Oder lesen Sie einen Grundkurs über den Import von Modulen im Internet.
Guten Tag, Maxim. Ich danke dir. Fast alles ist gelöst. Die letzte Frage.
Es gibt kommentierte Zeilen (154-182) im Hauptskript für das Training von Modellen. Soweit ich weiß, handelt es sich dabei um alternative Deal Sampler (Markups). Aber ich kann sie nicht ausprobieren. Wenn eine der Markierungen unkommentiert ist (bedingt, Zeilen 154-158) und die ursprüngliche auskommentiert ist (Zeilen 149-153), startet das Skript nicht.
Woran kann das liegen, wo kann ich suchen?
Danke )
Guten Tag, Maxim. Ich danke Ihnen. Fast alles ist gelöst. Die letzte Frage.
Es gibt kommentierte Zeilen (154-182) im Hauptskript für das Training der Modelle. Soweit ich weiß, handelt es sich dabei um alternative Deal Sampler (Markups). Aber ich kann sie nicht ausprobieren. Wenn eine der Markierungen unkommentiert ist (bedingt, Zeilen 154-158) und die ursprüngliche kommentiert ist (Zeilen 149-153), startet das Skript nicht.
Woran kann das liegen, wo kann ich nachschauen?
Danke )
Hallo, Sie brauchen Protokolle dessen, was der Python-Interpreter schreibt.