EA für Live account rüsten

 

Hallo zusammen,

ich experimentiere gerade mit einem EA, den ich gerne im Live-Handel testen will. Nun gibt es mehrere Dinge, welche man beim Backtesten und Schmieden des ExpertAdvisors erstmal garnicht beachtet. Folgende Punkte sind mir in dem Prozess aufgefallen:

1. Es kann vorkommen, dass mehrere EA´s ein Asset handeln und die einzelnen EA´s dann plötzlich nicht mehr ihr jeweiliges Order/Position-Ticket zuweisen können. Ich nehme an, dass man dies mit der Magic-Number beheben kann?

2. Der Experte stürzt ab und muss neu im Chart geladen werden, Es kam dann schon dazu, dass der EA Positionen und Orders doppelt geöffnet hat, ganz miese Sache.

3. Der Experte stürzt wieder ab und Positionen/Orders gehen verloren und nähren sich am Swap.

4. Der Experte führt die Positionen aufgrund des Swaps nicht genauso aus wie im Strategietester. Möglicherweise könnte hier ein SwapFilter als letzte Instanz zwischengeschaltet werden?


Gibt es zu einem oder am besten allen Punkten, einschlißelich den Punkten, die hier nicht gelistet sind irgendwelche Artikel, Code-Schnipsel oder Verbesserungsvorschläge? Das kann doch nicht sein, dass die Code-Base da ncihts bereitstellt..

Danke euch:)

 

ad 1, Magic-Nummer: ja!

ad 2, Absturz: Bau eine Schleife durch alle offenen Positionen ein.

Zusatzfrage, warum soll ein EA abstürzen?

ad 2 & 3, mach einen zweiten EA, der nur kontrolliert und Dir eine Push-Meldung bzw. Alert schickt.

 
Carl Schreiber #:

ad 1, Magic-Nummer: ja!

ad 2, Absturz: Bau eine Schleife durch alle offenen Positionen ein.

Zusatzfrage, warum soll ein EA abstürzen?

ad 2 & 3, mach e3inen zweiten EA, der nur kontrolliert und Dir eine Push-Meldung bzw. Alert schickt.


Nice!

zu 2: Also einmal in der init() durch alle möglichen offenen Positionen schleifen.
Zur Zusatzfrage: Hatte einen Server gemietet, der mir nach ein paar Tagen manche EA´s einfach rausgeschmissen hat.. Also ja, der EA an sich stürzt nicht ab, wenn dann der Server, oder das Internet?

zu 3: Super idee, das kratzt dann nicht an der Performance des Haupt EA´s!


Danke!

 
Claudius Marius Walter #:

Nice!

zu 2: Also einmal in der init() durch alle möglichen offenen Positionen schleifen.
Zur Zusatzfrage: Hatte einen Server gemietet, der mir nach ein paar Tagen manche EA´s einfach rausgeschmissen hat.. Also ja, der EA an sich stürzt nicht ab, wenn dann der Server, oder das Internet?

zu 3: Super idee, das kratzt dann nicht an der Performance des Haupt EA´s!


Danke!

Ein 2. EA als Überwachung ist immer sinnvoll. Der kann dir auch einen Bug das 1. Melden wenn er es selber nicht merkt :-)

Stichwort zu viele(ungewollte) offen Positionen oder negative Balance oder oder oder..

 
Claudius Marius Walter #:

Nice!

zu 2: Also einmal in der init() durch alle möglichen offenen Positionen schleifen.
Zur Zusatzfrage: Hatte einen Server gemietet, der mir nach ein paar Tagen manche EA´s einfach rausgeschmissen hat.. Also ja, der EA an sich stürzt nicht ab, wenn dann der Server, oder das Internet?

zu 3: Super idee, das kratzt dann nicht an der Performance des Haupt EA´s!

Danke!

add 3: Der muss doch nicht bei jeden Tick laufen alle 5 Minuten oder so würde doch reichen: OnTimer().

Der "Trader" aktualisiert eine globale Variable (ohne Timer) und der "Checker" prüft den Aktualisierungszeitpunkt - ist doch ganz simpel.

Dokumentation zu MQL5: Ereignisbehandlung / OnTimer
Dokumentation zu MQL5: Ereignisbehandlung / OnTimer
  • www.mql5.com
OnTimer - Ereignisbehandlung - Nachschlagewerk MQL5 - Nachschlagewerk über die Sprache des algothitmischen/automatischen Handels für MetaTrader 5
 
Claudius Marius Walter:

Hallo zusammen,

ich experimentiere gerade mit einem EA, den ich gerne im Live-Handel testen will. Nun gibt es mehrere Dinge, welche man beim Backtesten und Schmieden des ExpertAdvisors erstmal garnicht beachtet. Folgende Punkte sind mir in dem Prozess aufgefallen:

1. Es kann vorkommen, dass mehrere EA´s ein Asset handeln und die einzelnen EA´s dann plötzlich nicht mehr ihr jeweiliges Order/Position-Ticket zuweisen können. Ich nehme an, dass man dies mit der Magic-Number beheben kann?

2. Der Experte stürzt ab und muss neu im Chart geladen werden, Es kam dann schon dazu, dass der EA Positionen und Orders doppelt geöffnet hat, ganz miese Sache.

3. Der Experte stürzt wieder ab und Positionen/Orders gehen verloren und nähren sich am Swap.

4. Der Experte führt die Positionen aufgrund des Swaps nicht genauso aus wie im Strategietester. Möglicherweise könnte hier ein SwapFilter als letzte Instanz zwischengeschaltet werden?


Gibt es zu einem oder am besten allen Punkten, einschlißelich den Punkten, die hier nicht gelistet sind irgendwelche Artikel, Code-Schnipsel oder Verbesserungsvorschläge? Das kann doch nicht sein, dass die Code-Base da nichts bereitstellt..


Danke euch:)

Guten Abend,

das scheinst du aber noch ganz schön viele Baustellen bei dem EA zu haben...

Es macht immer Sinn eine gute Basis für eine EA zu nutzen wenn du den EA selber mit alle Funktionen die er zum Handeln benötigst baust dann kannst du auch schnell die Übersicht verlieren.

Zu den einzelnen Punkten:

1. Am besten kannst du Positionen unterscheiden in dem du SelectPosition verwendest und diese nach Asset und Magic Number abfragst. Bei schleifen kannst du am besten Positionen nach dem Index der Reihe nach kontrollieren...

2. Ein EA der Abstürzt hat ja extra eine Deinit Funktion dir dir ggf. eine Log schreiben kann bzw. eine Antwort möglich gibt bzw. die Möglichkeit eröffnet was beim runterfahren passieren soll... Wenn der Server abstürzt fährt der nicht einfach wieder mit geladen EA´s on Trade hoch... Das kann ich mir nicht vorstellen.

2.1 Du kannst die Anzahl der offenen Positionen einfach begrenzen, wenn der EA on Tick handelt kann es natürlich vorkommen das er ohne Begrenzung unzählige Positionen öffnet, das hat weniger mit dem "Doppel" öffnen zu tun, sondern Tick bei Tick da Signal True.

Im Gegensatz zu dem Vorschlag die on Timer Funktion (die ist dafür nicht gedacht...) zu verwenden macht es mehr Sinn den innerhalb des Tick Prozesses is New Candle abzufragen da durch den Timer, alleine schon durch den Startpunkt, ein Zeitversatz zu den Tick Intervallen entstehen wird und dadurch ein komplett Unterschiedlicher Handelszyklus. Du kannst aber auch die Ticks beschränken in dem du dem Signal Vorgibst das es nur innerhalb der ersten Ticks einer Candle handeln darf, mach man dann mit "Rates". Die On Tick Funktion ist für den Handel, On Timer für die Überwachung von Zeiten oder auch Funktionslastigen Aktualisierungen von OnChartComments oder ähnlichen, oder auch der Simulationen bzw. Hochrechnung einer Server Zeit falls diese ausfällt... um nur einige Beispiele zu nennen. In der on Trade Funktionen kannst du zum Beispiel Trades nachverfolgen etc.

3. Eine Schleife durch alle Positionen benötigst du so oder so in der OnTick Funktionen aber mit SelectPosition oder ähnlichen Funktionen wirst du immer eine Position oder Order wiederfinden, die geht nicht verloren. Im Zweifel kannst du auch, wie in 1. beschrieben, Positionen und Orders per Index abfragen wobei 0 die älteste Position ist und dann hochzählt...

4. Swap Filter? Oder Slippage Filter?... Normal rechnet der Strategietester die Swaps anhand der Symbol informationen mit, somit eigentlich nicht wirklich existent das Problem... Vor allem was soll eine Swap Filter tun. Swap ist immer gleich, je nach Symbol und natürlich Broker unterschiedlich. Aber wie beschrieben rechnet der Strategietester auch damit...

... Eine zweiter oder dritter EA halte ich für sehr Fraglich, was sollen die machen, wenn der erste nicht richtig läuft, wie willst du sicherstellen das die anderen fehlerfrei laufen...???

... Man fragt nie die Positionen innerhalb der OnInit Funktion ab die ist nur für das laden der vom EA benötigten Handler, Indikatoren, Zuweisung von Settings, Validierung der Settings, etc.

Viele Grüße,

 

Wow, viele Dank für die vielen Anstöße!

Zu deiner Frage bezüglich den mehreren EA´s. Je nach Anforderung an das Handelssystem ist es sinnvoll, mehrere EA´s getrennt laufen zu lassen. Beispielsweise einen Scalper. Bei dem ist Geschwindigkeit quasi alles. Wenn ich hingegen irgendwo im H1er TF nem Trend folge, kann ich natürlich auch gleich einen multiwährungsfähigen EA zur Hand ziehen, da kommt es nicht so sehr auf die Leistung an.

 
Claudius Marius Walter #:

Wow, viele Dank für die vielen Anstöße!

Zu deiner Frage bezüglich den mehreren EA´s. Je nach Anforderung an das Handelssystem ist es sinnvoll, mehrere EA´s getrennt laufen zu lassen. Beispielsweise einen Scalper. Bei dem ist Geschwindigkeit quasi alles. Wenn ich hingegen irgendwo im H1er TF nem Trend folge, kann ich natürlich auch gleich einen multiwährungsfähigen EA zur Hand ziehen, da kommt es nicht so sehr auf die Leistung an.

In dem Zusammenhang machen mehrere EA´s selbstverständlich Sinn. Also um verschiede Strategie zu fahren. Es macht nur wenig Sinn wenn man durch EA´s andere EA beim Handel zu überwachen...

Auch halte ich wenig von EA´s die von einer Währung Trades in mehren Währungen ausführen, Multiwährungsfähige EA´s machen Sinn, aber nur einzel pro Währung da die Settings mit Sicherheit, pro Währung, angepasst werden müssen. Mit einem EA mehrere Währungen zu Überwachen und das mit einer Strategie... nahezu unmöglich...!

Somit ein EA pro Währung, und der Überwacht am besten mehre Zeiträume damit das "gesamt Bild" stimmt...!

Bei Fragen einfach melden, ich habe schon soviel mit MQL gearbeitet da sind die anfänglichen Probleme meist schnell zu beantworten.

Schönen Abend, und weiterhin viel Erfolg bei der Umsetzung des EA´s.

Grund der Beschwerde: