MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge - Seite 16
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
Wenn dies die richtigen Formeln sind
Der Tester berechnet diese Zahlen ganz anders. Ich habe auffällige Unterschiede in den Ergebnissen zwischen diesen Formeln und dem, was der Tester anzeigt (abgesehen vom Gewinn).
Ich schlage vor, dass wir der Sache auf den Grund gehen. Der Haken an der Sache ist, was genau MT5 als profitablen Handel betrachtet.
Entfernen Sie einen oder beide auf einmal und vergleichen Sie.
Oder hier (falls die obigen Angaben nicht helfen) "=" entfernen
Worüber diskutieren wir jetzt? Deaktivieren von Agenten oder Zulassen der Verwendung von Zeichen bei Tests/Optimierung?
Wenn es zwei Probleme gibt, sollten wir wahrscheinlich beide diskutieren und lösen. Oder ist das unmöglich?
1. Warum werden die Agenten nach erfolgter Optimierung deaktiviert?
2. Was ist der Grund dafür, dass das automatische Hinzufügen von Zeichen zum Tester gestoppt wurde?
Entfernen Sie einen oder beide auf einmal und vergleichen Sie.
Oder hier (falls die obigen Angaben nicht helfen) "=" entfernen
So funktioniert MT5
D.h. im MT5 können Sie eine Position schließen und einen Verlust erleiden (der Saldo vor der Eröffnung ist geringer als der Saldo nach der Schließung). Aber in diesem Fall wird der MT5-Tester (Terminal hat nicht geprüft) diesen Handel als profitabel betrachten.
Zum Beispiel: MT5_PF = 1,89 und MT4_PF = 2,01.
Wenn dies die richtigen Formeln sind
Der Tester berechnet diese Zahlen ganz anders. Ich habe auffällige Unterschiede in den Ergebnissen zwischen diesen Formeln und dem, was der Tester anzeigt (außer dem Gewinn).
Ich schlage vor, das klarzustellen. Der Haken an der Sache ist, was MT5 als profitablen Handel betrachtet.
Warum gibt es hier einen Const-Modifikator?
Wenn diese Variable den Geltungsbereich verlässt, wird sie wahrscheinlich neu initialisiert... Imho ist const nicht erforderlich
Wenn wir OrderCommission() + OrderSwap() entfernen ? - Wir sprechen von Gewinnen aus Geschäften, nicht von Provisionen.
SZZ: als Option kann der Tester mit dem Saldo arbeiten, wenn der Auftrag geschlossen ist, hat sich der Saldo geändert, vergleichen Sie es mit dem alten Saldo, im Allgemeinen kann ich nicht raten.... , ich habe die Quelle nicht gefunden, aber es gibt einen Artikelhttps://www.mql5.com/ru/articles/4226 mit der gleichen Gewinnberechnung, aber ich habe es nicht gelesen.
Warum gibt es hier einen Const-Modifikator?
Sie müssen die Variable Profit bei allen Iterationen der Schleife berechnen , obwohl es möglich ist, dass sie neu initialisiert wird, wenn diese Variable den Bereich verlässt... Imho brauchen Sie keine Konst.
Sie wird neu geschaffen. Dort ist alles korrekt.
Was passiert, wenn ich OrderCommission() + OrderSwap() entferne? - Wir sprechen von Gewinnen durch Geschäfte, nicht durch Provisionen?
MT5-Formel oben. Dies führt zu erheblichen Verzerrungen bei der Berechnung des PF von Scalping-TS. Und wie kann es sein, dass PF von der Plattform abhängt? Sie muss eindeutig sein.
Dieses Problem wurde von mir bereits in früheren Build-Zweigen angesprochen. Das Problem wurde nie behoben. Ich habe meine Krücke gefunden. Ich deaktiviere einige der Agenten (in meinem Fall 3 von 10) und aktiviere sie nach 0 Iterationen, und alles geht gut. Manchmal bleiben jedoch einige der Agenten während des Prozesses stehen, aber selten ist der Lösungsalgorithmus derselbe.
Es ist schade, aber die manuelle Lenkung ist keine Option. Ich habe eine automatische Optimierung.
Wenn es zwei Probleme gibt, sollten vielleicht beide diskutiert und gelöst werden. Oder ist das unmöglich?
1. Warum die Agenten nach der Optimierung nicht mehr erreichbar sind.
2. Was ist der Grund dafür, dass das automatische Hinzufügen von Zeichen zum Tester gestoppt wurde?
1. Sehen Sie sich die Testerprotokolle an, da steht alles drin.
2. Es ist bereits repariert. Aber bis Sie ein Build mit Korrekturen haben, können Sie Drag-Drop verwenden (wir haben nicht besprochen, warum die Hinzufügung von Zeichen gestoppt wurde, wir haben besprochen, wie Sie trotzdem unter diesen Bedingungen testen können)
Ich führe abwechselnd einzelne Läufe für jedes benutzerdefinierte Symbol durch. Ab einem bestimmten Punkt ist es unmöglich, den Pfad zu ihnen im Tester zu sehen, aber sie sind immer noch per Drag & Drop aus dem Market Watch auswählbar. Nach einer Weile funktioniert auch dies nicht mehr: Sie können entweder ein normales Symbol oder nur ein benutzerdefiniertes Symbol auswählen. Die anderen sind nicht möglich. Die folgende Animation zeigt diese Situation.
1. Sehen Sie sich die Testerprotokolle an, da steht alles drin.
2. Es ist bereits repariert. Aber bis Sie ein Build mit Korrekturen haben, können Sie Drag-Drop verwenden (wir haben nicht besprochen, warum die Hinzufügung von Zeichen gestoppt wurde, wir haben besprochen, wie Sie trotzdem unter diesen Bedingungen testen können)
Bei der genetischen Optimierung verwende ich eine Vielzahl von Parametern. Sobald die Anzahl der Varianten so groß wird, dass sie in wissenschaftlicher Schreibweise erscheint (6.8768769e+21), wird die Optimierung mit der Hälfte der Agenten (4 von 8) nach Generation 0 fortgesetzt. In den Protokollen wird dies nicht erwähnt. Die Optimierung selbst läuft gut, aber bei halber Last doppelt so lange.
Das Verhalten wird nicht immer reproduziert, was der Grund dafür sein kann, dass es nicht korrigiert wird. Gestern hatte ich sie, heute nicht mehr. Vielleicht hängt es auch von der EA ab. Ich habe es mit Rahmen. Die Größe von ex5 beträgt etwa 0,5 Mb. Ich habe 8 GB Speicher. Intel i7, 4 Kerne, 8 Threads. Geschieden. Unüberwacht.