Diskussion zum Artikel "Kontrolle der Saldo-Gefällekurve während der Arbeit eines Expert Advisors" - Seite 4

 

solandr:

Ich habe das folgende Experiment durchgeführt. Ich habe den Zähler so eingestellt, dass er ein reduziertes Lot für jedes Währungspaar auslöst. Und testete alle Kombinationen von Tests auf M1 OHLC. Hier ist das Ergebnis.

35 0 0 - Test nur für das erste Paar

0 36 0 - Testen nur für das zweite Paar

0 0 0 168 - Testen nur für das dritte Paar.

36 35 0 0 - Testen des ersten und zweiten Paares

0 35 162 - Prüfung des zweiten und dritten Paares

35 35 166 - Prüfung an allen drei Paaren

Obwohl es 35 36 168 sein sollte, wenn alle drei Paare getestet werden.

Morgen werde ich versuchen, den EA auf allen Ticks zum Vergleich laufen zu lassen.

Wenn ich Sie richtig verstehe, ist die Anzahl der Trades unterschiedlich? Wie kann sich die Losgröße also auswirken?

 
Dima_S:

Wenn ich Sie richtig verstehe, ist die Anzahl der Transaktionen unterschiedlich? Wie kann sich die Losgröße also darauf auswirken?

Nein, die Gesamtzahl der Geschäfte mit 3 Währungspaaren zur gleichen Zeit entspricht der Summe der Geschäfte in separaten Läufen.

Die Ergebnisse zeigen die Anzahl der Aufträge, die mit einem reduzierten Lot eröffnet wurden.

Ich verwende immer noch den Expert Advisor. Ich versuche zu verstehen, was er an den Ergebnissen des Gesamtlaufs ändert. Ich werde später eine Nachricht schreiben.

Документация по MQL5: Торговые функции / HistoryDealsTotal
Документация по MQL5: Торговые функции / HistoryDealsTotal
  • www.mql5.com
Торговые функции / HistoryDealsTotal - Документация по MQL5
 
solandr:

Nein, die Gesamtzahl der Geschäfte mit 3 Währungspaaren zur gleichen Zeit entspricht der Summe der Geschäfte in separaten Läufen.

Die Ergebnisse zeigen die Anzahl der Aufträge, die mit einem reduzierten Lot eröffnet wurden.

Ich lasse den Expert Advisor weiterhin laufen. Ich versuche zu verstehen, was die Ergebnisse beim Gesamtlauf verändert. Ich werde später eine Nachricht schreiben.

Wahrscheinlich ändert sich der Gewinn/Verlust für die Trades aufgrund veränderter Bedingungen von Lauf zu Lauf geringfügig - infolgedessen kann es an einigen Punkten der Gleichgewichtskurve zu einem Lot-Switching kommen (oder auch nicht).

Es geht ungefähr so.

 
Dima_S:

Möglicherweise ändert sich der Gewinn/Verlust bei den Geschäften aufgrund veränderter Bedingungen von Lauf zu Lauf geringfügig - infolgedessen kann es an einigen Punkten der Bilanzkurve zu einem Loswechsel kommen (oder auch nicht).

So in etwa.

Im Prinzip ist die Idee gut. Unter MT4 benutze ich sogar ein spezielles Programm Spread Changer, mit dem man den Spread zum Testen beliebig einstellen kann. und die Ergebnisse schwimmen nicht.

Für MT5 habe ich ein solches Programm noch nicht gefunden (vielleicht habe ich nicht gut gesucht). Es wäre toll, wenn die Entwickler in zukünftigen Versionen des Terminals eine solche Funktion in den Tester einbauen würden, für diejenigen, die es wünschen.

 
solandr:

Im Prinzip ist die Idee gut. Unter MT4 verwende ich sogar ein spezielles Programm Spread Changer, mit dem man den Spread zum Testen beliebig einstellen kann. und die Ergebnisse schwimmen nicht.

Für MT5 habe ich ein solches Programm noch nicht gefunden (vielleicht habe ich nicht gut gesucht). Es wäre toll, wenn die Entwickler in zukünftigen Versionen des Terminals eine solche Funktion in den Tester einbauen würden, für diejenigen, die es wünschen.

Idealerweise wäre ein einfacher Import von Kursen aus einer csv-Datei zum Testen nützlich. Aber das Ideal ist noch nicht realisierbar)))
 

Ich habe den EA für alle Ticks ausgeführt. Ich erhielt die folgenden Ergebnisse:

Mit deaktiviertem Balance Management Gewinn bei Läufen:

0 0 0 0 0 6702,44 erstes Paar

0 0 0 0 0 5735,78 zweites Paar

0 0 0 0 0 3461,48 drittes Paar

0 0 0 0 15901,66 alle drei Paare - sollte 15899,7 sein. Die Differenz beträgt 1,96.

Bei aktiviertem Lot-Management Gewinn bei Läufen:

35 0 0 = 6550,94

0 36 0 = 6956,95

0 0 184 = 3386.44

35 36 179 = 15991,56 - Es hätten 16894,33 sein sollen. Die Differenz beträgt 902,77

Wie Sie sehen, gibt es auch bei deaktivierter automatischer Waage eine Differenz, die jedoch normalerweise mikroskopisch klein ist. Wenn die Loskontrolle aktiviert ist, beträgt der Unterschied 5,3 % (aufgrund der unterschiedlichen Anzahl von Auslösern für das reduzierte Los). Wie können die Parameter hier optimiert werden? Welcher Ausweg kann gefunden werden?

Jeder Durchlauf über alle Ticks dauert etwa 20-30 Minuten.

Ich werde ein solches Experiment einrichten. Man nehme einen einfachen Expert Advisor, füge ein Lot-Kontrollsystem hinzu und beobachte den Unterschied in den Durchläufen.

 

Übrigens, wenn ich die mqh-Datei aus dem Artikel kompiliere, erhalte ich diese Meldungen:

possible loss of data due to type conversion BalanceSlopeControl.mqh 117 25
possible loss of data due to type conversion BalanceSlopeControl.mqh 118 21
declaration of 'current_slope' hides member declaration at line 682 BalanceSlopeControl.mqh 909 9
0 error(s), 3 warning(s) 1 4

Ich habe sie gleich zu Beginn korrigiert. Die ersten beiden - ich habe die Art der Konvertierung angegeben. Und die dritte Meldung habe ich korrigiert, indem ich den Namen von ccurrent_slope in Zeile 909 korrigiert habe und die entsprechende Korrektur weiter in double TBalanceSlopeControl::CalcTradeLots( double _min_lots, double _max_lots ).

Vielleicht liegt hier der Hund begraben? Auf jeden Fall wäre es möglich, die vom Autor selbst korrigierte Datei zu posten, da meine Änderungen möglicherweise ideologisch falsch sind.

Документация по MQL5: Основы языка / Типы данных / Приведение типов
Документация по MQL5: Основы языка / Типы данных / Приведение типов
  • www.mql5.com
Основы языка / Типы данных / Приведение типов - Документация по MQL5
 
solandr:

Ich habe den EA für alle Ticks ausgeführt. Ich erhielt die folgenden Ergebnisse:

...

Wie Sie sehen können, gibt es auch einen Unterschied, wenn Auto-Balance deaktiviert ist, aber er ist normalerweise mikroskopisch klein.

Erzielen Sie identische Ergebnisse in allen Modi, wenn Sie mit einem beliebigen Symbol testen.

Arbeiten Sie dazu entweder mit den Ticks aller Symbole oder mit dem Timer und kontrollieren Sie das Erscheinen eines neuen Balkens bei allen Instrumenten.

Der Saldo sollte nicht um einen Cent abweichen.

Обработчик события "новый бар"
Обработчик события "новый бар"
  • 2010.10.04
  • Konstantin Gruzdev
  • www.mql5.com
Язык программирования MQL5 позволяет решать задачи на совершенно новом уровне. Даже те задачи, которые уже вроде имеют решения, благодаря объектно-ориентированному программированию могут подняться на качественно новый уровень. В данной статье специально взят простой пример проверки появления нового бара на графике, который был преобразован в достаточно мощный и универсальный инструмент. Какой? Читайте в статье.
 
solandr:

Übrigens, wenn ich die mqh-Datei aus dem Artikel kompiliere, erhalte ich diese Meldungen:

possible loss of data due to type conversion BalanceSlopeControl.mqh 117 25
possible loss of data due to type conversion BalanceSlopeControl.mqh 118 21
declaration of 'current_slope' hides member declaration at line 682 BalanceSlopeControl.mqh 909 9
0 error(s), 3 warning(s) 1 4

Ich habe sie gleich zu Beginn korrigiert. Die ersten beiden - ich habe die Art der Konvertierung angegeben. Und die dritte Meldung habe ich korrigiert, indem ich den Namen von ccurrent_slope in Zeile 909 korrigiert habe und die entsprechende Korrektur weiter in double TBalanceSlopeControl::CalcTradeLots( double _min_lots, double _max_lots ).

Vielleicht liegt hier der Hund begraben? Auf jeden Fall wäre es möglich, die vom Autor selbst korrigierte Datei zu posten, da meine Änderungen möglicherweise ideologisch falsch sind.

Das ist hier unwahrscheinlich. Ich erinnere mich an etwas Regeln, aber was - ich erinnere mich nicht))) Hier ist meine aktuelle Datei.

Dateien:
 
Dima_S:

Ich glaube nicht, so hier. Ich erinnere mich an etwas Regeln, aber was - ich erinnere mich nicht))) Hier ist meine aktuelle Datei.

Danke für die neue Version der Datei!

Wenn man den Inhalt der Datei mit der Datei aus dem Artikel vergleicht, sieht man ein paar Unterschiede in der neuen Datei in den Zeilen 37, 115, 116, 907, 966.

Schauen wir mal, wie sehr diese Änderungen den Expert Advisor beeinflussen können