Советник на основе хеджирования. Помогите разобраться с ошибками.MQL4

 

Не могу справится с хеджированием, помогите. 

extern double Lot        = 8.0;    // открываемый лот
     // уровень отклонения
     // открываемая серия    
extern int TakeProfit    = 15;
extern int Slippage      = 2;      // проскальзывание
extern int Magic         = 6666;

extern string s1= "EURUSD";
extern string s2= "GBRUSD";


int init() 
  { 

    
//---- 
    return(0); 
  }
int start()

{

  if (!isTradeTimeInt(15, 59, 00, 00)) return(0);
  if (DayOfWeek()==5) return(0);
  
  
//-----double Buy=iFractals(s1,240,MODE_LOWER,2);
//-----  double Sell=iFractals(s2,240,MODE_UPPER,2);
 
  double Sell=iCustom(s1,240,"iFractals",240,MODE_LOWER,2);
  double Buy=iCustom(s1,240,"iFractals",240,MODE_LOWER,2);
  double Sell=iCustom(s2,240,"iFractals",240,MODE_UPPER,2);
  double Buy=iCustom(s2,240,"iFractals",240,MODE_UPPER,2);
  if (Sell>0 &&  Buy==0 && Volume[0]<2)
  {
     MarketInfo(s1,MODE_BID);
     OrderSend(s1,OP_SELL,Lot,Bid,Slippage,0,NormalizeDouble(Bid-TakeProfit*Point,Digits),NULL,Magic,0,clrRed);
  }
  if (Sell>0 &&  Buy==0 && Volume[0]<2)
  {
     MarketInfo(s2,MODE_BID);
     OrderSend(s2,OP_SELL,Lot,Bid,Slippage,0,NormalizeDouble(Bid-TakeProfit*Point,Digits),NULL,Magic,0,clrRed);
  }
  if (Sell==0 && Buy>0 && Volume[0]<2)
  {
     MarketInfo(s1,MODE_ASK);
     OrderSend(s1,OP_BUY,Lot,Ask,Slippage,0,NormalizeDouble(Ask+TakeProfit*Point,Digits),NULL,Magic,0,clrBlue);   
  }
    if (Sell==0 && Buy>0 && Volume[0]<2)
  {
     MarketInfo(s2,MODE_ASK);
     OrderSend(s2,OP_BUY,Lot,Ask,Slippage,0,NormalizeDouble(Ask+TakeProfit*Point,Digits),NULL,Magic,0,clrBlue);   
  }
   return(0);
}

bool isTradeTimeInt(int hb=15, int mb=59, int he=0, int me=0) {
  datetime db, de;           // Время начала и окончания работы
  int      hc;               // Часы текущего времени торгового сервера

  db=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+hb+":"+mb);
  de=StrToTime(TimeToStr(TimeCurrent(), TIME_DATE)+" "+he+":"+me);
  hc=TimeHour(TimeCurrent());
  if (db>=de) {
    if (hc>=he) de+=24*60*60; else db-=24*60*60;
  }

  if (TimeCurrent()>=db && TimeCurrent()<=de) return(True);
  else return(False);
}

 Помогите с хеджированием.

 
Извините, у вас в коде, видимо совершенно случайно, нет ссылки на автора(источник) применяемой вами функции isTradeTimeInt. Поэтому, не зная откуда конкретно вы взяли эту функцию (с сайта Игоря Кима или с форума по MQL4, или из одного из советников в Кодобазе), приведу просто ссылку с форума: https://www.mql5.com/ru/forum/107476/page81#163009.
Полезные функции от KimIV - MQL4 форум
  • www.mql5.com
Полезные функции от KimIV - MQL4 форум
 
DiPach:
Извините, у вас в коде, видимо совершенно случайно, нет ссылки на автора(источник) применяемой вами функции isTradeTimeInt. Поэтому, не зная откуда конкретно вы взяли эту функцию (с сайта Игоря Кима или с форума по MQL4, или из одного из советников в Кодобазе), приведу просто ссылку с форума: https://www.mql5.com/ru/forum/107476/page81#163009.
Тонко ...