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)
-   -   pending order und market orders auf zeit schliessen. wie ? (http://www.expert-advisor.com/forum/showthread.php?t=2373)

daysofthunder 15.08.12 16:57

pending order und market orders auf zeit schliessen. wie ?
 
wie mache ich es am besten, dass market und pending order um sagen wir 21:57 automatisch geschlossen werden ?

Hoschie 15.08.12 21:40

Füge doch beim OrderSend ein expirationtime ein, oder

mach folgendes
//+------------------------------------------------------------------+
//| Close Trades at 21:57 pm |
//+------------------------------------------------------------------+
void TradeFinish(int EndHour=21, int MIN=57 )
{
;


if ( (EndHour == TimeHour(TimeCurrent())) && (MIN ==TimeMinute(TimeCurrent())))
{

OrderClose(...)
}
}
}

daysofthunder 16.08.12 08:38

welches format hat die expirationtime ?

einfach "21:57" reinschreiben ?

stuppsy 16.08.12 12:05

Zitat:

Zitat von daysofthunder (Beitrag 16547)
welches format hat die expirationtime ?

einfach "21:57" reinschreiben ?

na wenn das mal nicht "clever" ist.............
stuppsy

Indi 30.04.13 18:15

Pending Zeit abfragen / nach x Zeit schliesen
 
Ich möchte die Zeit abfragen, an der die PendingOrder gesetzt wurde.
Nicht die bereits erfüllte Auslösung! Um z. B. nach 3h zu löschen.
Vielen Dank für die Hilfe!

traderdoc 30.04.13 18:35

Notfalls die Zeit der Pendingsetzung in den comment eintragen und dann über OrderComment() abfragen.

Hoschie 30.04.13 21:21

Zitat:

Zitat von Indi (Beitrag 20750)
Ich möchte die Zeit abfragen, an der die PendingOrder gesetzt wurde.
Nicht die bereits erfüllte Auslösung! Um z. B. nach 3h zu löschen.
Vielen Dank für die Hilfe!

Hoi,

entweder definierst du eine globale Variable und speicherst die Zeit, in der die PendingOrder gesetzt wurde. Dann kannst du quasi auswerten, ob 3h vorbei ist, um diese dann zu löschen. Oder du versuchst es mal der Funktion OrderOpenTime, ob du damit die Zeit der Eröffnung der PendingOrder bekommst.

Carpe Diem,
Hoschie

Indi 01.05.13 11:47

Vielen Dank für eure Meldungen.

Die Idee mit dem Comment ist super, den benutze ich auber schon.
Mit der OpenOrderTime bekomme ich tatsächlich den Wert an dem die Order aufgegeben wurde, aber erst, nachdem sie vom Pending in den aktiven Zustand überging.
Sorry!

Hoschie 01.05.13 16:02

Zitat:

Zitat von Indi (Beitrag 20764)
Vielen Dank für eure Meldungen.

Die Idee mit dem Comment ist super, den benutze ich auber schon.
Mit der OpenOrderTime bekomme ich tatsächlich den Wert an dem die Order aufgegeben wurde, aber erst, nachdem sie vom Pending in den aktiven Zustand überging.
Sorry!

Du musst dir wirklich mal die Mühe machen und ein Beispiel-Code entwickeln, um zu verstehen, was OrderOpenTime() für eine Zeit liefert. Ansonsten verweise ich wirklich auf die Doku.
Ich habe das gerade mit OrderOpenTime() getestet und siehe da es funktioniert einwandfrei. Du musst explizit nach dem OrderType abfragen, dann bekommst du auch das entsprechende Datetime der PendingOrder.

PHP-Code:


int nt 
OrdersTotal();
for(
int i=0;i<nt;i++)
         {
              if ( 
OrderSelect(iSELECT_BY_POS)        
     &&  
OrderMagicNumber()  == MAGICNUMBER           
     
&&  OrderSymbol()       == Symbol())  
            
      {   
      
      if(
OrderType() == OP_SELLSTOP)
       {
       
       Print(
"OrdersOpenTime",TimeToStr(OrderOpenTime()));
       } 
      
      if(
OrderType() == OP_BUYSTOP)
       {
       
       Print(
"OrdersOpenTime",TimeToStr(OrderOpenTime()));
       } 
      
      
      }
      
     } 

Carpe Diem,

Hoschie

Indi 04.05.13 11:07

Jetzt habe ich es kappiert. Herzlichen Dank insbesondere an @Hoschi !!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:49 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