Пт. Апр 19th, 2024

Функция вычисляет уровень безубытка в сетке ордеров в зависимости от цен установки ордеров и их объема.

double NullPriceForGread(int type)//функция нулевой цены (безубыток) сетки ордеров
  {
   double lots = 0;
   double totaLots = 0;
   double openPrice = 0;
   double prom = 0;
   double NullPrice = 0;

   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType() == type)
              {
               lots = OrderLots();
               totaLots += OrderLots();
               openPrice = OrderOpenPrice();
               prom += lots * openPrice;
              }
           }
        }
     }
   if(prom > 0 && totaLots > 0)
      NullPrice = NormalizeDouble(prom/totaLots, _Digits);

   return(NullPrice);
  }

Поделись с друзьями:

от drivermql

Добавить комментарий

Ваш адрес email не будет опубликован.

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.