EA mit mehreren Magic Numbers

 

Hallo zusammen,

aktuell bin ich ich immer noch dabei, mit vorgefertigten Sachen zusammenzufrickeln und zu schauen, was funktioniert und zu optimieren und somit ein Bisschen die syntax und den Tester kennenzulernen und bald hoffentlich auch die Klassen mal stärker anzugehen.

Leider komme ich mit meinen dürftigen Programmierkenntnissen schnell an meine Grenzen. Ich verstehe zwar schon Einiges im Prinzip, aber die Anwendung ist kompliziert und die Details geben einem manchmal Rätsel auf. Tja aber so ist das mit der Dunning Kruger Kurve: bewegt man sich von ganz rechts nach links wird es vom Gefühl her erstmal schlimmer...

Gerade möchte ich einen EA mit zwei oder mehr Handelssystemen bauen, die unabhängig voneinander Orders abgeben und jedes davon soll eine eigene Magic Number einsetzen, damit erstmal nur eine offene Position je System existieren kann, aber natürlich mehrere verschiedene gleichzeitig.

Habe jetzt gesehen, dass man mit der Handelsfunktion ganz einfach die Magic Number ändern kann. Soweit so gut.

Nun bin ich dabei, den Examples Moving Average EA umzubauen, so dass er zwei Teile enthält, die das tun. Wenn ich zum Beispiel eine Einstellung finde, die für 2015 auf einem Symbol gut funktioniert und für 2016 zwar Nicht viel einnimmt, aber auch nicht viel verliert, dann könnte ich diese ja mit einer anderen Einstellung kombinieren, bei der es andersrum ist. Bei hinreichend vielen verschiedenen Kriterien oder Einstellungen, die sich gegenseitig ergänzen, müsste das ja irgendwann stabiler werden, da es immer welche gibt, die verdienen.

Bei mehr als zwei Systemen komme ich jedoch schnell an meine Grenzen, denn ich müsste den Examples Moving Average EA so umschreiben, dass die ganzen Unterfunktionen mehrmals vorkommen und dann auch die Variablen und und und. Das wäre dann eine sehr monotones und unübersichtliche Arbeit, bei der man schnell den Überblick verliert.

Gibt es eine Möglichkeit, im OnTick eine For Loop laufen zu lassen, die die Variablen bei jedem for Durchlauf aus einer Tabelle eingefügt werden, so dass alle Handelssysteme mit den gleichen Funktionen, jedoch unterschiedlichen Werten laufen? Würde man das dann als Array machen? Könnt Ihr mir Artikel mit ähnlichen Ansätzen empfehlen?

Werde als Nächstes mal den Artikel hier lesen: https://www.mql5.com/de/articles/5022

Kombinieren der Strategien von Trend- und Seitwärtsbewegung
Kombinieren der Strategien von Trend- und Seitwärtsbewegung
  • www.mql5.com
Es gibt viele Handelsstrategien 'da draußen'. Einige suchen nach Trends, andere definieren Preisspannen von Preisbewegungen und handeln dann diese. Ist es möglich beide Ansätze zu kombinieren, um die Profitabilität zu erhöhen?
 

Ich würde für jeden EA im EA eine eigene MagicNummer geben, das geht, ist auch eine Spalte im Terminal Handel und Kontohistorie, aber leider nicht im Strategietester, hab's schon vor langer Zeit mal angeregt, aber ....

Außerdem würde ich für jeden EA im EA ein eigenes Objekt machen, aber insgesamt ist das nicht soooo sinnvoll. Viel zu viel Aufwand, was auch einfacher geht - imho.

 
Carl Schreiber:

Ich würde für jeden EA im EA eine eigene MagicNummer geben, das geht, ist auch eine Spalte im Terminal Handel und Kontohistorie, aber leider nicht im Strategietester, hab's schon vor langer Zeit mal angeregt, aber ....

Außerdem würde ich für jeden EA im EA ein eigenes Objekt machen, aber insgesamt ist das nicht soooo sinnvoll. Viel zu viel Aufwand, was auch einfacher geht - imho.

Puh... also bei Objekt bin ich raus, meinst Du ein eigenes handle für den Indikator?

Du sagtest im Strategietester gibt es keine Spalte für Magic Number. Aber der EA funktioniert dann trotzdem, oder? Ich kann halt nicht nachschauen, "wer" gerade eine Position eröffnet hat?

Ich habe schon phantasiert, ob man die ganzen Werte in einem Array speichern kann, aber dafür müssten sie ja das selbe Format haben... dann war da die Überlegung, eine Tabelle zu bauen, wo die Angaben geholt werden können. Dann kann ich sie aber auch gleich alle als Inputs schreiben. Den Aufwand habe ich auf jeden Fall. Aber die ganzen Funktionen zehnmal zu kopieren und die Variablen manuell auszutauschen, das ist nervig. Vor Allem wenn man was ändern will, dann muss man es auch zehnmal ändern. Könnte man das mit einer Liste oder mit Objektzeigern machen?

 
pennyhunter:

Puh... also bei Objekt bin ich raus, meinst Du ein eigenes handle für den Indikator?

Du sagtest im Strategietester gibt es keine Spalte für Magic Number. Aber der EA funktioniert dann trotzdem, oder? Ich kann halt nicht nachschauen, "wer" gerade eine Position eröffnet hat?

Ich habe schon phantasiert, ob man die ganzen Werte in einem Array speichern kann, aber dafür müssten sie ja das selbe Format haben... dann war da die Überlegung, eine Tabelle zu bauen, wo die Angaben geholt werden können. Dann kann ich sie aber auch gleich alle als Inputs schreiben. Den Aufwand habe ich auf jeden Fall. Aber die ganzen Funktionen zehnmal zu kopieren und die Variablen manuell auszutauschen, das ist nervig. Vor Allem wenn man was ändern will, dann muss man es auch zehnmal ändern. Könnte man das mit einer Liste oder mit Objektzeigern machen?

Hmm, lies einmal diesen Artikel und studiere, wie dort mit den Indikatoren umgegangen wird: https://www.mql5.com/de/articles/5022

Und dann kann ich noch das empfehlen:

https://www.mql5.com/de/articles/496  // Schnelleinstieg oder Kurzanleitung für Anfänger

https://www.mql5.com/en/forum/296230 // How to start with MQL5

Kombinieren der Strategien von Trend- und Seitwärtsbewegung
Kombinieren der Strategien von Trend- und Seitwärtsbewegung
  • www.mql5.com
Es gibt viele Handelsstrategien 'da draußen'. Einige suchen nach Trends, andere definieren Preisspannen von Preisbewegungen und handeln dann diese. Ist es möglich beide Ansätze zu kombinieren, um die Profitabilität zu erhöhen?
Grund der Beschwerde: