Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools

Metatrader Forum | Forex Expert-Advisor | Broker & Forex Tools (http://www.expert-advisor.com/forum/index.php)
-   Programmierung MQL4 (http://www.expert-advisor.com/forum/forumdisplay.php?f=220)
-   -   EA um Trade zu einem fixen Zeitpunkt auszuführen (http://www.expert-advisor.com/forum/showthread.php?t=3711)

Sniperassassin 16.06.14 23:36

EA um Trade zu einem fixen Zeitpunkt auszuführen
 
Guten Tag,
ich bin neu hier und habe die Suchfunktion genutzt, leider ohne Erfolg.

Ich suche einen EA für den MT4 der Folgendes kann:
Trade zu einer eingegebenen Zeit ausführen z.B. um 8.00 Uhr Buy 1 Lot EUR/USD.
Das ganze versehen mit einem fest einzugebenden SL und TP.
Ggf. als Auswahlmöglichkeit ein TrailingSL.
Schließen sämtlicher offenen Positionen zu einem festen Zeitpunkt wenn der SL oder TP nicht ausgelöst wurde.

Wäre schön wenn mir jemand helfen könnte und schonmal vorab vielen Dank für die Mühe.

MfG Sniperassassin

DocRandom 19.06.14 04:46

Hi!

..ähm, wenn Du die Suchfunktion im Forum bemühst wirst Du alles was Du beschrieben hast finden.
Danach etwas Übung mit dem Metaeditor und schon hast Du Deinen EA.

Wenn Du aus den Infos was gebastelt hast und nicht mehr weiter kommst, wird Dir hier sicherlich geholfen.

lg

fxdaytrader 19.06.14 10:48

Zitat:

Zitat von Sniperassassin (Beitrag 26504)
Trade zu einer eingegebenen Zeit ausführen z.B. um 8.00 Uhr Buy 1 Lot EUR/USD.
Das ganze versehen mit einem fest einzugebenden SL und TP.

Soll das dann nur einmalig geschehen oder täglich?
An sich ist das recht unkompliziert. Check ob ein neuer Tag, dann check für die Uhrzeit und dann geht das los.
Jetzt könnte man dann noch div. Sicherheiten einbauen (falls bspw. zum Startzeitpunkt keine Verbindung zum broker etc. besteht) daß die Order auch später abgesetzt werden kann falls es vorher nicht geht, etc. pp.

Zitat:

Zitat von Sniperassassin (Beitrag 26504)
Schließen sämtlicher offenen Positionen zu einem festen Zeitpunkt wenn der SL oder TP nicht ausgelöst wurde.

Ebenfalls: Soll das dann nur einmalig geschehen oder täglich?

Für trailingstop und andere Dinge könntest Du einen der üblichen ordermanagement-eas nutzen (bspw. den mptm oder mptm global (google/forensuche) ...

Sniperassassin 19.06.14 17:00

Beide Funktionen des EA sollen täglich ausgeführt werden.

Ich hatte bereits den EA "e-OpenByTime Buy" ausprobiert aber er funktioniert bei mir nicht richtig.

fxdaytrader 20.06.14 00:13

Ok, sobald ich Zeit + Lust haben werde (ich vermute mal morgen im Laufen des späten Vormittages) schaue ich mal ... :)

Sniperassassin 22.06.14 22:54

Super, schonmal vielen Dank.

fxdaytrader 23.06.14 00:01

jau, ich melde mich dann hier im thread. Heute bspw. hätte ich Lust gehabt, aber leider nicht genug Zeit :( ein wenig um die Ohren aktuell.

fxdaytrader 23.06.14 12:17

Liste der Anhänge anzeigen (Anzahl: 1)
Ich denke das funktioniert, teste mal bitte ...

Sniperassassin 29.06.14 01:43

War gesundheitlich die letzten Tage stark angeschlagen.
Ich werde mir die Datei morgen anschauen, sieht aber auf den ersten Blick sehr gut aus.

Sniperassassin 30.06.14 23:36

Vielen Dank fxdaytrader.
Der EA erledigt soweit alles wie gedacht, super.

Wenn ich fragen zu ein paar Einstellungen habe, kann ich dir diese hier stellen?

fxdaytrader 30.06.14 23:52

Klar, fragen kann man alles. Ob es dann auch Antworten geben wird ist die andere Frage :D

Spaß beiseite -> Eigentlich sollten die Einstellungen selbsterklärend sein, aber wenn doch noch was unklar sein sollte dann frage ruhig ... :)

Sniperassassin 01.07.14 23:22

Ein kleines Problem ist aufgetreten, vielleicht ist es ja hier bekannt.
Der Trailing Stopp bzw. hier im EA Jumping Stopp oder ATR wird bei mir nicht ausgeführt.

Der SL bleibt für die ganze Dauer des Trades fix und wird nicht verschoben.
Jemand eine Idee woran das liegen kann? MT4 Version ist 646.

Ansonsten "Last High/Low for SL?" wonach richtet sich diese Einstellung?

fxdaytrader 01.07.14 23:36

irgendwelche fehlermeldungen im experts/journal-tab?
jumpingstop auch aktiviert?

Sniperassassin 03.07.14 17:38

Der Jump-Stop war aktiviert.
Fehlermeldungen bzw. Hinweismeldungen wurden im Journal nicht ausgegeben.
Mit meinem 2. Demokonto beim selben Broker (5-digit) habe ich es auch getestet da ist auch nichts passiert.
Ein Freund von mir mit derselben Metatraderversion aber anderem Broker (5-digit) hatte keine Probleme, bei ihm geht der Jump-Stop und auch der ATR.

kamü 06.07.14 07:47

Für diesen Ansatz (Long oder Short um 8 Uhr ) gibt es ein schönes Webinar:

https://www.youtube.com/watch?v=x1TNa18lWtk

Allerdings wird dabei die erste Stunde als Indikator für den weiteren Verlauf
herangezogen.

Das würde gut in den EA passen.

kamü

fxdaytrader 06.07.14 07:56

Zitat:

Zitat von Sniperassassin (Beitrag 26677)
Der Jump-Stop war aktiviert.
Fehlermeldungen bzw. Hinweismeldungen wurden im Journal nicht ausgegeben.

Tja, da weiß ich auch nicht woran das liegen könnte, ich kann leider noch nicht hellsehen :) :D

janosch72 11.09.15 14:51

Liste der Anhänge anzeigen (Anzahl: 1)
Hallo,

bin neu in diesem Forum. Habe auch Interesse an einem EA der zu einer bestimmten Zeit (8:00 Uhr) mehrere Order anlegt. Zum Beispiel sollen jeweils eine Buy- und eine Sell-Order in vier unterschiedlichen Varianten angelegt werden. Zusätzliche Angaben zur Order wären: Kurs, Stop, Limit, gültig bis. Am Ende sollen alle Trades um 21:59 Uhr geschlossen werden.

Leider kann ich die OpenTradeAtCertainTime with TimeBasedSL EA.ex4 nicht öffnen, damit ich mir den EA anschauen kann.

Habe auch bereits anhand des angehängten EAs (aus einem anderen Forum kopiert) ein bisschen herumgespielt. Mein Problem ist, wie gebe ich dem OrderSend die Zeit mit, an dem die Order automatisch angelegt werden soll?

Danke im Voraus für eure Hilfe.

janosch72 14.09.15 09:01

Hallo,

ich habe meinen EA angepasst. Die Order werden erstellt, bloss es werden innerhalb dr einen Minute unzählige Order erstellt. Ich habe nach dem OrderSend in den vier Varianten den Status=True gesetzt, den ich weiter oben abfange. Irgendwie greift dieser nicht, oder hab ich da einen Denkfehler?

Code:

//---- input parameters
extern int      OpenHour      = 9;        // Time to open, hours
extern int      OpenMinute    = 0;        // Time to open, minutes
extern bool    UseCurrSymbol = False;    // Use one symbol only
extern bool    UseOneAccount = False;    // Use one account only
extern int      NumberAccount = 1238827;  // Account number
extern int      Slippage      = 3;        // Slippage
extern double  LongEntryV1  = 0;
extern double  ShortEntryV1  = 0;
extern double  LongEntryV2  = 0;
extern double  ShortEntryV2  = 0;
extern double  LongEntryV3  = 0;
extern double  ShortEntryV3  = 0;
extern double  LongEntryV4  = 0;
extern double  ShortEntryV4  = 0;
extern double  Lots          = 3;
extern int      StopLossV1    = 140;
extern int      TakeProfitV1  = 160;
extern datetime ExpV1        = D'14.09.2015 18:29:00';
extern int      StopLossV2    = 250;
extern int      TakeProfitV2  = 130;
extern datetime ExpV2        = D'14.09.2015 18:29:00';
extern int      StopLossV3    = 190;
extern int      TakeProfitV3  = 140;
extern datetime ExpV3        = D'14.09.2015 18:29:00';
extern int      StopLossV4    = 80;
extern int      TakeProfitV4  = 190;
extern datetime ExpV4        = D'14.09.2015 13:59:00';
extern bool    Status        = False;    // wurden die Order gesetzt?


void start() {

  if (UseOneAccount && AccountNumber()!=NumberAccount) {
    Comment("Working on the account: "+AccountNumber()+"is PROHIBITED!");
    return;
  } else Comment("");


  if (Hour()==OpenHour && Minute()==OpenMinute) {
    if(Status==False) {
      if(LongEntryV1  > 0) OrderSend(Symbol(),OP_BUY,Lots,LongEntryV1,Slippage,StopLossV1,TakeProfitV1,"V1 Buy",0,ExpV1,Blue);
      if(ShortEntryV1 > 0) OrderSend(Symbol(),OP_SELL,Lots,ShortEntryV1,Slippage,StopLossV1,TakeProfitV1,"V1 Sell",0,ExpV1,Red);
   
      if(LongEntryV2  > 0) OrderSend(Symbol(),OP_BUY,Lots,LongEntryV2,Slippage,StopLossV2,TakeProfitV2,"V2 Buy",0,ExpV2,Blue);
      if(ShortEntryV2 > 0) OrderSend(Symbol(),OP_SELL,Lots,ShortEntryV2,Slippage,StopLossV2,TakeProfitV2,"V2 Sell",0,ExpV2,Red);
   
      if(LongEntryV3  > 0) OrderSend(Symbol(),OP_BUY,Lots,LongEntryV3,Slippage,StopLossV3,TakeProfitV3,"V3 Buy",0,ExpV3,Blue);
      if(ShortEntryV3 > 0) OrderSend(Symbol(),OP_SELL,Lots,ShortEntryV3,Slippage,StopLossV3,TakeProfitV3,"V3 Sell",0,ExpV3,Red);

      if(LongEntryV4  > 0) OrderSend(Symbol(),OP_BUY,Lots,LongEntryV4,Slippage,StopLossV4,TakeProfitV4,"V4 Buy",0,ExpV4,Blue);
      if(ShortEntryV4 > 0) OrderSend(Symbol(),OP_SELL,Lots,ShortEntryV4,Slippage,StopLossV4,TakeProfitV4,"V4 Sell",0,ExpV4,Red);
   
      int exitday = DayOfWeek()+1;
        if(exitday == 6)
          exitday = 0;
             
      Status=True;
    } else Status=False;
  }
}

Danke im Voraus für eure Hilfe.

Grüße, Janosch


Alle Zeitangaben in WEZ +2. Es ist jetzt 05:26 Uhr.

Powered by vBulletin® Version 3.8.5 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
SEO by vBSEO 3.6.1
Powered by vBCMS® 2.7.0 ©2002 - 2024 vbdesigns.de
Copyright ©2009 - 2023 by Expert-Advisor.com - Das Metatrader Forum