Diskussion zum Artikel "Simulink: ein Leitfaden für Expert Advisor-Entwickler"

 

Neuer Artikel Simulink: ein Leitfaden für Expert Advisor-Entwickler :

Ich bin kein professioneller Programmierer, deshalb ist das Prinzip "vom Einfachen zum Komplexen" bei der Arbeit an Entwicklungen von Handelssystemen für mich von äußerster Wichtigkeit. Was genau heißt "einfach" für mich? Zunächst heißt das die Anschaulichkeit des Erzeugungsprozesses eines Systems und die Logik seiner Funktionsweise. Und es heißt auch möglichst wenig handgeschriebener Code. In diesem Beitrag versuche ich ein Handelssystem auf Grundlage des Matlab-Pakets zu erzeugen und zu testen und anschließend einen Expert Advisor für MetaTrader 5 zu schreiben. Im Testvorgang werden die historischen Daten von MetaTrader 5 eingesetzt.

Verschiedene Beiträge beschreiben bereits die unendlich vielen Möglichkeiten von Matlab. Genauer gesagt: sie beschreiben die Art und Weise, wie diese Software die Tools eines Programmierers, die er zur Entwicklung eines Expert Advisors benutzt, erweitern kann. In diesem Beitrag versuche ich die Arbeit eines solchen leitungsstarken Matlab-Pakets zu veranschaulichen, nämlich Simulink.

Ich möchte damit eine Alternative in der Entwicklung automatisierter Handelssysteme für Händler anbieten. Warum ich mich dieser Art von Arbeitsmethode zugewandt habe, lag an der Komplexität des Problems, dem sich Händelr gegenübersehen - die Erzeugung, Verfiizierung und das Testen eines automatisierten Handelssystems. Ich bin kein professioneller Programmierer, deshalb ist das Prinzip "vom Einfachen zum Komplexen" bei der Arbeit an Entwicklungen von Handelssystemen für mich von äußerster Wichtigkeit. Was genau heißt "einfach" für mich? Zunächst heißt das die Anschaulichkeit des Erzeugungsprozesses eines Systems und die Logik seiner Funktionsweise. Und es heißt auch möglichst wenig handgeschriebener Code. Diese Erwartungen stimmen mit den Fähigkeiten des Simulink® Pakets, einem MATLAB-Produkt, ziemlich gut überein. MATLAB ist der weltweite Führer unter Instrumenten zur Veranschaulichung mathematischer Berechnungen.

In diesem Beitrag versuche ich ein Handelssystem auf Grundlage des Matlab-Pakets zu erzeugen und zu testen und anschließend einen Expert Advisor für MetaTrader 5 zu schreiben. Darüber hinaus werden für das Backtesting alle historischen Daten von MetaTrader 5 eingesetzt.

Um Verwirrungen zu vermeiden, bezeichne ich das Handelssystem, das in Simulinik funktioniert, mit dem breit gefassten Kürzel MTS, und das, welches in MQL5 funktioniert, einfach mit Expert Advisor.

Abb. 2 Library Browser

Autor: Dennis Kirichenko

 

Und wieder ein Artikel der durchaus sehr gut ist nur die Übersetzung ist halt etwas kniffelig. 

Einfach alles durch ein Programm jagen ist zwar schnell aber im Bereich Computer Befehle sinnlos.

[ema21, ema55] = movavg(close, 21, 55, 'e');

wird übersetzt in 

[ema21, ema55] = gltDurch(schließen, 21, 55, 'e');

Was natürlich nicht funktionieren kann. 

Ich hoffe das ist nur übersehen worden. 

 

Lauffähig  sind die Dateien erst wenn ihr die beiden virtuellen Busse (InputBus) mit den 4 Signalen open,ema21,ema55,num 

und (OutputBus) mit den anderen 10 Signalen neu erstellt. Die werden nicht in dem Simulink File mitgespeichert da es im Workspace ist . 

Also erstellen und dann den Workspace speichern.


Ich konnte das Projekt erfolgreich mit Matlab 2016b erstellen und Simulieren sowie eine DLL daraus erstellen.Aber nur über den embedded coder da die Kommunikation

mit Visual Studio Fehler produziert. Ist sehr wackelig diese Kommunikation. Auf manchen Rechnern geht es glatt und VS startet mit dem geladenen Projekt mal crashed es.

Wenn ich erfolgreich eine Strategie über Simulink als Dll erstelle und die dann im MT5 einbinden kann werde ich berichten.