![MQL5 - Sprache von Handelsstrategien, eingebaut ins Kundenterminal MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
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
Neue MetaTrader 5 Plattform Beta-Build 2245: DirectX-Funktionen für 3D-Visualisierung in MQL5 und Symboleinstellungen in Strategy Tester
18. Tester: A plethora of new features and improvements: ...
Lesen Sie hier mehr
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.
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.
Forum zum Thema Handel, automatisierte Handelssysteme und Testen von Handelsstrategien
Neue Version der Plattform MetaTrader 5 build 2340: Verwaltung der Kontoeinstellungen im Tester und Erweiterung der Integration mit Python
Renat Fatkhullin, 2020/02/25 19:46
Beta 2341 wurde mit einem Fix für das Laden von *.dll in Agenten veröffentlicht.Forum über Handel, automatisierte Handelssysteme und das Testen von Handelsstrategien
Wie kann ich MT5 so konfigurieren, dass ALLE "Agent -> Local: 4 Cores" während des Strategy Testers verwendet werden?
Fernando Morales, 2020.03.28 11:04
Agenten werden während der Optimierung verwendet. Für einen Backtest wird nur ein Agent benötigt
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"
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):
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 ><
Kontinuierliche Walk-Forward-Optimierung
----------------
"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?