попробуйте сделать цикл не с 0 а с 1
for(i=1; i<limit; i++)
ведь все индикаторы на текущем баре рисуют и это как бы вполне логично ибо бар только строится.
а машки перерисовываться не могут на 1 баре
еще чтобы не перерисовывал можно сделать так:
if(Naprav0!=Naprav60 || Naprav0!=Naprav240 || Naprav0!=Naprav1440 || Naprav0!=NapravWeek) { continue; }else{ if(Naprav0=="Buy" && DeltaBuff2[i]==EMPTY_VALUE){ DeltaBuff2[i]=iClose(Symbol(),0,i); } if(Naprav0=="Sell"&& DeltaBuff1[i]==EMPTY_VALUE){ DeltaBuff1[i]=iClose(Symbol(),0,i); } }
делал так для одного индикатора, чтоб не врал.
т.е. если буфер еще не заполнен -только тогда заполняем, а иначе не перерисовываем его данные
попробуйте сделать цикл не с 0 а с 1
...
Не поможет. В индикаторе обращение к старшим таймфреймом. Тогда уж все шифты увеличивать на 1, но тогда показания изменятся.
тогда второй вариант.
Тоже не то. Нужно с использованием текущего таймфрейма вычислять МА старшего таймфрейма.
в данном конкретном случае стоит(и вполне обоснованно) вычислять MA "исскуственного/сдвинутого старшего" таймфема а-ла H1+5M.. но это lot-of-code :-)
в данном конкретном случае стоит(и вполне обоснованно) вычислять MA "исскуственного/сдвинутого старшего" таймфема а-ла H1+5M.. но это lot-of-code :-)
Куда сдвинутого? зачем сдвинутого? Зачем искусственного, да еще H1+M5?
Обычного H1, но с использованием M5 для формирующегося бара H1, что бы на истории можно было рассчитать промежуточные значения.
т.е. если буфер еще не заполнен -только тогда заполняем, а иначе не перерисовываем его данные
речь шла о том, чтобы индикатор не перерисовывал свой сигнал если его нарисовал, я посоветовал вариант проверки - если буфер уже имеет стрелку - не трогать ее.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Индикатор простенький, но т.к. он основан на МАшках , то он перерисовывает последний десяток-два баров, бился бился, никак не пойму как его сделать чтобы он не перерисовывал, а оставлял те сигналы на старых уже обсчитанных барах какие они есть
и что б сигналы на истории и визуализации (реале) совпадали - хотя думаю это невозможно, т.к. МА в истории не перерисовывают