MQL4 Как проверить, была ли последняя открытая позиция прибыльной

Я хочу создать «Эксперт-советник», который масштабирует\пирамидирует\скатывает снежный ком в тренд,

(Еще одна выигрышная позиция открывается после того, как первая уже в безубытке)

Я застрял с функцией, которая проверяет, является ли предыдущая LONG\SHORT открытая позиция прибыльной.

Похоже, моя текущая функция всегда возвращает 1,

      extern double ProfitForOpenAnother = 30;

      double IsLastLongProfitable(string sy="", int op=OP_BUY) {
      int LastLongProfitable = 0;
      datetime o;
      double   l=-1;
      int      i, k=OrdersTotal();

      if (sy=="0") sy=Symbol();
      for (i=0; i<k; i++) {
        if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
          if (OrderSymbol()==sy || sy=="") {
            if (OrderType()==OP_BUY) {
              if (op<0 || OrderType()==op) {
                if (OrderMagicNumber()==Magic) {
                  if (o<OrderOpenTime()) {
                    o=OrderOpenTime();
                    l=OrderProfit();
                    if(l>ProfitForOpenAnother)
                    {
                      LastLongProfitable=1;
                    }
                  }
                }
              }
            }
          }
        }
      }
      return(LastLongProfitable);
    } ``` 



person abudabi    schedule 24.05.2020    source источник