вы можете зациклиться на start() для проверки нового тика и...isconnected().
Но что поможет мне зациклиться на start(), если новый тик не наступил?
например, если я автоматически перезагружаю терминал и нет соединения, значит советник не пришел в цикл.
Но что поможет мне зациклиться на start(), если новый тик не наступил?
например, если я автоматически перезагружаю терминал и нет связи, то советник не приходит в цикл.
Могу помочь в скрипте, а не в советнике.
в советнике в init()?
в советнике в init()?
Возможно.
извините, после того как int init() не сработал, я его вырубил.
#property copyright "Copyright © 2010, MetaQuotes Software Corp." #property link "http://www.metaquotes.net" #import "shell32.dll" int ShellExecuteA(int hwnd,string Operation,string File,string Parameters,string Directory,int ShowCmd); #import int init() { Print ("starting count"); Sleep(10000); Print ("chacking"); if (!IsConnected()) { Print ("restarting ap in 5 sec"); Sleep(5000); ShellExecuteA(0, "Open", "d:\r_ap.bat", "", "", 1); } return(0); }
Расширяя мою ссылку выше... Я запускаю отдельный советник для мониторинга состояния соединения. В нем весь код для моего теста закодирован внутри start с sleep в конце. Start - это, по сути, большой цикл, когда он завершается, он возвращается в начало. Но вместо того, чтобы ждать тика для запуска, я вызываю start() внутри init(). Таким образом, start() продолжает цикл с sleep, а init() никогда не завершается, поэтому код выполняется на основе временных интервалов от sleep, а не в ожидании тика... ссылка выше показывает принцип...
hth
V
Расширяя мою ссылку выше... Я запускаю отдельный советник для мониторинга состояния соединения. В нем весь код для моего теста закодирован внутри start с sleep в конце. Start - это, по сути, большой цикл, когда он завершается, он возвращается в начало. Но вместо того, чтобы ждать тика для запуска, я вызываю start() внутри init(). Таким образом, start() продолжает цикл с sleep, а init() никогда не завершается, поэтому код выполняется на основе временных интервалов от sleep, а не в ожидании тика... ссылка выше показывает принцип...
hth
V
спасибо
Но что поможет мне зациклиться на start(), если новый тик не наступил?
например, если я автоматически перезагружаю терминал и нет связи, то советник не приходит в цикл.
Просто вызовите start() из init() ...и вы будете в start() даже без прихода тика!

- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Кто-нибудь может мне объяснить, как IsConnected() может работать после int start()?
если что-либо написано после int start() выполняется только после нового тика Как советник может добраться до этого вообще
спасибо