Прыгающие точки, нужна помощь.

 

Как избавиться от точек, которые появляются как попало?

Надоело каждый раз пересчелкивать таймфреймы.

Пример на рисунке, индикатор прилагается.

(Поиском не особо и пользовался, т.к. не знаю как правильно называется эта фигня)

Спасибо, если кто подскажет решение.

Пример кривого изображения

Файлы:
my_ea_ind.mq4  3 kb
 

Это случается, когда история подгружается.

Надо при IndicatorCounted()==0 инициализировать буферы, или на каждой итерации цикла сначала очищать элемент буфера.

 
ExtMapBuffer1[i]=0;
ExtMapBuffer2[i]=0;
 while(i>=0)                      // Цикл по непосчитанным барам
     {}

я очищал, не помогает.

 
panzernik:

я очищал, не помогает.

Так это надо под while:

 while(i>=0)                      // Цикл по непосчитанным барам
     {

           ExtMapBuffer1[i]=0;
           ExtMapBuffer2[i]=0;

      }

Мне пока-что всегда помогало.

Как i вычисляется перед циклом?

 

Сделал, всеравно прыгают и котировки вроде подгружены.

а понял, надо было еще и индикатор заново накинуть на график.

Спасибо.

 
panzernik:

Сделал, всеравно прыгают и котировки вроде подгружены.

а понял, надо было еще и индикатор заново накинуть на график.

Спасибо.

Должно срабатывать без перезапуска индикатра. Если же прыгают и без подгрузки данных, значит исключительно ваша ошибка в коде, искать надо, может быть все, что угодно.

Причина обращения: