Как советник может узнать, что открыт именно Бай или Селл ордер?

 

Как советник может узнать, что открыт именно Бай или Селл ордер?

Как это коротко сделать?

 
Для начала выключи CapsLock ;)
 
:))) конечно
 
OrderSelect() + OrderType()
 

Вообще то с такими вопросами рекомендуют RTFM.....

OrderSelect(ticket,SELECT_BY_TICKET )
if(OrderType()=OP_BUY) //Buy Order

или

if(OrderType()=OP_SELL) //Sell Order


 
if(OrdersTotal()>0)
   {
      OrderSelect(OrdersTotal()-1,SELECT_BY_POS);
      bool Buy = OrderSymbol()==Symbol() && OrderType()==OP_BUY;
      bool Sell = OrderSymbol()==Symbol() && OrderType()==OP_SELL;
   }
Не проверял.
 
Digger писал (а):

Вообще то с такими вопросами рекомендуют RTFM.....

OrderSelect(ticket,SELECT_BY_TICKET )
if(OrderType()=OP_BUY) //Buy Order

или

if(OrderType()=OP_SELL) //Sell Order



а что в данном случае переменная тикет представляет ( дальше все ясно...)
 
nchnch писал (а):
Digger писал (а):

Вообще то с такими вопросами рекомендуют RTFM.....

OrderSelect(ticket,SELECT_BY_TICKET )
if(OrderType()=OP_BUY) //Buy Order

или

if(OrderType()=OP_SELL) //Sell Order



а что в данном случае переменная тикет представляет ( дальше все ясно...)
Справочник MQL4 - Торговые функции - OrderSelect
 

Всем спасибо огромное !!! Вот что вышло :

for(int i=0;i<OrdersTotal();i++) // перебор начинаем ордеров
{
ticket=OrderSelect(i,SELECT_BY_POS); // выбираем ордер
if(OrderMagicNumber()==magik) // смотрим за тем что бы это был ордер этого советника
{
if(OrderType()==OP_BUY) // идем в условие если это бай
{
buystatus=1;
}

if(OrderType()==OP_SELL)
{
sellstatus =1;
}
}

}

Работает как часы :)))

 
nchnch:

Работает как часы :)))

Если перед этим обнулять байстатус и селлстатус, и добавить проверку OrderSelect, то соглашусь ;)
 

ну обнуление конечно есть ...:) а проверка по моему не нужна. .. если нет одеров.... то цикл пролетаем и все как надо :))) если я вас правильно понял...

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