MetaTrader 5 Strategy Tester: Bugs, Bugs, Verbesserungsvorschläge - Seite 82

 
fxsaber:

Bitte melden Sie, wenn eine Debug-Version von EX5 oder eine andere langsame Variante auf Optimize läuft.

Jetzt ist es leicht, versehentlich einen langsamen EA auf Optimierung laufen zu lassen und Zeit und Geld für nichts zu verlieren.

Suchbegriff: Uluchshenie 032.

Es gibt eine Meldung im Protokoll.

Ich glaube nicht, dass Alert für jeden geeignet ist.

 
Andrey Khatimlianskii:

Es gibt eine Meldung im Logbuch.

Ich glaube nicht, dass Alert für jeden geeignet ist.

Ich möchte nicht jedes Mal während der Optimierung im Protokoll nachsehen müssen, ob die erforderliche Zeichenfolge in Tausenden von anderen Zeichenfolgen vorhanden ist oder nicht.

Wenn z. B. die grüne Bereitschaftsanzeige beim Debuggen von EX5 rot wird, würde dies sofort auffallen.

 
fxsaber:

Nun, Sie müssen nicht jedes Mal während der Optimierung in das Protokoll schauen, um das Vorhandensein/Fehlen der erforderlichen Zeichenfolge in Tausenden von anderen Zeichenfolgen zu finden.

Wenn z. B. die grüne Bereitschaftsanzeige beim Debuggen von EX5 rot gefärbt ist, fällt dies sofort auf.

Die Farbe des Anzeigers kann es sein, aber nicht der Alarm.

Können Sie es nicht selbst in OnInit verfolgen?

 
Andrey Khatimlianskii:

Können Sie das nicht selbst in OnInit verfolgen?

INIT_FAILED wird Optimize nicht beenden.

 
fxsaber:

INIT_FAILED wird die Optimierung nicht beenden.

Wenn OnTesterInit einen Wert ungleich Null zurückgibt, kann die Optimierung nicht gestartet werden.
 
Slava:
Die Rückgabe eines Wertes ungleich Null von OnTesterInit erlaubt es nicht, die Optimierung zu starten

In der Hilfe stieß ich immer wieder auf die ungültige Version... Danke. Mit INIT_FAILED wird auch das Framechart geschlossen. Praktisch.

 

Nach einigen Durchläufen stellt sich heraus, dass sie nicht benötigt werden. Ich gebe zum Beispiel Nullen in OnTester zurück. Infolgedessen wird die Optimierungstabelle mit diesen unnötigen Daten gefüllt.


Ich habe versucht, mich mit dieser Methode aus der Buchhaltung zurückzuziehen, aber es hat nicht funktioniert.

input int Range = 0;

void OnDeinit( const int )
{
//  ExpertRemove();
  TesterStop(); // Нужно не учитывать этот проход
}

double OnTester()
{
  return(Range);
  return(DBL_MIN); // Предлагаю при возврате DBL_MIN игнорировать проход.
}


Gibt es eine Lösung? Wenn nicht, schlage ich die Variante DBL_MIN vor (siehe Quelle).


Um die Optimierung zu stoppen, muss ich die WinAPI-Krücke benutzen. Ist es möglich, OptimizationStop() zu haben? Schade, dass es keine interne Tester-API gibt. Und regelmäßiger Zugang zu tst/opt.

 
fxsaber:

...

Gibt es eine Lösung? Wenn nicht, schlage ich eine DBL_MIN-Variante vor (siehe Quelle).

...

sein kann:

-DBL_MAX

wenn die kleinstmögliche Zahl gemeint ist.

 
Andrey Dik:

vielleicht:

-DBL_MAX?

Das ist in Ordnung. Solange es funktioniert.

 

Hallo, liebe Entwickler des Strategy Testers!

Ich weiß nicht, ob das Problem mit ChartIndicatorAdd, das einen Indikator mit dem angegebenen Handle zum angegebenen Chartfenster hinzufügt, oder mit dem Strategy Tester zusammenhängt. Wenn ich im Strategietester ein und denselben Expert Advisor mehrmals optimiere, werden der/die Indikator(en) entweder angezeigt oder nicht angezeigt. Die Periodizität der Anzeige/Nichtanzeige ist chaotisch und hat keine Abhängigkeit. Und dieses Problem bleibt lange Zeit bestehen und geht von Build zu Build. Der aktuelle Stand ist 2690. Ich verwende den Strategy Tester des MetaQuote MT5-Terminals.

Was ist das Problem?

Ich habe das Betriebssystem Windows 7 SP1 64bit auf 2 Desktop-Computern und einem Laptop installiert und das Problem ist überall dasselbe.

Mit freundlichen Grüßen, Vladimir.