MT4 计算的订单最高价与次高价异常

 

//+------------------------------------------------------------------+
 double TwonumberBp()
  {
    double PRICE = 0;
    for(int i=0; i<OrdersTotal(); i++){
       if(OrderSelect(i,SELECT_BY_POS)){
          if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic && OrderType() == 0){
             if(OrderComment()  ==  注释1 || OrderComment()  ==  注释2){
                 if(PRICE == 0 || (PRICE < OrderOpenPrice() && OrderOpenPrice() < OnumberBp())){
                    PRICE = OrderOpenPrice();
                  }}}}}
     return(PRICE);           

  }

OnumberBp() 是多头订单最高价,逻辑方向是没错,但是就是不知道写法是哪里出了问题

这计算的有时正常,有时又异常,如果说同Magic 的EA Comment 不同,也会被计算进来,更奇怪的是多头挂单也被算进来了