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
Neuer Artikel Kontrollierte Optimierung: Simuliertes Glühen ist veröffentlicht worden:
Autor: Aleksey Zinovik
Ich habe noch nicht begonnen, mit mt5 zu arbeiten, aber ich denke, dass ich (vielleicht mit einigen Änderungen und/oder bedingter Kompilierung) in der Lage sein werde, dies auch im Strategietester von mt4 zu verwenden.
Die genetische Optimierung von mt4 hat ein kleines Problem, das vielleicht auch für mt5 existiert und vielleicht auch für Ihren Ansatz.
Wenn ich in OnInit() den Parametersatz prüfe und feststelle, dass ein aktueller Satz nicht prüfenswert ist, komme ich aus OnInit() mit INIT_PARAMETERS_INCORRECT zurück. Die Optimierung wird nicht durchgeführt, was Zeit spart, ok - aber:
Haben Sie sich um diese Situation gekümmert: Rückkehr von OnInit(), obwohl es keinen Fehler gibt (wie: Datei nicht gefunden,..), nur weil die Parametereinstellung nicht getestet werden sollte, was in diesem Fall die Anzahl nicht erhöhen und die Temperatur senken sollte?
Auf jeden Fall vielen Dank für diesen interessanten Artikel!
Gooly
Ich habe noch nicht begonnen, mit mt5 zu arbeiten, aber ich denke, dass ich (vielleicht mit einigen Änderungen und/oder bedingter Kompilierung) in der Lage sein werde, dies auch im Strategietester von mt4 zu verwenden.
Die genetische Optimierung von mt4 hat ein kleines Problem, das auch für mt5 besteht und vielleicht auch für Ihren Ansatz gilt.
Wenn ich in OnInit() den Parametersatz prüfe und feststelle, dass ein aktueller Satz nicht prüfenswert ist, komme ich aus OnInit() mit INIT_PARAMETERS_INCORRECT zurück. Die Optimierung wird nicht durchgeführt, was Zeit spart, ok - aber:
Haben Sie sich um diese Situation gekümmert: Rückkehr von OnInit(), obwohl kein Fehler vorliegt (z.B.: Datei nicht gefunden,..), nur weil die Parametereinstellung nicht getestet werden sollte, was in diesem Fall die Anzahl nicht erhöhen und die Temperatur nicht verringern sollte?
Auf jeden Fall danke ich Ihnen für diesen interessanten Artikel!
Gooly
Ich überprüfe nicht die Korrektheit der Parameter und unterbreche die OnInit()-Funktion nicht, wenn die Parameter nicht korrekt sind. In der Funktion OnTesterInit() werden Parameter, deren Werte mit dem Strategietester optimiert werden müssen, von der Optimierung ausgeschlossen. Bei jeder neuen Iteration werden die Parameter aus der Datei gelesen, in der OnTester()-Funktion werden neue Parameterwerte in die Datei geschrieben. Damit ist es möglich, die vom Strategietester generierten Parameterwerte nicht zu verwenden, um die notwendigen Parameter selbständig an die OnInit()-Funktion auszugeben.
Ich verstehe jetzt - danke! Ich muss nur die Plausibilität des Parametersetups der nächsten Iteration überprüfen, bevor dieses Setup in die Datei für den nächsten Lauf geschrieben wird. Auf diese Weise lässt sich "mein Problem" vermeiden!
Vielen Dank für diese Idee und den Artikel!
Hallo ,
Sie sagten: "Die Nachteile können durch die Entwicklung eines universellen Moduls beseitigt werden, das verschiedene Algorithmen zur Optimierung der Expertenparameter enthält".
Können Sie das universelle Modul genauer beschreiben? Welche anderen Algorithmen zur Optimierung der Expertenparameter gibt es?
Hallo ,
Sie sagten: "Die Nachteile können durch die Entwicklung eines universellen Moduls beseitigt werden, das verschiedene Algorithmen zur Optimierung der Expertenparameter enthält".
Können Sie das universelle Modul genauer beschreiben? Welche anderen Algorithmen zur Optimierung der Expertenparameter gibt es?
Der Artikel zeigt, wie man einen neuen Optimierungsalgorithmus mit dem Strategietester verbindet. In ähnlicher Weise kann man durch Hinzufügen neuer Methoden zur Klasse AnnealingMethod.mqh oder durch Erstellen einer neuen Klasse andere Algorithmen anschließen, zum Beispiel Ameisenalgorithmen (Ant colony optimization). Ich plane, die Arbeit solcher Algorithmen zu testen und das Ergebnis zu teilen.