Скачать MetaTrader 5
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий
Хочешь изучить язык MQL5? 300 статей помогут тебе!
Alexey Navoykov
3961
Alexey Navoykov 2011.08.28 15:51  

Коль уж зашла речь о запуске дополнительных скриптов, то тогда гораздо надёжнее и эффективнее использовать DLL. Там можно создать системный таймер с помощью функция SetTimer с заданным временным шагом, и задать функцию-обработчик события таймера, эмулирующую тики. И вуаля! Всё работает как часы, тикает через равные промежутки времени. Зацикливание советников уже не нужно. А особенно это будет полезно в индикаторах, т.к. там и зацикливать то нельзя.

keekkenen
1128
keekkenen 2011.08.28 19:40  
Grein:
..хотя огромный соблазн сделать это в инит(). ..
вызываем из инит старт, а старт зацикливаем.. чем плохо ?
Alexey Navoykov
3961
Alexey Navoykov 2011.08.28 21:19  
keekkenen:
вызываем из инит старт, а старт зацикливаем.. чем плохо ?
Это и есть зацикливание инита. А тут уже много раз говорилось, что так делать нежелательно. Но правда только теоретически :) На практике многие этим пользуются на протяжении многих лет, и ничего страшного. Хотя если запущено много советников, зацикленных в ините, то проблемы иногда наблюдаются при запуске терминала, он подвисает. По крайней мере у меня такое случается периодически. Хотя возможно дело и не в ините, а в зацикливании вообще... Я особых исследований на эту тему не проводил. Но по моим наблюдениям зависания при цикле инита случаются чаще, чем при обычных зацикливаниях в старте.
/ /123
Авторизуйтесь или зарегистрируйтесь, чтобы добавить комментарий