Diskussion zum Artikel "Erstellen multimodularer Expert Advisors" - Seite 2

 
Aleksandr Masterskikh:

Die Multimodularität des Handelssystems wird in erster Linie durch die Art des Prozesses bestimmt (bei Finanzmärkten ist die Preisbewegung ein nicht-stationärer Prozess).

Und die Modellierung eines solch komplexen Prozesses (denn die EA-Entwicklung ist immer eine Prozessmodellierung) ist mit Hilfe eines einzigen, sogar sehr komplexen Eingabealgorithmus unmöglich. Um dem Prozess in Bezug auf die Genauigkeit nahe zu kommen, benötigen Sie eine Reihe von Algorithmen (Modulen), von denen jeder ein unabhängiges Modell darstellt.

Warum sollte ich etwas modellieren müssen, um etwas zu kaufen/verkaufen? Und was hat das mit technologischen Aspekten zu tun? Warum reden wir über Stationarität?

Junge, poste den Code, oder TOR, oder etwas anderes, und dann werde ich deinen Einschätzungen Beachtung schenken.

 
Der Autor des Artikels hat einen grundlegenden Fehler gemacht. Er setzte eine Reihe von Modulen mit einem Handelssystem gleich. Zur Erläuterung. Merkmale eines jeden Systems: 1. Hierarchie, das Vorhandensein von Haupt- und untergeordneten (es ist), 2. Dekomposition, zum Beispiel, die Aufteilung in Module (dies ist auch dort), 3. Interconnection (einschließlich der umgekehrten), und dies ist nicht. Und so sollte es auch sein: Jedes Modul steht mit jedem anderen Modul in Beziehung. Im Sonnensystem zum Beispiel ist die Sonne die Hauptperson, das System ist in Planeten (Module) unterteilt, und sie sind alle miteinander verbunden und beeinflussen sich gegenseitig. Der Autor hat also noch mehr Arbeit vor sich.
 
MetaQuotes Software Corp.:

Ein neuer Artikel über die Entwicklung von Expertenberatern mit mehreren Modulen wurde veröffentlicht:

Autor: Sergej Pawlow

Dies ist als Vorlage für die Projekterstellung für bestimmte Anwendungsfälle interessant, aber ich sehe viele Probleme, die bei der Verwendung als verallgemeinertes Entwicklungsmuster unweigerlich auftauchen würden.

Die Selbstoptimierung von Modulen würde zu einer konstanten Kurvenanpassung über den Optimierungsverlaufsdatensatz führen, was den EA in die Falle eines "Marktgedächtnisses" führt. Wenn sich die Volatilität in Bezug auf die Größe der Trainingsstichprobe nach oben oder unten bewegt, würde das Modul hinterherhinken und in der Regel Stop-Loss oder Take-Profit zu eng setzen. Statistisch gesehen würde es im Laufe der Zeit mehr Verlierer als Gewinner erzeugen. Bei größeren Stichproben wäre die Kurvenanpassung extrem spezifisch für falsche Marktbedingungen, die in der Stichprobenhistorie aufgetreten sind.

Ohne Selbstoptimierung müssten wir den Quellcode manuell anpassen, um die Parameter der Indikatoren zu untersuchen, anstatt den Strategietester zu verwenden, um den "Problemraum" schnell zu durchlaufen und die Ergebnisse vergleichend zu analysieren. Im Grunde würden wir also 1000 Jahre mit der Suche nach Parametern für relativ einfache Handelsstrategien verbringen.

Die Komposition von Programmen führt immer zu einem "Monolithen" als Endprodukt, obwohl es verschiedene Mittel gibt, um die Unterkomponenten des resultierenden Monolithen zu komponieren. Ich meine, dass das gesamte massive Programm einfach funktionieren muss, unabhängig davon, wie sein Quellcode organisiert ist, da alles irgendwo als Maschinencode landet. Diese Lösung opfert im Grunde die "Benutzerschnittstelle", d.h. die Eingabe, um Probleme mit der Definition diskreter Codeblöcke zu lösen, die im Laufe der Zeit zuverlässig gewartet werden können. Diese Probleme werden in der Regel durch OO-Prinzipien mit Klassen und Schnittstellen gelöst. Auf der "obersten" Ebene der Bibliothek oder des Programms wird eine Zusammenfassung der internen Abhängigkeiten deklariert, z. B. Pfade zu Modulen, Eingaben usw. Ein System zu schaffen, bei dem die oberste Ebene im Grunde genommen keine Eingaben zulässt, bedeutet, dass der Entwickler nicht mit den in Metatrader eingebauten Werkzeugen zur Strategieentwicklung und Risikodefinition interagieren kann, was aus der Sicht des Endbenutzers einer Umbenennung der Dateien in Ihrem Modulsystem gleichkommt.
 
Herzlichen Glückwunsch! Tolles Studienmaterial,
 

Ich möchte dem Autor dieses Artikels meine Dankbarkeit aussprechen. Vielen Dank für die Mühe, die Sie sich gemacht haben. Für mich als Anfänger in OOP und mql5 Spezifika, hilft mir dieser Artikel, die Sprache im Allgemeinen zu beherrschen. Meine Herren, die die Unzulänglichkeiten sehen, die Umsetzung des Konzepts in dem obigen Artikel, möchte ich sagen, dass es keine Grenze zur Perfektion irgendwo, zu verbessern vielleicht denke ich und Ihre Arbeit ist immer noch, wo .....

Dieser Artikel ist eher für Anfänger im Sprachenlernen gedacht...

 
MetaQuotes:

Der neue Artikel Entwicklung eines intelligenten Handelssystems mit mehreren Modulen wurde veröffentlicht:

Von Sergey Pavl

Hallo Gibt es einen Quellcode?

 
MT5 hedge ea in xm broker back test normal open order hedge! Aber wenn ich mit ic testen, öffnet es nicht lange Aufträge und nicht hedgen? Weiß jemand, warum dies geschieht?