| 复制代码//---移动止损
void mstoploss_1(int stoploss)
  {
   bool modifys = false;
   for(int i=0; i<OrdersTotal(); i++)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES)==false)
         break;
      if(OrderType()==OP_BUY   && OrderSymbol()==Symbol())
        {
         if((Bid -OrderOpenPrice()) > stoploss*MarketInfo(OrderSymbol(), MODE_POINT))
           {
            if((OrderStopLoss() < (Bid -stoploss*MarketInfo(OrderSymbol(), MODE_POINT))) || (OrderStopLoss()==0))
              {
               modifys = OrderModify(OrderTicket(),OrderOpenPrice(),Bid - stoploss*MarketInfo(OrderSymbol(), MODE_POINT),OrderTakeProfit(),0,clrNONE);
              }
           }
        }
      if(OrderType()==OP_SELL && OrderSymbol()==Symbol())
        {
         if((OrderOpenPrice() -Ask) > (stoploss*MarketInfo(OrderSymbol(), MODE_POINT)))
           {
            if((OrderStopLoss()) > (Ask + stoploss*MarketInfo(OrderSymbol(), MODE_POINT)) || (OrderStopLoss()==0))
              {
               modifys = OrderModify(OrderTicket(),OrderOpenPrice(),Ask + stoploss*MarketInfo(OrderSymbol(),MODE_POINT),OrderTakeProfit(),0,clrNONE);
              }
           }
        }
     }
  }
 |