Maschinelles Lernen im Handel: Theorie, Modelle, Praxis und Algo-Trading - Seite 3242

 
Renat Fatkhullin #:
Das Testsystem wird aus drei Komponenten bestehen:
1) unserer Einzelroboter-Vorlage
2) Ihrem model.mq5-Wrapper im Quellcode, der die Dateneingabe/-ausgabe an das ONNX-Modell, die Interpretation der Ergebnisse und die Handelsgenerierung ermöglicht
3) model.onnx - Ihr neuronales Modell

Eine weitere Frage zu MM: Wird es hier irgendwelche Einschränkungen geben?

 
Maxim Dmitrievsky #:
Ich bin erstaunt über den Wunsch der Kahnfahrer, sich auf Kosten der Misserfolge anderer zu behaupten, da sie aufgrund ihrer uninteressanten Existenz anscheinend nicht genug eigene haben :))
Es scheint, dass sie sich auf diese Weise als große Praktiker des Handels fühlen können, wenn vernünftigere Wege aus offensichtlichen Gründen nicht zur Verfügung stehen).
 
Aleksey Vyazmikin #:

Eine weitere Frage von MM: Wird es hier irgendwelche Einschränkungen geben?

Ich habe auch sofort an die Notwendigkeit von Martingalen gedacht).
 
Mein Verständnis:
Die Robotervorlage sollte als Fragment des
Code in die *.mq5-Datei eingefügt werden, während eine Prüfung von MQLInfoInteger() für das Attribut
MQL_TESTER?
 
Maxim Dmitrievsky #:

... Neuronale Netze sind wahrscheinlich schwieriger, vielleicht nur in Python.

Jede Vorverarbeitung auf der Ausführungsebene eines bereits trainierten Modells ist normalerweise recht einfach und kann in einem anderen NPS neu geschrieben werden.

1. Es gibt kein Problem mit neuronalen Netzen in R. Es gibt ein portiertes Torch(1.13.1), und es gibt H2O. Beide können mit ein wenig Gymnastik in ONNH konvertiert werden.

2. Die Komplexität des Preprocessings hängt von den Kenntnissen und Fähigkeiten des Programmierers ab. Und nicht "jede" kann umgeschrieben oder in ONH umgewandelt werden.

Die Frage nach dem Wettbewerb ist eine andere:

  • Wird es möglich sein, eigene Prädiktoren zu verwenden, oder wird jeder einige allgemeine Prädiktoren verwenden, die von den Entwicklern vorgeschlagen werden.
  • Wenn die Tests auf der Grundlage der Geschichte des Jahres 2023 durchgeführt werden, für welchen Zeitraum sollen die Modelle trainiert werden? Es ist möglich, ein Modell vorzulegen, das für denselben Zeitraum trainiert wurde und im Test gute Ergebnisse zeigt. Wie testen Sie dies?

" ONNX kann mit einer speziellen Programmiersprache für mathematische Funktionen verglichen werden. Sie definiert alle notwendigen Operationen und das Machine Learning Model sollte die Ausgabefunktion mit dieser Sprache implementieren". Wenn wir berücksichtigen, dass diese "Sprache" ständig erweitert wird und sich ziemlich schnell verändert, dann werden die Probleme mit dem Debugging des ONNX-Codes selbst und seiner Implementierung in der MCL ein Meer von verlorener Zeit sein.

Ansonsten ist die Idee für diejenigen interessant, die viel freie Zeit haben.

Viel Erfolg!

 
Ich sage Ihnen, Docker ist die wahre Lösung.
Jeder Code, jede Sprache, jede Bibliothek.

Aber das ist nicht der Fall.
 
Vladimir Perervenko #:
  • Ist es möglich, eigene Prädiktoren zu verwenden, oder wird jeder einige der von den Entwicklern vorgeschlagenen Prädiktoren verwenden?
  • Wenn der Test für die Geschichte des Jahres 2023 durchgeführt wird, für welchen Zeitraum sollten die Modelle trainiert werden? Es ist möglich, ein Modell vorzulegen, das für denselben Zeitraum trainiert wurde und das im Test gute Ergebnisse zeigt. Wie werden Sie dies überprüfen?

Ich glaube, es wurde gesagt, dass Sie Ihre eigene mqh-Datei mit Ihrem eigenen Code verwenden können, so dass Sie Ihre eigenen Prädiktoren verwenden können, so wie ich es verstehe.

Aber noch einmal, wenn Sie spezielle Indikatoren benötigen, können Sie diese nicht über die Ressource.... anhängen.
 

Prüfen Sie die Vorlage auf einem Standard-MA, nur auf Ticks.

#include "EMA.mqh" // https://www.mql5.com/ru/code/download/22770/ema.mqh

input int inPeriod1 = 50;
input int inPeriod2 = 150;
input int inSensitivity = 100;

// https://www.mql5.com/ru/forum/86386/page3239#comment_49322318
double SignalONNX( const MqlTick &Tick )
{  
  static EMA EMA1(inPeriod1);
  static EMA EMA2(inPeriod2);
  static int Sensitivity = 0;
    
  const double Price = Tick.bid * Tick.ask;
  
  Sensitivity += Price ? 1 - ((EMA1.Get(Price) > EMA1.Get(Price)) << 1) : 0;  
  Sensitivity = MathMax(-inSensitivity, MathMin(Sensitivity, inSensitivity));

  return((Sensitivity == inSensitivity) ? 1 : -(Sensitivity == -inSensitivity));
} 



Arbeitsvorlage.
 
fxsaber #:

Überprüfung des Musters auf einem Standard-MA, nur auf Ticks.



Arbeitsmuster.

Jetzt auf echte Cents, 10 Pfund, vorzugsweise ohne Reinvestition.

und Sie werden verlieren, 100%.

denn imrealen Handel wird es viel mehr negative als positive Trades geben.

und das Epos mit dem glorreichen MO wird endlich vorbei sein.

 
Renat Akhtyamov #:

und das Epos mit dem illustren Verteidigungsministerium wird endlich zu Ende sein.

Der Berater hat nichts mit dem Verteidigungsministerium zu tun. Dies ist ein technischer Test der vorgeschlagenen Vorlage.

Warum man zur MO-Branche geht und berichtet, dass MO nicht funktioniert - ich weiß es nicht.

Grund der Beschwerde: