Форекс стратегии, торговые роботы, индикаторы

Удаляет все отложенные ордера

Rebate service

ForexMq

Функция удаляет заданные отложенные ордера.


void DeleteOrd(
                  string sy="", // имя символа ("" - все символы)
                  int ty=-1,    // тип отложенного ордера (-1 - все типы отложенных ордеров)
                  int mg=-1)    // магическое число ордеров (-1 - все магики)
  {
     {
      for(int i=OrdersTotal()-1;i>=0;i--)
        {
         if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
           {
            if(OrderSymbol()==sy || sy=="")
              {
               if(mg<0 || OrderMagicNumber()==mg)
                 {
                  if(ty<0 || OrderType()==ty)
                    {
                     if(OrderType()>1)
                       {
                        OrderDelete(OrderTicket(),clrDelete);
                       }
                    }
                 }
              }
           }
        }
     }
  }

Параметры

  • sy — символьное имя инструмента где будут удалены отложенные ордера. При отсутствии значения, отложки будут удалены на всех доступных символов;
  • ty — тип ордера:
    • 2 — Buy Limit;
    • 3 — Sell Limit;
    • 4 — Buy Stop;
    • 5 — Sell Stop.
    При значении -1, учитываться будут все отложенные ордера на счете;
  • mgмагическое число ордеров, при значении -1 будут учитываться ордера не зависимо от magic.

Смотреть так же:




Комментарии ()