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)
-   -   handelszeiten bestimmen (http://www.expert-advisor.com/forum/showthread.php?t=6844)

berlin 28.11.20 20:37

handelszeiten bestimmen
 
moin zusammen,

wie kann ich einem ea sagen das er z.b. um 9:15 it dem handeln starten und um 22:45 den handel beenden soll.

wäre das nicht eine funktion die in dem " int OnInit() " bereich als allgemeingültig für den gesamten ea bereich rein muss?

vielen dank für konstruktive antworten!
lieben gruss,
berlin

traderdoc 28.11.20 22:30

Na ganz einfach, man vergleicht die aktuelle Zeit (TimeCurrent()) mit der vorgegebenen Zeit (Start bzw. Ende) des aktuellen Tages.

Nein in OnInit() darf sie nicht rein, sondern in OnTick() oder einer Unterfunktion
oder auch in jede andere Funktion, die in bestimmten Zeitrhythmen angesteuert wird.

traderdoc

berlin 29.11.20 11:06

um genau zu sein habe ich folgendes gemacht. ich hätte gedacht das mit punkt drei dann immer die zeit mit abgefragt wird:

1. input variablen definiert:

input int StartHour = 9;
input int StartMinuate = 10;

2. bool funktion ans ende vom ea gesetzt:

bool IsTradingAllowed(){
int LocalTimeHour = TimeHour(TimeCurrent()); // Akutelle Stunde
int LocalTimeMinute = TimeMinute(TimeCurrent()); // Akutelle Minute
if((LocalTimeHour>StartHour) || ((LocalTimeHour==StartHour) && (LocalTimeMinute>= StartMinuate)))
if((LocalTimeHour<EndHour) || ((LocalTimeHour==EndHour) && (LocalTimeMinute<= EndMinuate)))
return true;
return false;
}

3. is trading allowed in die on tick funktion als weitere if anweisung(am beispiel einer short order:

if(IsTradingAllowed())

if(shortOrder <= 0 && Bid > dcUpper)
if(rsi >= SchwelleOben) {
if(longOrder > 0){
bool res = OrderClose(longOrder,Lots,Bid,1000);
if(res == true){
longOrder = 0;
}
}

shortOrder = OrderSend(Symbol(),OP_SELL,Lots,Bid,1000,0,0,Comme ntary,Magic);
}


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