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

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

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

Для начала выключи 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, то соглашусь ;)

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