а Вы заглядывали в системный журнал?
наверняка там сообщение о подозрении на бесконечный цикл (loop detected). на нашей страничке "особенности написания пользовательских индикаторов" https://www.metaquotes.net/en/metatrader5/algorithmic-trading в примере "Envelopes" проиллюстрировано, как можно обсчитывать только последние nAccountedBars баров.
наверняка там сообщение о подозрении на бесконечный цикл (loop detected). на нашей страничке "особенности написания пользовательских индикаторов" https://www.metaquotes.net/en/metatrader5/algorithmic-trading в примере "Envelopes" проиллюстрировано, как можно обсчитывать только последние nAccountedBars баров.
Я не силён в программировании, погите самим исправлением, это ошибка "Некто Мифического"
Я не силён в программировании, погите самим исправлением.
Этот код индикатора выложил здесь человек под ником "Некто Мифический", а мыло своё не оставил.
Вот и остался я у разбитого корыта.
Помогите, буду безгранично благодарен.
Я не силён в программировании, погите самим исправлением.
Этот код индикатора выложил здесь человек под ником "Некто Мифический", а мыло своё не оставил.
Вот и остался я у разбитого корыта.
Помогите, буду безгранично благодарен.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Может разработчики тоже помогут.
Есть код индикатра OsMA , расчитанный по Smoothed, но на графике он не отображается на всей истории, а только на её начальной части. Проыверьте сами, задав период например больше обычного, отображение начинает урезаться и видно только на начале истории.
/*[[
Name := OsMA Smoothed
Author := somebody mythical
Separate Window := Yes
First Color := White
First Draw Type := Histogram
Use Second Data := No
]]*/
Variables : shift(0), cnt(0), sum(0);
Variables : FastMAPeriod(12), SlowMAPeriod(26), SignalMAPeriod(9);
Variables : FastMA(0), SlowMA(0);
SetLoopCount(0);
For shift = Bars-SlowMAPeriod-1 Downto 0 Begin
FastMA=iMAEx(FastMAPeriod,MODE_SMMA,0,PRICE_CLOSE,shift);
SlowMA=iMAEx(SlowMAPeriod,MODE_SMMA,0,PRICE_CLOSE,shift);
SetIndexValue2(shift, FastMA-SlowMA);
End;
For shift = Bars-SlowMAPeriod-SignalMAPeriod-1 Downto 0 Begin
sum=0;
for cnt=0 To SignalMAPeriod-1 Begin
sum=sum+GetIndexValue2(shift+cnt);
End;
SetIndexValue(shift,GetIndexValue2(shift)-sum/SignalMAPeriod);
End;
Помогите, как этот баг исправить.