← Назад к списку файлов

pauls macd ea checks re-entry and high tf.mq4

Поиск по коду файла

#define buy -2
#define sell 2

extern double    tp_in_money=1.0;
extern double    range=40;
extern double    fastEMA=10;
extern double    slowEMA=20;
extern double    macdSMA=7;
extern double    UpperMACd_Filter=0.0010;
extern double    LowerMACd_Filter=-0.0010;
extern double    Higher_timeframe=1440;

extern double    start_lot=0.01;
extern bool      lot_multiplier=False;
extern double    multiplier=2.0;
extern double    increament=0.01;
extern bool      use_daily_target=false;
extern double    daily_target=100;
extern bool      EachTickMode = false;
extern bool      trade_in_fri=true;
extern int       magic=1;
extern int       level=10;

extern bool      use_sl_and_tp=false;
extern double    sl=60;
extern double    tp=30;

extern bool      stealth_mode=true;

double pt;
double minlot;
double stoplevel;
int prec=0;
int a=0;
int ticket=0; 

int BarCount;
int Current;
bool TickCheck = False;

int init()
  {
      // код доступен только после оплаты
   }

int deinit()
  {

   return(0);
  }

int start()
  {
      // код доступен только после оплаты
   }
   if(use_daily_target && dailyprofit()>=daily_target)
   {
     Comment("\ndaily target achieved.");
     return(0);
   }
   if(!trade_in_fri && DayOfWeek()==5 && total()==0)
   {
     Comment("\nstop trading in Friday.");
     return(0);
   }
   if(total()==0 && a==0)
   {
     if(signal()==buy)
     {
        if(stealth_mode)
        {
          if(use_sl_and_tp) ticket=OrderSend(Symbol(),0,start_lot,Ask,3,Ask-sl*pt,Ask+tp*pt,"",magic,0,Blue);
          else              ticket=OrderSend(Symbol(),0,start_lot,Ask,3,        0,        0,"",magic,0,Blue);
        }
        else
        {
          if(use_sl_and_tp) 
          {
             if(OrderSend(Symbol(),0,start_lot,Ask,3,Ask-sl*pt,Ask+tp*pt,"",magic,0,Blue)>0)
             {
                for(int i=1; i<level; i++)
                {
                    if(lot_multiplier) ticket=OrderSend(Symbol(),2,NormalizeDouble(start_lot*MathPow(multiplier,i),prec),Ask,3,(Ask-(range*i)*pt)-sl*pt,(Ask-(range*i)*pt)+tp*pt,"",magic,0,Blue);
                    else               ticket=OrderSend(Symbol(),2,NormalizeDouble(start_lot+increament*i,prec)         ,Ask,3,(Ask-(range*i)*pt)-sl*pt,(Ask-(range*i)*pt)+tp*pt,"",magic,0,Blue);
                }
             }
          }
          else
          {
             if(OrderSend(Symbol(),0,start_lot,Ask,3,0,0,"",magic,0,Blue)>0)
             {
                for(i=1; i<level; i++)
                {
                    if(lot_multiplier && signal()==buy) ticket=OrderSend(Symbol(),2,NormalizeDouble(start_lot*MathPow(multiplier,i),prec),Ask,3,0,0,"",magic,0,Blue);
                    else  if (signal()==buy)            ticket=OrderSend(Symbol(),2,NormalizeDouble(start_lot+increament*i,prec)         ,Ask,3,0,0,"",magic,0,Blue);
                }
             }
          }
        }
     }
     if(signal()==sell)
     {
        if(stealth_mode)
        {
          if(use_sl_and_tp) ticket=OrderSend(Symbol(),1,start_lot,Bid,3,Bid+sl*pt,Bid-tp*pt,"",magic,0,Red);
          else              ticket=OrderSend(Symbol(),1,start_lot,Bid,3,        0,        0,"",magic,0,Red);
        }
        else
        {
          if(use_sl_and_tp) 
          {
             if(OrderSend(Symbol(),1,start_lot,Bid,3,Bid+sl*pt,Bid-tp*pt,"",magic,0,Red)>0)
             {
                for(i=1; i<level; i++)
                {
                    if(lot_multiplier) ticket=OrderSend(Symbol(),3,NormalizeDouble(start_lot*MathPow(multiplier,i),prec),Bid,3,(Bid+(range*i)*pt)+sl*pt,(Bid+(range*i)*pt)-tp*pt,"",magic,0,Red);
                    else               ticket=OrderSend(Symbol(),3,NormalizeDouble(start_lot+increament*i,prec)         ,Bid,3,(Bid+(range*i)*pt)+sl*pt,(Bid+(range*i)*pt)-tp*pt,"",magic,0,Red);
                }
             }
          }
          else
          {
             if(OrderSend(Symbol(),1,start_lot,Bid,3,0,0,"",magic,0,Red)>0)
             {
                for(i=1; i<level; i++)
                {
                    if(lot_multiplier) ticket=OrderSend(Symbol(),3,NormalizeDouble(start_lot*MathPow(multiplier,i),prec),Bid ,3,0,0,"",magic,0,Red);
                    else               ticket=OrderSend(Symbol(),3,NormalizeDouble(start_lot+increament*i,prec)         ,Bid ,3,0,0,"",magic,0,Red);
                }
             }
          }
        }
     } 
   }

    if(stealth_mode && total()>0 && total()<level)

     {
     int type; double op, lastlot; 
     for(i=0; i<OrdersTotal(); i++)
     {
         OrderSelect(i,SELECT_BY_POS,MODE_TRADES);
         if(OrderSymbol()!=Symbol() || OrderMagicNumber()!=magic) continue;
         type=OrderType();
         op=OrderOpenPrice();
         lastlot=OrderLots();
     }

     if(signal2()==buy)

     if(type==0 && Ask<=op-range*pt) 

     if(type==0) 

     {
        if(use_sl_and_tp)
        {
           if(lot_multiplier) ticket=OrderSend(Symbol(),0,NormalizeDouble(lastlot*multiplier,prec),Ask,3,Ask-sl*pt,Ask+tp*pt,"",magic,0,Blue);
           else               ticket=OrderSend(Symbol(),0,NormalizeDouble(lastlot+increament,prec),Ask,3,Ask-sl*pt,Ask+tp*pt,"",magic,0,Blue);
        }
        else
        {
           if(lot_multiplier) ticket=OrderSend(Symbol(),0,NormalizeDouble(lastlot*multiplier,prec),Ask,3,0,0,"",magic,0,Blue);
           else               ticket=OrderSend(Symbol(),0,NormalizeDouble(lastlot+increament,prec),Ask,3,0,0,"",magic,0,Blue);
        }
     }

     if(signal2()==sell)

     if(type==1 && Bid>=op+range*pt)

     if(type==1)
     {
        if(use_sl_and_tp)
        {
           if(lot_multiplier) ticket=OrderSend(Symbol(),1,NormalizeDouble(lastlot*multiplier,prec),Bid,3,Bid+sl*pt,Bid-tp*pt,"",magic,0,Red);
           else               ticket=OrderSend(Symbol(),1,NormalizeDouble(lastlot+increament,prec),Bid,3,Bid+sl*pt,Bid-tp*pt,

Показано первые 50% кода (символов: 9527)

Как получить полную версию?

Введите ваш email и нажмите кнопку, чтобы перейти к оплате.