Merkmale der Sprache mql5, Feinheiten und Techniken - Seite 71
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
fxsaber:
Diskussion des Artikels "Visualisierung der Handelsstrategieoptimierung im MetaTrader 5".
fxsaber, 2018.02.22 08:39
Im Rahmenmodus werden OnInit, OnDeinit, OnTick, OnTrade, OnTradeTransaction und OnTimer ignoriert. Nur OnChartEvent funktioniert.
Natürlich ist aufgrund von OnChartEvent eine obligatorische Überprüfung des Frame-Modus-Flags erforderlich.
Woher nehmen Sie dieses unbedingte Vertrauen? :-)
Wie können Sie so sicher sein? :-)
Aus der Praxis, natürlich.
Eine Frage also. Ist der Frame-Modus ein Modus, der sich allgemein auf Tests bezieht oder nicht?
Eine Frage also. Ist der Frame-Modus ein Modus, der generell für Tests gilt oder nicht?
Indirekt schon. Allerdings kann der Expert Advisor in diesem Modus nur vom Tester im Terminal gestartet werden.
GUT. Und wenn der Expert Advisor hat die OnTick() Handler, dann was, es wird nicht im Frame-Modus arbeiten?
Imho sollten wir hier klarstellen, dass Frame-Handler vom Terminal selbst ausgeführt werden, während alles, was zum Testen üblich ist (OnTick(), OnTrade() usw.), an Test-Agenten übergeben wird. ), werden an die Prüfer weitergegeben. Der Frame-Modus ist also ein spezieller zusammengesetzter Testmodus, bei dem die Agenten mit dem Terminal interagieren.
Es geht also folgendermaßen...
Forum zum Thema Handel, automatisierte Handelssysteme und Strategietests
Merkmale der Sprache mql5, Feinheiten und Tricks
fxsaber, 2018.02.22 09:22
Indirekt gilt sie. Allerdings kann der EA in diesem Modus nur vom Tester selbst im Terminal ausgeführt werden.
Und warum indirekt? Zum Beispiel kann eine normale Optimierung auch nur im Tester durchgeführt werden.
GUT. Und wenn der Expert Advisor hat die OnTick() Handler, dann was, es wird nicht im Frame-Modus arbeiten?
Imho sollten wir hier klarstellen, dass Frame-Handler vom Terminal selbst ausgeführt werden, während alles, was für das Testen üblich ist (OnTick(), OnTrade(), etc.), an Test-Agenten übergeben wird. ), werden an die Prüfer weitergegeben. Der Frame-Modus ist also ein spezieller zusammengesetzter Testmodus, bei dem die Agenten mit dem Terminal interagieren.
Das geht so.
Und warum indirekt? Zum Beispiel kann die normale Optimierung nur im Tester durchgeführt werden.
Denn es handelt sich um einen Kampfexperten-Berater, auch im Frame-Modus. Deshalb müssen wir das Frame-Flag in OnChartEvent überprüfen, da sonst diese Art von Problemen auftreten kann
Dies scheint das erste Mal zu sein, dass dies geäußert wird. Das bedeutet, dass Market Products eine unangenehme Schwachstelle schafft... Und es ist sehr schwer, diese Schwachstelle zu umgehen. Und es ist sehr schwierig, sie zu entdecken.
Weil es ein Kampf-EA ist, auch im Frame-Modus. Dies ist der Grund, warum Sie das Frame-Flag in OnChartEvent überprüfen müssen, da sonst diese Art von Problemen auftreten kann
Dies scheint das erste Mal zu sein, dass dies geäußert wird. Das bedeutet, dass Market Products eine unangenehme Schwachstelle schafft... Und diese Schwachstelle ist sehr schwer zu umgehen. Ähnlich schwierig ist es, sie zu erkennen.
Aber! Wenn das stimmt, dann ist es imho ein fehlerhafter Betrieb des EA im Testmodus...
Gut, dass Sie es bemerkt haben!
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Wanzen, Wanzen, Fragen
fxsaber, 2018.02.27 08:01
Schlussfolgerung zu EAs auf OBJ_CHART
Daher ist es möglich, jeden Expert Advisor zu einem vollwertigen Handelsinstrument zu machen, das auf jeder Art von Chart funktioniert (OnTimer + OnTick), indem man den entsprechenden Indikator einfügt(Beispiel).
Lf OBJ_CHART ist durch CHART_IS_OBJECT definiert.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Diskussion über "Verwaltete Optimierung: die Annealing-Methode"
fxsaber, 2018.02.28 08:45
Die Datei tester_file wird nur gelesen, wenn sie zum Zeitpunkt der Kompilierung vorhanden war (der Inhalt spielt keine Rolle).
Wenn mq5 kompiliert wird, obwohl es keine entsprechende Datei gab, wird auch deren weitere Existenz in EX5 nicht wahrgenommen.
Wenn Sie also in OnTesterInit eine Datei für tester_file erzeugen, stellen Sie sicher, dass Sie den Expert Advisor zumindest mit einer leeren übergebenen Datei kompilieren.
Wenn die Richtlinie tester_file vorhanden ist, funktionieren die Caches des Optimierers nicht.