Просто есть в функции OnInit() подстрока Time[0]. И при переключении тайм фрейма советник ругается сообщением array out of range in 'МойСоветник.mqh'(137, 25) и вылетает с кодом uninit reason 8. Но только, когда на экране написано большими буквами "Ожидание обновления".
Убираю Time[0] и глюк прекращается.
Просто есть в функции OnInit() подстрока Time[0]. И при переключении тайм фрейма советник ругается сообщением array out of range in 'МойСоветник.mqh'(137, 25) и вылетает с кодом uninit reason 8. Но только, когда на экране написано большими буквами "Ожидание обновления".
Убираю Time[0] и глюк прекращается.
Тестер?
А что ArraySize(Time) в этот момент выдает?
Тестер?
Нет, обычный.
Нолик выдаёт.
Нет, обычный.
Придется паузу предварять или цикл пока ноль ждем
Может зависнуть при запуске терминала)
В онинит нельзя делать паузы и ожидания.
Лучше перенести это в основной расчет и там проверять.
Может зависнуть при запуске терминала)
В онинит нельзя делать паузы и ожидания.
Лучше перенести это в основной расчет и там проверять.
По моему, это баг системы - запускать OnInit() до подгрузки данных графика.
![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Просто есть в функции OnInit() подстрока Time[0]. И при переключении тайм фрейма советник ругается сообщением array out of range in 'МойСоветник.mqh'(137, 25) и вылетает с кодом uninit reason 8. Но только, когда на экране написано большими буквами "Ожидание обновления".
Убираю Time[0] и глюк прекращается.