MT4/MT5-EA´s für außerbörsliche Orderaufgabe

      Neu

      @Herzober

      Kenne den Fehler nicht, hört sich aber nach einem Berechtigungsproblem an. So als wärst Du nicht berechtigt, die EX5 Datei in den Ordner zu schreiben.
      Kann Dir also per folgendem ScreenShot lediglich zeigen, dass mein Benutzername die volle Zugriffsberechtigung auf den Ordner "Experts" hat, in dem sich sowohl die "Stock_OCO_Order_at_Open.mq5", wie auch die "Stock_OCO_Order_at_Open.ex5" befinden:
      Bilder
      • 2020-09-19 11h01.png

        54,62 kB, 919×618, 7 mal angesehen

      Neu

      Hallo zusammen,
      ich bin neu hier und finde die alte Swingtrading-Methode von Hintman sehr spannend.
      Ich möcht's natürlich erst im Demomodus ausprobieren.
      Hab dafür ein Demokonto bei Activtrades mit Metatrader 5 (weil im 4er keine Aktien gehandelt werden können) eröffnet und die Kurslisten mit Charts bei Guidants angelegt. Natürlich bin ich dann auf das Problem mit der außerbörslichen Orderaufgabe gestoßen.
      Dankenswerterweise hat hier ja schon einer oder mehrere ein Skript für die Orderaufgabe programmiert.

      Nun komm ich zu meiner Frage: Wie importiere ich dieses Skript? Eigentlich doch mit öffnen im Editor und "kompilieren" oder? Da kommt dann bei mir eine Fehlermeldung "EX5 write error - 1 errors, 0 warnings Zeile 2 Spalte 1"

      Vielen Dank für Ratschläge!
      Oooooh, wie ist das schöööön, ooooh.... :P

      Danke mein Lieber! Bestätige mir mal ob deine Mailadresse noch aktuell ist, dann lass ich dir mal was zukommen als kleines Dankeschön.
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      @'Hintman

      Hier die Version 1.06 mit folgender Änderung:

      1) Neue Input Variable <TakeProfit_und_StopLoss_Angabe> um angeben zu können, ob mit TakeProfit und StopLoss a) der "absolute Preis" oder b) der "relative Abstand zum Einstiegspreis" gemeint ist
      Sprich hier kann zwischen "Angabe_als_absoluter_Preis" (Standardauswahl) und "Angabe_als_relativer_Abstand_in_Punkten_zum_Einstiegspreis" ausgewählt werden.

      Im Screenshot siehst Du ein Beispiel für Daimler (DAI.GE) mit einem Sell Limit bei 43.60 und der Auswahl "Angabe_als_relativer_Abstand_in_Punkten_zum_Einstiegspreis" mit TakeProfit=0.5 (wäre dann 43.10) und StopLoss=0.25 (wäre dann 43.85)
      Bilder
      • 2020-08-28 14h36.png

        21,5 kB, 807×367, 31 mal angesehen
      Dateien
      @Remlowski

      Ich hoffe inständig, dass du hier noch mal mit liest.

      Könnte man eine Version des EA´s bauen, dem man nur den absoluten Abstand zum SL und PT eingibt, welche dann abhängig vom tatsächlichen Einstiegskurs erst gesetzt werden?
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Absolutely loving it!
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Habe jetzt also Version 1.05 draus gemacht mit folgenden Änderungen:

      1) Umstellung der Input Variablen <OpenHour> für die Uhrzeit, ab wann der EA die Order (mit dem nächsten Tick) an den Handelsserver übergeben soll. Es können nun auch Minuten eingegeben werden.
      2) Uhrzeit für Ablauf von Pending Orders als weitere Input Variable <ExpirationHour> eingebaut, so dass dieser EA dann auch geschlossen werden könnte, sobald die Pending Orders erstellt wurden

      Hard-codiert ist nach wie vor, dass der EA maximal 10 Minuten lang (ab <OpenHour>) versucht, die Order an den Handelsserver zu senden. Sprich:
      • Wenn Du 15:30 eingibst und den EA schon um 15h startest, dann wird die Order mit dem ersten Tick nach 15:30 an den Handelsserver geschickt.
      • Wenn Du 15:30 eingibst und den EA aber erst um 15:39 startest, dann wird die Order mit dem ersten Tick nach 15:39 an den Handelsserver geschickt.
      • Wenn Du 15:30 eingibst und den EA aber erst um 15:40 oder später startest, dann macht der EA gar nichts mehr.
      Bilder
      • 2020-05-21 14h12.png

        22,13 kB, 671×366, 82 mal angesehen
      Dateien
      Ich komme mit der US-Version nicht klar. Ich habe mir den EA geklont und für US-Aktien die Zeit geändert, in der die Orderaufgabe gültig ist.

      15:30 will er nicht nehmen. Gut, dann gebe ich also 15 ein und 50 Minuten, dann sollten die Orders ja bis 15:50 aufgegeben werden:



      Will ich ihn anwenden zeigt der EA im Chart aber diese Ausgabe, Orders wurden mir heute um 15:30 auch nicht ausgeführt:

      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Morning @Hintman

      Sieht tatsächlich so aus, als liefen die EAs aus den verschiedenen Charts immer ziemlich parallel an. Hatte mir vorgestellt, dass ein EA bereits einen Deal ausgelöst haben könnte, bevor der andere anläuft. Wenn das also nicht so ist, dann ist alles gut. Ansonsten melde Dich, dann kann man es ja immer noch einbauen wie beschrieben
      Guten Morgen @Remlowski

      Also ich hab jetzt seit einigen Tagen immer die Kombination Stop- und Limit laufen gehabt. Und nie Probleme entdeckt. Kann ja den Zufall nicht immer auf meiner Seite haben, oder was meinst du?

      Angehängt wieder ein Screenshot aus dem Journal von heute.

      Die Stop-Sell auf Daimler wurde zum ersten Tick ausgeführt, danach die Limit-Sell an den Server geschickt.
      Bilder
      • 751531 - ActivTrades-Server - Hedge - [[DAI.GE _ D1] -0.17 S ] 2020-05-12 09.11.01.png

        27,07 kB, 835×221, 62 mal angesehen
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Wie gesagt, der Spread kann nur für Stop- oder Limit-Orders, die in Market-Orders umgewandelt werden, im Kommentar eingetragen werden. Wenn Du nochmal in den Code reinschaust, wirst Du sehen, dass es dort einen Unterschied gibt.

      Zum Beispiel für Deine Buy Stop Order wurde überprüft, wo der aktuelle Kurs ist und da der nicht über deinem angegebenen Preis gelegen hat, wurde eine Buy Stop Order angelegt, siehe Code Zeile 168.
      Das heißt, ab diesem Zeitpunkt liegt diese Pending Order auf Deinem Handelsserver und wird irgendwann (vielleicht) vom Handelsserver ausgeführt. Das bekommt der EA dann aber nicht mehr mit und er kann auch nicht im voraus im Kommentar eintragen, wie hoch der Spread sein wird, weil das noch nicht bekannt ist.

      Wenn der aktuelle Kurs aber über Deinem Preis gelegen hätte, dann wäre Deine Buy Stop Order in eine Market Order umgewandelt worden und der EA hätte direkt selbst gekauft, siehe Code Zeile 159. In dieser Situation ist der Spread dem EA jedoch bekannt (der wurde in Zeile 148 abgefragt) und deshalb kann der EA den Spread im Kommentar auch gleich eintragen.

      Hintman schrieb:

      Finde ich großartig, dass du diese Ausgabe im Kommentar eingebaut hast!


      Eine Idee warum mir der Spread im Kommentar nur bei ausgeführtne Limit-Orders angezeigt wird? Bei den ausgeführten Stop-Orders steht nur "Buy Stop" im Kommentar. Hab in den Code reingesehen, da wäre das eigentlich berücksichtigt.
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!

      Test Vivendi 06.05.

      Wieder Vivendi mit einem Kaufsignal für heute, also wieder mit Buy-Stop über dem Tageshoch und mit Buy-Limit 1 Cent unter dem Close versehen.

      Buy-Limit (die mit 2 Stück) wurde ausgeführt, Buy-Stop (1 Stück) liegt noch als Pending Order drin.
      Bilder
      • 751531 - ActivTrades-Server - Hedge - [[VIV.FR _ H1] -2.16 L ] 2020-05-06 11.03.05.png

        5,25 kB, 686×42, 70 mal angesehen
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Finde ich großartig, dass du diese Ausgabe im Kommentar eingebaut hast!
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Ja also mit dem Spread könnte man programmatisch schon etwas machen, wenn man das möchte. Im EA wird für Stop- oder Limit-Orders, die in Market-Orders umgewandelt werden, die Info bzgl Spread auch im Kommentar eingetragen, was Du sicher schon bei Dir gesehen hast. Am 1. Mai ist mir zum Beispiel beim Programmieren/Testen dieses EAs via FXFlat unabsichtlich eine Order rausgeflutscht (war zu faul, ein Demo Konto einzurichten ;( ), was mich wegen des Spreads von 6.9 Punkten gleich mal 10 EUR gekostet hat, siehe Bild
      Bilder
      • 2020-05-06 09h58.png

        11,18 kB, 1.262×110, 61 mal angesehen
      Guten Morgen,

      meinte tatsächlich den Spread. Der gerade in den ersten Handelsminuten oft außerirdisch ist, je nach Broker. Bei ActivTrades ist dieser "Schutz" bisher praktisch nicht nötig gewesen, da die ersten 30 Sekunden nach 9 rausgefiltert werden.
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      Nehme an, Du meinst nicht den Spread zwischen ask und bid, sondern die maximal erlaubte Abweichung (Slippage) vom eigentlich erwarteten Preis. Nein, habe ich noch nicht verwendet.

      Im Kontext dieses EA frage ich mich auch, ob es viel bringt?
      Bei einer Limit Order braucht man es nicht, da man ja den Limit Preis angegeben hat.
      Und bei einer Stop Order weiß man eh nicht im voraus, zu welchem Preis gekauft wird. Hier würde ich eher noch die Angabe eines maximalen Preises sehen, es gäbe hier ja auch noch die Möglichkeit einer "Stop Limit Order". Aber das habt Ihr ja mit der CRV Berechnung abgekaspert. Oder was meinst Du genau ?
      Spannend, ich werde weiter die nächsten praktischen Einsätze dokumentieren, danke schon mal!

      Hast du schon mal eine maximal erlaubte Spread-Begrenzung in deinen EA´s verwendet? Wäre auch eine nette Sicherung...
      Der Autor ist in den besprochenen Werten zumeist selbst investiert. Traden auf eigene Gefahr, Signale sind aktuell großteils experimentell zwecks Challenge "In 30 Tagen zur Trading Strategie".
      Plane deinen Trade, trade deinen Plan!
      If it´s not a HELL YES, it´s a NO!
      @Hintman

      Habe mal die relevanten 3 Zeilen Deines ScreenShots abgetippt, dem man entnehmen kann, dass der EA bereits beide Orders 1) und 2) an Deinen Handelsserver geschickt hat, BEVOR es zum "Deal" 3) kam:

      1) 2020.05.05 09:00:41.490 buy stop 1.00 VIV.FR at 19.73
      2) 2020.05.05 09:00:41.490 market buy 2.00 VIV.FR
      3) 2020.05.05 09:00:41.543 deal #95897019 buy 2.00 VIV.FR done

      Ich hatte ja vermutet, dass es NICHT funktionieren wird, wenn ZUERST eine Market Order eröffnet wird (sprich wenn es bereits einen "Deal" gegeben hat).
      Das denke ich immer noch. Falls es also bereits einen "Deal" für VIV.FR gegeben hätte, dann hätte der EA die zweite Order (sei es Market Order oder Pending Order) NICHT an den Handelsserver geschickt.

      Was mich überrascht ist, dass 1) und zwei 2) tatsächlich in derselben Millisekunde ausgeführt wurden.
      Wenn es immer so ist, dass der EA für die zweite Order bereits läuft, BEVOR es einen "Deal" gegeben hat, dann sollte es kein Problem geben.

      Aber folgende Reihenfolge wäre halt NICHT gegangen:

      1) 2020.05.05 09:00:41.490 market buy 2.00 VIV.FR
      2) 2020.05.05 09:00:41.543 deal #95897019 buy 2.00 VIV.FR done
      3) 2020.05.05 09:00:41.555 buy stop 1.00 VIV.FR at 19.73

      Sprich der EA hätte die Buy Stop Order 3) nicht an den Handelsserver geschickt, wenn es bereits den Deal 2) gegeben hätte