|
Programmierung MQL4 Hier gehts rund ums Programmieren in MQL4. |
|
Themen-Optionen | Thema durchsuchen | Ansicht |
|
|||
Pending Order zwischenlagern und bei Marktstart platzieren
Hallo,
ich kann nur abends traden und analysieren dann den Tag und würde gerne meine Orders erzeugen setzen, was aber nicht geht weil der Markt dann meist bereits geschlossen hat. Ich suche daher einen EA, der mit die Orders "zwsichenlagert" und sobald der Markt eröffnet, als Pending Order erzeugt. Gibt es soetwas bereits oder habt ihr eine Idee wie so eine Funktion heissen könnte? Grüße aus München Ronald |
|
|||
Hallo Ronald,
Du kannst zeitbasiert über einen EA die Pending Order einstellen. Z.B. bei Eröffnung des Marktes wird sekundengenau die Pending Order eingestellt. Viele Grüße, Dieter Gesendet von meinem SM-G900F mit Tapatalk |
|
|||
Hallo Dieter,
vielen Dank für die Info, hast du einen Vorschlag für einen EA, mit dem sich dies umsetzen lässt? Grüße Ronald |
|
|||
Hallo Ronald,
ich habe es folgendermaßen gelöst (vielleicht gibt es bessere Lösungen): 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 = xxxxxx; // Account number extern int Slippage = 4; // Slippage extern double ShortEntry = 0; extern double LongEntry = 0; extern int Lots = 1; extern double StopLoss = 100; extern double TakeProfit = 100; extern datetime Exp = D'18.11.2015 18:29:00'; extern int status = -1; extern color clBuy = Blue; // Color of closing buy extern color clSell = Red; // Color of closing sell //+------------------------------------------------------------------+ //| expert start function | //+------------------------------------------------------------------+ void start() { if (UseOneAccount && AccountNumber()!=NumberAccount) { Comment("Working on the account: "+AccountNumber()+"is PROHIBITED!"); return; } else Comment(""); if (status==-1 && Hour()==OpenHour && Minute()==OpenMinute) { //double AskPrice = Ask; //double BidPrice = Bid; if (Ask < LongEntry) { if(LongEntry > 0) OrderSend(Symbol(),OP_BUYSTOP,Lots,LongEntrySlippage,LongEntry-StopLoss,LongEntry+TakeProfit,"Buy",0,Exp,clBuy); } else { if(LongEntry > 0) OrderSend(Symbol(),OP_BUYLIMIT,Lots,LongEntry,Slippage,LongEntry-StopLoss,LongEntry+TakeProfit,"Buy",0,Exp,clBuy); }; } //return(0); |
|
|||
danke, wir muss ich das einbinden, als expert, oder als skript, ich hab leider keine Ahnung von meta trader 4 programmierung
|
|
|||
Du musst es als Export einbinden. Einfach eine mq4-Datei erstellen, den Code reinkopieren und in das Verzeichnis /MQL4/Experts abspeichern. Den MT4 musst du dann neu starten. Den EA kannst du dann in ein Chart ziehen und die Einstellungen vornehmen.
|
|
|||
ok, ich glaub das ding läuft nun.
Danke dafür. Wie kann ich den die geplanten Order einsehen? Ich sehe zwar im Journal die Erstellung, sehe aber keine Übersicht, welche Order nun geplant sind, um z.b. eine geplante Order wieder zu löschen. ne Idee? |
|
|||
ich habe testweise bei geöffneten Markt eine Order in Auftrag geben mit Markt öffnet in 1ner Minute, leider wurde die Peding Order nicht platziert.
Im Editor bekomme ich beim Kompilieren die Warnung "return value of 'OrderSend' should be checked". |
|
|||
Du musst bei OpenHour und Open Minute die entsprechende Uhrzeit eintragen, zu der die Pending Orders in das System gestellt werden. Wenn die Uhrzeit erreicht wurde, erscheinen diese im Register Handel.
Gesendet von meinem SM-G900F mit Tapatalk |
|
|||
Hallo Dieter,
ich habe folgenden Eintrag im Expert Log: 2015.11.18 11:31:09.941 planing_pending_order EURUSD,M30 inputs: OpenHour=11; OpenMinute=32; UseCurrSymbol=true; UseOneAccount=true; NumberAccount=1234076297; Slippage=4; ShortEntry=1.06415; LongEntry=0.0; Lots=0.5; StopLoss=1.07; TakeProfit=1.05; Exp=1447871340; status=1; clBuy=16711680; clSell=255; leider wurde um 11:32 keine pending oder eröffnet, egal ob beim status -1 oder 1 steht. |
Lesezeichen |
Stichworte |
mql4, pending, pending order, programmierung, programmierung metatrader, uhrzeit, uhrzeit order, zeit, zeit order |
|
|