Optimierung mit dem Strategy Tester - Seite 15

 
Urain:

Wenn Sie ein dynamisches langes Array wie dieses verwenden würden, würde es sich wahrscheinlich stark verändern. Geht man von der langsamsten FF-Funktion aus, würde dies den Algorithmus nicht allzu sehr durcheinander bringen. Ohne den Algorithmus selbst überprüft zu haben, ist es schwer zu sagen, wie komplex die Neugestaltung sein wird.
Wir denken bereits über eine Erweiterung des Angebots nach.
 
Renat:
Ich denke bereits über eine Erweiterung der Produktpalette nach.

Dies ist kein schlechter Artikel über hybride GA http://masters.donntu.edu.ua/2006/kita/bashev/library/hybrid.html

Kurz gesagt: Binary GA + Quasi-Newtonsche Optimierungsmethode.

Интеллектуальные модели на основе гибридного генетического алгоритма с градиентным обучением лидера, Н.Б. Паклин, М.А. Сенилов, В.А. Тененев, ГОУ ВПО "Ижевский государственный технический университет", г. Ижевск, 2004
  • masters.donntu.edu.ua
Данный доклад в сентябре 2004 г. был опубликован в научно-теоретическом журнале "Искусственный интеллект" и апробирован на V Международной конференции "Искусственный интеллект-2004. Интеллектуальные и многопроцессорные системы" (20-25 сентября 2004 года, Крым, п. Кацивели, ссылка на печатный источник: Паклин Н.Б., Сенилов М.А., Тененев В.А...
 
Dmitriy2:

Ich wählte ein paar Parameter aus, klickte auf den Test... Am Morgen zählte ich die Anzahl der Läufe und wie viele noch übrig waren... berechnete, dass es noch 50 Tage bis zum Ende der Optimierung waren... mein Computer hat 4 Kerne + 2 Kernagenten... Scheiß auf diese Optimierung, schaltet sie ab...

Die Parameter sind eindeutig nicht 5-6 und ihr Zeitraum ist nicht ein Jahr :))) Und im Allgemeinen ist die verbleibende Zeit bis zum Ende der Optimierung immer falsch (zumindest war es so in MT4), je weiter die Optimierung abnimmt, desto schneller die Zeit bis zum Ende der Optimierung, ich schrieb ursprünglich 450 Stunden in MT5, aber in Wirklichkeit habe ich 100 Stunden oder so verbracht.

 
Urain:

Hier bin ich auf einen guten Artikel über hybride GA gestoßen http://masters.donntu.edu.ua/2006/kita/bashev/library/hybrid.html

Kurz gesagt: Binary GA + Quasi-Newtonsche Optimierungsmethode.

Nette Idee, aber die Autoren haben ein kleines Merkmal der Gradientenmethoden außer Acht gelassen, das zu ernsthaften Problemen bei der Umsetzung führt - die Berechnung der partiellen Ableitung der Zielfunktion für jeden adaptiven Parameter )))

Aber ja, es ist eine geniale Lösung ))))

Angenommen, dieses Problem ist gelöst, so stellt sich immer noch die Frage nach der Wahl des Schrittes, mit dem man sich entlang des Gradienten bewegt

Die gleiche GA mit Elementen von "Elitismus" und einer großen Anzahl von Personen in der Bevölkerung schließt diese Probleme in einer angemessenen Zeit

Wir sprechen hier von einem Suchraum in der Größenordnung von einigen Dutzend. Alles, was darüber hinausgeht, ist Zeitverschwendung (aus persönlicher Erfahrung behaupte ich, dass die Optimierung mehrerer TS mit 30 adaptiven Parametern bei einer Historie von mehr als 100 Tausend Balken dummerweise zu einer Umschulung führte).

 
Renat:
Wir denken bereits über eine Ausweitung der Reichweite nach.
Das wäre großartig. Ich habe vernünftige Anwendungen für eine große Anzahl von Parametern.
 

Der Optimierer kann nicht mit 64 Parametern umgehen, das Maximum ist 62, bei 63 stirbt er bereits (n/a) :)

Prüfen Sie den Experten im Trailer, dort auch die Set-Datei. Ich musste sie erzeugen, um das Schreiben zu vermeiden.

Löst das Problem der Erzeugung von acht orthogonalen Vektoren.

Die Fitnessfunktion berechnet alle paarweisen Skalarprodukte und summiert deren Absolutwerte mit entgegengesetztem Vorzeichen.

Vielleicht habe ich einfach nur dummes Glück, aber in ein paar von vier Fällen habe ich ein vollwertiges (richtiges Null) Ergebnis erhalten.

Es macht auch Spaß, mehrere (2-3) Vektoren zu fixieren und zu beobachten, wie die anderen versuchen, sich rechtwinklig auszurichten... :)

Es löst das Problem schnell, was zweifellos eine gute Sache ist.

Mir hat nicht gefallen, dass auf der Registerkarte"Optimierungsergebnisse" maximal 20 zu optimierende Parameter angezeigt werden.

// Der andere Fehler ist während der Arbeit aufgetreten - bei 64 Eingabeparametern werden sie im MetaEditor nicht mehr hervorgehoben. Sie werden einfach als normale Variablen angezeigt.

--

Der Skriptgenerator befindet sich ebenfalls im Trailer.

Erzeugt Expert Advisor und Set-Datei von entsprechender "Dimensionalität", die Dimensionalität wird während der Erzeugung im Parameter angegeben.

Sie befindet sich natürlich im Ordner ...\MetaTrader 5\MQL5\Files.

Sie können auch mit Vektoren einer kleineren Dimension spielen.

// Wir haben noch kein Glück mit größeren Exemplaren, wir warten noch. :)

Übrigens hat der Optimierer das Problem für fünf Vektoren nicht ein einziges Mal gelöst. Das beste Ergebnis für fünf Vektoren ist CustomMax == -10

p.s. Später: ja, ich bin dumm, das maximale Ergebnis für ungerade Vektoren == -n*(n-1)/2 unter den in der Set-Datei angegebenen Bedingungen,

damit alles richtig ist, findet der Gen-Algorithmus immer erfolgreich Maxima. // naja, fast :)

Dateien:
 
Renat:
Ich denke bereits über eine Erweiterung der Produktpalette nach.

Juhu! Ich bin froh, dass die Entwickler endlich erkannt haben, dass die Leute einen Tester ohne Einschränkungen brauchen. Wenn mt5 als neue Stufe des automatischen Handels positioniert ist, warum sollten dann Systeme mit großen Berechnungen ein 64er-Hindernis hinterlassen, egal ob es NS oder etwas anderes ist.

Ich freue mich auf ein Build mit einem Fix und der Möglichkeit, meine Projekte auf dem Standard-Tester fortzusetzen. (weil es zu teuer ist, einen eigenen Tester von Grund auf zu schreiben...).

 
yu-sha:

Coole Idee, aber die Autoren haben eine kleine Besonderheit von Gradientenmethoden außer Acht gelassen, die zu ernsthaften Problemen bei der Umsetzung führt - die Berechnung der privaten Ableitung der Zielfunktion für jeden adaptiven Parameter )).

Aber ja, es ist eine geniale Lösung ))))

Angenommen, dieses Problem ist gelöst, so stellt sich immer noch die Frage nach der Wahl des Schrittes, mit dem man sich entlang des Gradienten bewegt

Die gleiche GA mit Elementen von "Elitismus" und einer großen Anzahl von Personen in der Bevölkerung schließt diese Probleme in einer angemessenen Zeit

...

Bei der Berechnung einer Steigung ohne partielle Ableitung werden mehrere Testpunkte in der Umgebung benötigt. Mit diesen FF können Sie auch den Wert des Mindestschritts für jeden Parameter berechnen. Dann kann die Schrittweite verdoppelt werden (ausgehend von der minimalen Schrittweite), bis der nächste Punkt bei FF kleiner ist als der vorherige. Wir berechnen die Steigung erneut, indem wir sie mit der vorherigen vergleichen. Dann fahren wir fort.

 

Alle sind so schlau - es ist furchtbar!

Oh, wären Sie so freundlich, mir zu sagen, wie ich meinem Dual-Core mehr Agenten hinzufügen kann.

Irgendwo sah ich auf dem Test (3D, oder so) alle fliegen und flattern und Agenten auf der Hälfte des Bildschirms.

Nun, es fällt mir schwer, einen Test mit 2 Einstellungen (etwa 1200 Durchläufe) eine halbe Stunde lang oder länger zu ertragen. Danke.

 
artall:

Alle sind so schlau - es ist furchtbar!

Oh, wären Sie so freundlich, mir zu sagen, wie ich meinem Dual-Core mehr Agenten hinzufügen kann.

Irgendwo habe ich bei einem Test (3D oder so) gesehen, dass alles auf einem halben Bildschirm flog und flatterte und Agenten.

Nun, es fällt mir schwer, einen Test mit 2 Parametern (etwa 1200 Durchläufe) eine halbe Stunde oder länger zu ertragen. Danke.

Chat in diesem Thema --> Multi-Core-Testnetz für alle,

Es gibt genügend Leute, die sich mit diesem Thema eingehend beschäftigt haben.