Hallo,
das kannst du so gar nicht verwenden !
Die Alert Funktion muss raus.
Verwendbar wäre das ganze so:
Code:
int startzeit=14*60+40;
int endzeit=21*60+55;
void Start()
{
int h=TimeHour(TimeCurrent());
int m=TimeMinute(TimeCurrent());
int aktuellezeit=h*60+m;
if(aktuellezeit<startzeit || aktuellezeit>endzeit) return(0);
//EA Code
//...
}
Das wäre allerdings nur eine Krücke.
Eine Tradingzeit über 0:00 Uhr ist damit nicht möglich.
Außerdem kannst du Zeit nicht extern eingeben (warum eigentlich 14*60+40)???
Besser wäre das hier:
Code:
extern string Start = "09:00";
extern string End = "13:00";
datetime StartTime, EndTime, CurrentTime;
void init()
{
StartTime = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+Start);
EndTime = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+End);
}
bool TradingTime()
{
CurrentTime = StrToTime(TimeToStr(TimeCurrent(), TIME_DATE|TIME_MINUTES));
if (StartTime < EndTime)
{
if ((CurrentTime < StartTime) || (CurrentTime >= EndTime)) return(false);
}
if (StartTime > EndTime)
{
if ((CurrentTime < StartTime) && (CurrentTime >= EndTime)) return(false);
}
return(true);
}
int start()
{
if (TradingTime() == false) return(0);
//EA Code...
//...
}
Gruß
naranjoe