Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Заведи свой торговый сигнал и подключи мониторинг счета!
Mikithe
6
Mikithe 2016.08.18 11:48 

Здравствуйте! Помогите нубу найти баг в коде! Пытаюсь вставить индикатор в код Советника как ресурс. Робот проверенный, рабочий, но в данном случае открывает сделку в начале теста даже не по сигналу индикатора. Всегда sell и все сигналы (стрелочки) только вниз.Никаких ошибок в журнале нет. В чем может быть причина бага?


#resource "\\Indicators\\PerfecTrendLine.ex4"

#define IND "::Indicators\\PerfecTrendLine.ex4"

.............................

 if (UsePerfecTrendLine)
   {
  int SignalPerfecTrendLine = 0;
   double Beta_buy = iCustom(Symbol(),0,IND,Z,Z1,S,S1,4,SignalShift); 
double Beta_sell = iCustom(Symbol(),0,IND,Z,Z1,S,S1,5,SignalShift);
 
 if (Beta_buy>0)
       {
        SignalPerfecTrendLine = 1;
       }
        if (Beta_sell>0)
       {
        SignalPerfecTrendLine = -1;
       }
         if (SignalPerfecTrendLine>0)    // Buy Signal
      { LastSignal_PerfecTrendLine = SIGNAL_BUY; SignalCounter_BUY++; }
    else if (SignalPerfecTrendLine<0)  // Sell Signal
      { LastSignal_PerfecTrendLine = SIGNAL_SELL; SignalCounter_SELL++; }
    else LastSignal_PerfecTrendLine = SIGNAL_NO;

   }


Такая же проблема и с другими индикаторами, которые имеют входные параметры для оптимизации. Интересно, что индикатор без входных параметров работает в этом Советнике как ресурс без проблем.

#resource "\\Indicators\\3  candles  JUICER.ex4"

#define IND1 "::Indicators\\3  candles  JUICER.ex4"

.........................

       if(UseJUICER)
   {
  int SignalJUICER=0;

double Beta_buy=iCustom(Symbol(),0,IND1,0,SignalShift);
double Beta_sell=iCustom(Symbol(),0,IND1,1,SignalShift);

 if(Beta_buy>0)
       {
        SignalJUICER=1;
       }
        if(Beta_sell>0)
       {
        SignalJUICER=-1;
       }
         if(SignalJUICER>0) // Buy Signal
      { LastSignal_JUICER=SIGNAL_BUY; SignalCounter_BUY++; }
    else if(SignalJUICER<0) // Sell Signal
      { LastSignal_JUICER=SIGNAL_SELL; SignalCounter_SELL++; }
    else LastSignal_JUICER=SIGNAL_NO;

   }

Файлы индикаторов прилагаю.

Файлы:
Mikithe
6
Mikithe 2016.08.18 11:50  
Вот проблемный индикатор
Файлы:
/
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий