Открытие позиции по заданному времени

 

Привет. Как сделать так, чтобы позиция открывалась строго в определенное время, например в 23 часа? Думаю нужен оператор if, но не могу придумать, что написать - получаются ошибки.

//---- input parameters
extern int TakeProfit = 10;
extern int StopLoss = 100;
extern int OpenTime = 23;
extern double Lots = 4.0;
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int start()
{
if ЧТО ВСТАВИТЬ?
{
Open1();
}
return(0);
}
//+------------------------------------------------------------------+
//| expert Open1 function |
//+------------------------------------------------------------------+
int Open1()
{
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"",0,0);
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+StopLoss*Point,Ask-TakeProfit*Point,"",0,0);
return(0);
}
//+------------------------------------------------------------------+

 

Еще здесь

OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Bid+TakeProfit*Point,"",0,0);
OrderSend(Symbol(),OP_SELL,Lots,Bid,3,Ask+StopLoss*Point,Ask-TakeProfit*Point,"",0,0);

Хоть переменная StopLoss = 100, все равно стоп устанавливается на уровне 25. Почему?

И последний вопрос - когда еквити уменьшается на 30%, пишет close at stop и дальше не торгует (все советинки). Почему? Как сделать так, чтобы он торговал дальше?

Причина обращения: