![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
"MQL4: нет цены?"
Буду разбираться
А разве раньше во внешних переменных не ставилось желаемое время?
extern int HourOpen = 17;
extern int MinutesOpen = 49;
extern int SecondsOpen = 30;
Эксперт в таком виде не выставляет ордера.
не совсем до конца понял как работает функция, отслеживающая время. Допустим пример:
торги закрываются в 20:15. Цель - выставить ордера в 20:14:30.(Время МТ4)
К примеру последний тик пришел в 20:08:01. Я так понимаю: mHour, mMinutes и mSeconds это время прихода последнего тика и на основании этого времени
выполняется условие if( StartTime(60,HourOpen,MinutesOpen,SecondsOpen) )
Или я не правильно понял
не совсем до конца понял как работает функция, отслеживающая время. Допустим пример:
торги закрываются в 20:15. Цель - выставить ордера в 20:14:30.(Время МТ4)
К примеру последний тик пришел в 20:08:01. Я так понимаю: mHour, mMinutes и mSeconds это время прихода последнего тика и на основании этого времени
выполняется условие if( StartTime(60,HourOpen,MinutesOpen,SecondsOpen) )
Или я не правильно понял
в этом случае время в которое ты желаешь выставить ордер 20:14:30 (его и ставишь во внешних переменных), из примера видно что тик на приходил 6 мин. 29 сек, т.е. вместо 60 , как минимум должно стоять 6*60+29 = 389 сек. (нужно на практике знать ориентировочное максимально время отсутствие тиков), за 389 сек. запустится наша функция и будет ждать и ровно в 20:14:30 произведет нужные нам действия. StartTime(389,20,14,30) так будет выглядеть с циферками :)
в этом случае время в которое ты желаешь выставить ордер 20:14:30 (его и ставишь во внешних переменных), из примера видно что тик на приходил 6 мин. 29 сек, т.е. вместо 60 , как минимум должно стоять 6*60+29 = 389 сек. (нужно на практике знать ориентировочное максимально время отсутствие тиков), за 389 сек. запустится наша функция и будет ждать и ровно в 20:14:30 произведет нужные нам действия. StartTime(389,20,14,30) так будет выглядеть с циферками :)
[/quote]
Теперь дошло :)
Спасибо
Подскажите, пожалуйста, почему появляется такое сообщение компилятора ?
Что рекомендуется оптимизировать и сокращать: количество строк кода, переменных, массивов, обращений к функциям ?
Спасибо.
Вместо одной большой функции попробуйте сделать несколько функций
Большое спасибо, помогло.