indicator is too slow, 2531 ms. rewrite the indicator, please

 

Невозможно сделать чтобы индикатор работал быстрее и для торговли в этом нет необходимости.

Меня вполне устраивает скорость расчета.

Подскажите, как избавится от этого сообщения.

 
В принципе, при наличии таких тормозов в обработке поступающих данных, можно вообще забыть об рилтайм анализе. Этот индикатор не сам по себе работает - он тормозит обработку входной очереди тиков.

Поэтому совет верен - нужно переписать.
 
TataramDaramDam:

Невозможно сделать чтобы индикатор работал быстрее и для торговли в этом нет необходимости.

Меня вполне устраивает скорость расчета.

Подскажите, как избавится от этого сообщения.

Если скорость устраивает и код оптимизировать лень, то сделайте в виде советника, ошибки этой не будет.
 
Renat:
В принципе, при наличии таких тормозов в обработке поступающих данных, можно вообще забыть об рилтайм анализе. Этот индикатор не сам по себе работает - он тормозит обработку входной очереди тиков.

Поэтому совет верен - нужно переписать.

Крайне интересная для меня тема. 

Ваяю комплекс в составе:

1. Советник, торгующий тупо по командам индикатора, получаемым из буферов последнего. Буферы: Купить, Продать, ну и все такое. 

2. Оный индикатор, формирующий эти команды на основании анализа прикладных (любых) индикаторов.

3. Зацикленный скрипт, оптимизирующий параметры прикладных индикаторов (через оный индикатор) "на лету". 

Очевидны две проблемы:

1. Память (динамический вызов).

2. Время (конфликты потоков обмена информацией).

Есть еще проблема вычислительной сложности, но об этом Вы побеспокоились, спасибо. 

Очевидны три вопроса:

1. Возможно ли избежать переполнения памяти вследствие многократного динамического вызова одного индикатора с разными параметрами (JCL хочу).

2.  Нелишне было бы понимать концепцию управления памятью в MQL.

3. Потоки ввода-вывода в MQL. 

 
evillive:
Если скорость устраивает и код оптимизировать лень, то сделайте в виде советника, ошибки этой не будет.

Спасибо! Так и сделаю. Код оптимизировать не лень, просто уже нечего.

 

У меня тоже такое началось.

Советник перебирает каждый бар пока не найдёт желтую точку раз на баре.

В индикаторе уменьшил количество баров для подсчёта(сначало все потом только 3). 

Что ещё можно сделать? 

Файлы:
 
eevviill:

У меня тоже такое началось.

Советник перебирает каждый бар пока не найдёт желтую точку раз на баре.

В индикаторе уменьшил количество баров для подсчёта(сначало все потом только 3). 

Что ещё можно сделать? 

А для чего в индикаторе разные периоды?

Просто похоже Вам нужен мультизигзаг? Так для этого разные периоды совсем не нужны.

 
Vinin:

А для чего в индикаторе разные периоды?

Просто похоже Вам нужен мультизигзаг? Так для этого разные периоды совсем не нужны.

 

Наверно для того чтобы рисовать главные пики и не главные.
 
eevviill:
Наверно для того чтобы рисовать главные пики и не главные.

Не всегда сложные расчеты приводят к простому результату.

Если поискать на форуме мультизигзаг так эдак годик за 2007 или 2008, то можно найти оригинальный индикатор. Выкладывал Математ.

Точное наименование не помню. В закромах где-то есть.

Могу при необходимости свой подобный нарисовать.

Но результат будет один. На основе одного ЗЗ строим другой. На основе второго третий и т.д.

Просто  вначале пробовал Ваш подход. Но оказалось что результат не меняется. Вершинки и донышки никуда не денутся. Я про более глобальные для предыдущего ЗЗ.

 
Vinin:

Не всегда сложные расчеты приводят к простому результату.

Если поискать на форуме мультизигзаг так эдак годик за 2007 или 2008, то можно найти оригинальный индикатор. Выкладывал Математ.

Точное наименование не помню. В закромах где-то есть.

Могу при необходимости свой подобный нарисовать.

Но результат будет один. На основе одного ЗЗ строим другой. На основе второго третий и т.д.

Просто  вначале пробовал Ваш подход. Но оказалось что результат не меняется. Вершинки и донышки никуда не денутся. Я про более глобальные для предыдущего ЗЗ.


Спасибо.

Задержка 2 секунды при работе раз на баре это оказалось не проблема. 

 
eevviill:

У меня тоже такое началось.

Советник перебирает каждый бар пока не найдёт желтую точку раз на баре.

В индикаторе уменьшил количество баров для подсчёта(сначало все потом только 3). 

Что ещё можно сделать? 

Перепиши его с нуля. Он же просто вызывает 3 обычных зигзага с 3-мя разными периодами. И заодно новый последний код зигзага вставь прямо в индикатор.