Вызов start() из init()

 
Вызов start() из init() может привести к проблемам при запуске терминала.
Пояснение.
Если эксперт привязан к графику, то, при запуске терминала, автоматически запускается эксперт и его init() из которой вызывается start(). Т.о. тело программы один раз выполняется.
Но, к моменту его выполнения может получится, что терминал еще не полностью активирован и такие функции как OrdersTotal() возвращают ноль, хотя ордера есть. И, если при первом старте, устанавливаются какие-нибудь уровни или вычисляется общее число ордеров, то это будет сделано не правильно.
Кстати, если терминал уже запущен и прикрепляется эксперт к графику, то этого не происходит по вполне понятным причинам.
 
Это типа ахтунг или мысли вслух?
 
Все верно - я об этом несколько раз явно писал и детально объяснял.
Поищите по форуму, пожалуйста.
 
Все верно - я об этом несколько раз явно писал и детально объяснял.
Поищите по форуму, пожалуйста.


Я вот и пытаюсь понять - это личный опыт или просто форум почитал :)
 
Я вот и пытаюсь понять - это личный опыт или просто форум почитал :)

Это - следование совету с последствиями...

"Подтолкнуть" эксперта
можно попробовать вызвать функцию start из функции init. тут кто-то такое уже проделывал.
Причина обращения: