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)
-   -   Haltedauer Pending Order (http://www.expert-advisor.com/forum/showthread.php?t=5789)

Lena 01.08.17 12:25

Haltedauer Pending Order
 
Hallo zusammen,
ich würde gerne Pending Orders zeitlich begrenzen. Ich komme aber irgendwie mit der datetime nicht zurecht. Wie bw in welchem Format muss ich das in die OrderSend Anweisung einfügen? Die Order soll nur bis Ende des Tages bestehen.

int Ticket OrderSend(0,OP_BUYLIMIT,Preis, Slippage, Stop_Loss, Take_Provit,"Buy_Limit", 0, datetime(keine Ahnung wie), clrgreen)

Ich weiß, ich könnte auch beim Tageswechsel ein Funktion aufrufen die alle Pending Orders löscht. Das Problem dabei ist nur, es sollen nur einige gezielte Orders gelöscht werden. Daher wäre es sehr viel praktischer, wenn ich von Anfang an angeben kann, diese Order soll nur bis Tagesende aktiv sein.

Leopold 01.08.17 12:34

Hallo,

Code:

datetime Time = StringToTime(
                        TimeYear(Time[0])
                        +"."+
                        TimeMonth(Time[0])
                        +"."+
                        TimeDay(Time[0])
                        +" 23:59")

so ungefähr kannst du das machen.
Du kannst statt "Time[0]" auch "TimeCurrent()" verwenden.

---Leopold---

Lena 01.08.17 12:49

Du bist aber wirklich immer sehr schnell mit den Antworten. Vielen Dank für deine Hilfe. Mal schauen ob ich es hinbekomme.

traderdoc 01.08.17 12:58

Zitat:

Zitat von Leopold (Beitrag 39401)
Hallo,

Code:

datetime Time = StringToTime(
                        TimeYear(Time[0])
                        +"."+
                        TimeMonth(Time[0])
                        +"."+
                        TimeDay(Time[0])
                        +" 23:59")

so ungefähr kannst du das machen.
Du kannst statt "Time[0]" auch "TimeCurrent()" verwenden.

---Leopold---

Na ja, korrekterweise, ohne Induzierung von Warnmeldungen, müsste das lauten:
Code:

datetime Time = StringToTime(
                        (string)TimeYear(Time[0])
                        +"."+
                        (string)TimeMonth(Time[0])
                        +"."+
                        (string)TimeDay(Time[0])
                        +" 23:59");

traderdoc

Leopold 01.08.17 13:17

Hallo,

ja stimmt, hatte ich vergessen. Entschuldige Lena.
Das vergesse ich immer wieder und komme erst beim Kompilieren drauf.

@traderdoc: Ich habe es immer mit "IntegerToString" gelöst. Macht das einen unterschied?

---Leopold---

Lena 01.08.17 13:42

Okay, jetzt habe ich endlich den Aufbau verstanden. Ich danke euch!
Manchmal denke ich für den PC einfach zu kompliziert.

traderdoc 01.08.17 14:58

Zitat:

Zitat von Leopold (Beitrag 39404)
Hallo,

ja stimmt, hatte ich vergessen. Entschuldige Lena.
Das vergesse ich immer wieder und komme erst beim Kompilieren drauf.

@traderdoc: Ich habe es immer mit "IntegerToString" gelöst. Macht das einen unterschied?

---Leopold---

Nein, beide Typumwandlungen funktionieren.

traderdoc

Lena 02.08.17 07:12

Ein wenig Grübeln musste ich jetzt doch noch. Beim kompilieren wurde zwar kein Fehler angegeben, leider wurde die Order aber nie wegen #error 3 ausgeführt. Wie sich rausstellte fehlte ein "." vor der Angabe der Uhrzeit.

+".23:59"

Leopold 02.08.17 08:22

Hallo,

das habe ich so noch nicht gesehen. Hast du vorher immer ein Leerzeichen vor der Uhrzeit gehabt?
Ich mache das immer mit Leerzeichen und das hat eigentlich immer funktioniert.

---Leopold---

Lena 02.08.17 10:43

Nein, ich glaube ein Leerzeichen hatte ich vor der Uhrzeit nicht. Wenn das als Trennung auch ausreicht war es nur ein Fehler bei mir. Mit dem Punkt funktioniert es aber auf jeden Fall auch.


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:43 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