Запрет исполнения

 

Здравствуйте, уважаемые!

Подскажите пожалуйста следующий момент!Есть условие по которому открывается ордер:

if(OrdersTotal()==0&&High[0]>High[1])

OrderSend(Symbol(),OP_BUY,Lot,Ask,10,SL,ТP,"",0,0,Green);

и условие по которому ордер закрывается:

if(OrdersTotal()==1&&Hour()==16&&Minute()==44)

{

OrderSelect(ticket,SELECT_BY_POS,MODE_TRADES);

OrderClose(ticket,OrderLots(),Bid,10,Yellow);

}

Вопрос???!!!

Каким образом можно прописать в коде запрет открытия позиции после отработки if(OrdersTotal()==1&&Hour()==16&&Minute()==44) т.к. условие на открытие ордера сохраняется

if(OrdersTotal()==0&&High[0]>High[1]) происходит повторное открытие . Помогите пожалуйста!

 
Fil-ov:


if(OrdersTotal()==0&&High[0]>High[1])bool o=true;

if(OrdersTotal()==1&&Hour()==16&&Minute()==44)bool c=true;

if(c)

{

OrderSelect(ticket,SELECT_BY_POS,MODE_TRADES);

OrderClose(ticket,OrderLots(),Bid,10,Yellow);

}

else if(o)OrderSend(Symbol(),OP_BUY,Lot,Ask,10,SL,ТP,"",0,0,Green);

 

valeryk, а если терминал перегрузится?

Мне кажется, более правильным будет вариант заглядывания в историю.

 
Bicus:

valeryk, а если терминал перегрузится?

Мне кажется, более правильным будет вариант заглядывания в историю.


Я направление дал, а там уже от требований автора...)
 

смотрим время, сравниваем с рачетным. Ставим соответсвующие флаги на открытие и закрытие.

я пользуюсь для ночного скальпинга вот таким кодом.

bool OpenTime()
  {
        MqlDateTime dt;
        bool tradehour=false;
   if(begin>end && (dt.hour>begin-1 || dt.hour<end)) tradehour=true;
   if(begin<end && (dt.hour>begin-1 && dt.hour<end)) tradehour=true;

   return(tradehour);
  }

Если возвращается true то и открываем и закрываем ордера, если false, то только закрываем.

 
Fil-ov:

OrderSelect(ticket,SELECT_BY_POS,MODE_TRADES);



1) так нельзя; если выбираем по номеру надо указывать номер, если же указываем тикет, надо указывать SELECT_BY_TICKET


2) эта строчка вообще лишняя, так как перед OrderClose() делать OrderSelect() не требуется

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