Большая задержка при переходе к таймфрейму 1 мин. в МТ4

 

В моем МТ4 есть несколько окон с разными валютными парами. Ручное переключение в одном из окон таймфрейма (ТФ) инициирует мой советник сделать то же самое во всех остальных окнах. При ручном переключении на ТФ 1 мин. в одном из окон (то есть запуске всей процедуры) происходит блокировка вычислитеьного процесса во всех остальных окнах, что не позволяет этим окнам выполнить переключение на ТФ 1 мин. Вернее переключение происходит спустя 1-5 мин. ожидания в зависимости от количества окон (4-24). Можно было бы полумать, что проблема задержки связана с количеством учавствующих в процедуре окон. Однако эта проблема полностью отсутствует при переключении на любые другие ТФ, переключение во всех окнах происходит одновременно и почти мгновенно. Задержка только при включении ТФ 1 мин. На МТ5 эта проблема отсутствует, все работает как часы. Я предполагаю, что в МТ4 у оператора, которым я пользуюсь,

ChartSetSymbolPeriod(0,NULL,PERIOD_M1);

проблема с асинхронностью, объявленной в его описании. Как преодолеть проблему?

 

Наверно терминал перегружается пересчётами индикаторов. Знаете, бывают такие индикаторы, от которых терминал просто вешается. Попробуйте такие же переключения, но только между пустыми окнами. Ну то есть, чтоб в окнах был только график - ни каких советников и т.д.

Вот ещё что, если прицеплен скрипт с бесконечным циклом, то обнаружить это можно только щёлкнув правой кнопкой мыши в окне графика - в контекстном меню появляется строка, позволяющая выгрузить скрипт из оперативной памяти.

 
В настройках терминала количество загружаемых терминалом исторических баров проверьте, если много, то лучше уменьшить.
 
Спасибо, друзья, буду пробовать. При позитиве доложу. Одно только напрягает: слишком большая разница между включением минутного таймфрейма и ВСЕХ остальных. Переход на минутный ТФ длится несколько минут, на все остальные - 1-2 секунды при прочих равных условиях. Такая разница разумно может быть объяснена багом самого терминала. Хорошо, если бы откликнулись разработчики.
 
foxmag #:
Спасибо, друзья, буду пробовать. При позитиве доложу. Одно только напрягает: слишком большая разница между включением минутного таймфрейма и ВСЕХ остальных. Переход на минутный ТФ длится несколько минут, на все остальные - 1-2 секунды при прочих равных условиях. Такая разница разумно может быть объяснена багом самого терминала. Хорошо, если бы откликнулись разработчики.

4рка здесь у многих

от багов страдали бы все

ищите баг у себя

;)

 
Renat Akhtyamov #:
В настройках терминала количество загружаемых терминалом исторических баров проверьте, если много, то лучше уменьшить.

Что ж, опыт не пропьешь...:) Причина задержки оказалась именно в чрезмерном количестве обрабатываемых баров в одном из индикаторов. Аж под 15 тысяч. Это на минутном ТФ. На старших таймфремах количество баров, скачанных в терминал, оказалось существенно меньше, отсюда более быстрая обработка. Всем спасибо на добром слове. Для меня тема закрыта.

 
foxmag #:

Что ж, опыт не пропьешь...:) Причина задержки оказалась именно в чрезмерном количестве обрабатываемых баров в одном из индикаторов. Аж под 15 тысяч. Это на минутном ТФ. На старших таймфремах количество баров, скачанных в терминал, оказалось существенно меньше, отсюда более быстрая обработка. Всем спасибо на добром слове. Для меня тема закрыта.

15 тыс это не много для 4рки. 

При таком количестве потеря производительности не ощутима.

У меня тормозило, когда баров было под миллион.

Попробуйте оптимизировать алгоритм, очень похоже на зацикливание.

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