MT4
求助各位高人看看我的ea不下单
回复:0  浏览:183
  • 楼主admin 圈主
  • 2019-05-05 05:52
思路是向上突破50点开多仓
  我的QQ170017111  各位大侠想交流请叫我 多一个朋友 多一条思路
  
  extern double TakeProfit = 50;
  extern double Lots = 0.1;
  extern double TrailingStop = 30;
  extern double MACDOpenLevel=3;
  extern double MACDCloseLevel=2;
  extern double MATrendPeriod=26;
  
  //+------------------------------------------------------------------+
  //|                                                                  |
  //+------------------------------------------------------------------+
  int start()
    {
   
     int cnt, ticket, total;
  
     double nclose,nopen;
  //----
   nclose=iClose(NULL,PERIOD_M5,0);
   nopen=iOpen(NULL,PERIOD_M5,0);
  
     total=OrdersTotal();
     if(total0)
             {
              if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("BUY order opened : ",OrderOpenPrice());
             }
           else Print("Error opening BUY order : ",GetLastError());
           return(0);
          }
        // check for short position (SELL) possibility
        if(nopen-nclose>50*Point)
          {
           ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"macd sample",16384,0,Red);
           if(ticket>0)
             {
              if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES)) Print("SELL order opened : ",OrderOpenPrice());
             }
           else Print("Error opening SELL order : ",GetLastError());
           return(0);
          }
        return(0);
       }
     // it is important to enter the market correctly,
     // but it is more important to exit it correctly...   
     for(cnt=0;cnt/                  }br /              // check for trailing stopbr /              if(TrailingStop>0)  
                {                 
                 if(Bid-OrderOpenPrice()>Point*TrailingStop)
                   {
                    if(OrderStopLoss()50*Point)
                {
                 OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet); // close position
                 return(0); // exit
                }
              // check for trailing stop
              if(TrailingStop>0)  
                {                 
                 if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
                   {
                    if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                      {
                       OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red);
                       return(0);
                      }
                   }
                }
             }
          }
       }
     return(0);
    }
  // the end.