Alles (noch) nicht über Strategy Tester, Optimierung und Cloud - Seite 7

 
New MetaTrader 5 Platform beta build 2245: DirectX functions for 3D visualization in MQL5 and symbol settings in Strategy Tester
New MetaTrader 5 Platform beta build 2245: DirectX functions for 3D visualization in MQL5 and symbol settings in Strategy Tester
  • 2019.11.29
  • www.mql5.com
The beta version of the updated MetaTrader 5 platform will be released on November 29, 2019...
 

Guter Artikel wurde veröffentlicht -

----------------

Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten

In den vorangegangenen Artikeln(Optimierungsmanagement (Teil I) und Optimierungsmanagement (Teil 2)) haben wir einen Mechanismus zum Starten der Optimierung im Terminal durch einen Prozess eines Dritten betrachtet. Dies ermöglicht die Erstellung eines bestimmten Optimierungsmanagers, der den Prozess ähnlich wie ein Handelsalgorithmus implementieren kann, der einen bestimmten Handelsprozess implementiert, d.h. in einem vollautomatischen Modus ohne Benutzereingriff. Die Idee besteht darin, einen Algorithmus zu schaffen, der den gleitenden Optimierungsprozess verwaltet, bei dem Vorwärts- und Rückwärtsperioden um ein vorgegebenes Intervall verschoben werden und sich überlappen.

Dieser Ansatz zur Optimierung des Algorithmus kann eher zum Testen der Robustheit der Strategie als zur reinen Optimierung dienen, obwohl er beide Funktionen erfüllt. Auf diese Weise können wir herausfinden, ob ein Handelssystem stabil ist, und wir können optimale Indikatorenkombinationen für das System ermitteln. Da der beschriebene Prozess verschiedene Methoden zur Filterung von Roboterkoeffizienten und zur Auswahl optimaler Kombinationen beinhalten kann, die wir in jedem der Zeitintervalle (die mehrfach sein können) überprüfen müssen, kann der Prozess kaum manuell durchgeführt werden. Außerdem kann es zu Fehlern bei der Datenübertragung oder anderen Fehlern kommen, die auf den menschlichen Faktor zurückzuführen sind. Daher werden Werkzeuge benötigt, die den Optimierungsprozess ohne unser Zutun von außen steuern. Das erstellte Programm erfüllt die gesetzten Ziele. Um den Prozess der Programmerstellung besser strukturieren zu können, wurde er in mehrere Artikel aufgeteilt, von denen jeder einen bestimmten Bereich der Programmerstellung abdeckt.

Dieser Teil ist der Erstellung eines Toolkits für die Arbeit mit Optimierungsberichten, für den Import aus dem Terminal sowie für die Filterung und Sortierung der erhaltenen Daten gewidmet. Um eine bessere Präsentationsstruktur zu schaffen, werden wir das *xml-Dateiformat verwenden. Die Daten in dieser Datei können sowohl von Menschen als auch von Programmen gelesen werden. Außerdem können die Daten in Blöcken innerhalb der Datei gruppiert werden, so dass die benötigten Informationen schneller und einfacher abgerufen werden können.

Unser Programm ist ein in C# geschriebener Prozess eines Drittanbieters und muss die erstellten *xml-Dokumente ähnlich wie MQL5-Programme erstellen und lesen. Daher wird der Berichtserstellungsblock als DLL implementiert, die sowohl in MQL5 als auch in C#-Code verwendet werden kann. Um also einen MQL5-Code zu entwickeln, benötigen wir eine Bibliothek. Wir werden zunächst den Prozess der Bibliothekserstellung beschreiben, während der nächste Artikel eine Beschreibung des MQL5-Codes enthalten wird, der mit der erstellten Bibliothek arbeitet und Optimierungsparameter erzeugt. Wir werden diese Parameter in diesem Artikel betrachten.

Continuous Walk-Forward Optimization (Part 1): Working with Optimization Reports
Continuous Walk-Forward Optimization (Part 1): Working with Optimization Reports
  • www.mql5.com
In the previous articles (Optimization Management (Part I) and Optimization Management (Part 2)) we considered a mechanism for launching the optimization in the terminal through a third-party process. This allows creating a certain Optimization Manager which can implement the process similarly to a trading algorithm implementing a specific...
 
Sergey Golubev:

Guter Artikel wurde veröffentlicht -

----------------

Kontinuierliche Walk-Forward-Optimierung (Teil 1): Arbeiten mit Optimierungsberichten

...

Fortsetzung mit Teil 2

----------------

Kontinuierliche Walk-Through-Optimierung (Teil 2): Mechanismus zur Erstellung eines Optimierungsberichts für einen beliebigen Roboter

Dies ist der nächste Artikel einer Serie, die sich mit der Erstellung eines automatischen Optimierers befasst, der eine durchgehende Optimierung von Handelsstrategien durchführen kann. Der vorherige Artikel beschrieb die Erstellung einer DLL, die in unserem Auto-Optimierer und in Expert Advisors verwendet werden kann. Dieser neue Teil ist ganz der Sprache MQL5 gewidmet. Wir werden Methoden zur Erstellung von Optimierungsberichten und die Anwendung dieser Funktionalität innerhalb Ihrer Algorithmen betrachten.

Der Strategietester erlaubt keinen Zugriff auf seine Daten von einem Expert Advisor aus, und die bereitgestellten Ergebnisse sind nicht sehr detailliert, daher werden wir die Funktionalität zum Herunterladen von Optimierungsberichten verwenden, die in meinen früheren Artikeln implementiert wurde. Da einzelne Teile dieser Funktionalität modifiziert wurden, während andere in früheren Artikeln nicht vollständig behandelt wurden, wollen wir diese Funktionen noch einmal betrachten, da sie die wichtigsten Teile unseres Programms darstellen. Beginnen wir mit einer der neuen Funktionen: der Hinzufügung einer benutzerdefinierten Provision. Alle in diesem Artikel beschriebenen Klassen und Funktionen befinden sich im Verzeichnis Include/History manager.

Continuous Walk-Through Optimization (Part 2): Mechanism for creating an optimization report for any robot
Continuous Walk-Through Optimization (Part 2): Mechanism for creating an optimization report for any robot
  • www.mql5.com
This is the next article within a series devoted to the creation of an automated optimizer, which can perform walk-through optimization of trading strategies. The previous article described the creation of a DLL to be used in our auto optimizer and in Expert Advisors. This new part is entirely devoted to the MQL5 language. We will consider...
 

heute habe ich versucht, Tests auf meiner lokalen Farm und meine metatrader 5 auf Linux verwendet verschwunden meine Agenten, habe ich versucht, die Installation metatester allein aber immer noch nicht funktionieren.

und Journal Staaten "2020.04.18 17:15:22.124 Tester Cloud-Server ausgeschaltet"





 
herrcrowley:

heute habe ich versucht, Tests auf meiner lokalen Farm und meine metatrader 5 auf Linux verwendet verschwunden meine Agenten, habe ich versucht, die Installation metatester allein aber immer noch nicht funktionieren.

und im Journal steht "2020.04.18 17:15:22.124 Tester Cloud server switched off"


...

Es kann eine Einschränkung sein ...
Ich weiß, dass Wolke nicht in VPS und in 32-Bit-Metatrader funktioniert (aber ich bin nicht sicher über Linux ... es kann die gleiche Einschränkung sein):

  • Tester-Agenten/Remote-Agenten/MQL5 Cloud Network-Agenten/MetaTester 5 Agents Manager sind nicht mehr für die Verwendung in 32-Bit-Terminals verfügbar: Sie können nur in 64-Bit-Systemen arbeiten: Lesen Sie hier mehr
  • Verbot der Verwendung von Testagenten, die auf virtuellen Betriebssystemen in MQL5.Cloud arbeiten - lesen Sie hier mehr
List of changes in MetaTrader 5 Client Terminal builds
List of changes in MetaTrader 5 Client Terminal builds
  • 2014.06.26
  • www.mql5.com
List of changes in the Help for MQL5:Corrected description of the GlobalVariablesFlush() function , input parameters are not required, Length the c...
 

Ich möchte eine andere Teilmenge des PCs verwenden, z. B. IP 180.214.90.6, nicht das lokale Netzwerk 192.168.1.5.

192.168.1.5 ist ok und funktioniert gut.

180.214.90.6 Log zeigt immer connect .... (kein Passwortproblem oder Aufgabe..)

Ist es möglich, dies zu tun?


Ich mache mehr Testfälle (und es gibt keine Debug-Meldung, um sicher zu gehen, was passiert? Es ist eine Socke ><)

Test Env MT5 Build 2410(08 Mai 2020) / Win10 x64 base/Alle PR >120 Alle Software verwenden die gleiche Version.

NB 192.168.18.3

PC1 192.168.18.7

PC2 180.214.90.6 --->(192.168.18.5)

PC3 192.168.18.8 (Ubuntu)

Fall A NB kann PC1 sehen (aber die Geschwindigkeit ist durch den niedrigsten Wert begrenzt, es sieht so aus, als ob der Lastausgleich nicht funktioniert? )

Fall B PC1 kann NB nicht sehen

Fall C NB, PC1 kann PC2 nicht sehen

Fall D PC1 kann PC1 im lokalen Netz sehen.

Fall E NB kann PC3 sehen (Ubuntu nach Hinzufügen von Winbind)

Ich versuche verschiedene Wege zu benutzen. Und PC1 erhält mehrere Agenten im Inneren, ich weiß nicht, ob es Nebeneffekt bekommen wird?

Ich habe versucht, die Firewall zu überprüfen, Agenten zu entfernen und sie wieder hinzuzufügen.

Es funktioniert nicht ><

 
Continuous Walk-Forward Optimization (Part 1): Working with Optimization Reports
Continuous Walk-Forward Optimization (Part 1): Working with Optimization Reports
  • www.mql5.com
In the previous articles (Optimization Management (Part I) and Optimization Management (Part 2)) we considered a mechanism for launching the optimization in the terminal through a third-party process. This allows creating a certain Optimization Manager which can implement the process similarly to a trading algorithm implementing a specific...
 
Sergey Golubev:

"Aufgrund des offensichtlichenSpeichermangels bei einer übermäßigen Anzahl von Agenten und einer Verringerung der Geschwindigkeit von Berechnungen auf Hyper-Threading-Kernen haben wir beschlossen, uns bei der Arbeit in der Cloud nur auf physische Kerne zu beschränken.

..

Wir bewerten seit langem die ungefähre Ressourceneffizienz von Agenten, bevor wir ihnen Aufgaben erteilen, und eine der effektivsten Methoden ist, nur auf physischen Kernen in der Cloud zu arbeiten.

Vor Ort kann man alle Kerne nutzen, da man deren Abschaltung leicht kontrollieren kann."

Auf meiner neuen Hardware (AMD Ryzen 9300, 32GB DDR4) beobachte ich, dass eine Reihe von Agenten, die (vermutlich) auf Hyper-Thread-Kernen laufen, im Strategietester fehlerhafte Ergebnisse liefern.

So wie es aussieht, ist es also nicht möglich, alle Kerne lokal zu nutzen - oder kann jemand bestätigen, dass das Testen auf seinen Hyper-Threading-Kernen funktioniert?