
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Функция Start() оставлена для совместимости с устаревшими версиями и на данный момент ее уже ни кто не использует.
Ну как сказать. Если пишется чисто для MQL4 то я предпочитаю start(). По простой причине
Разница есть. В 4-ке есть моменты, когда нужно изменить значение переменной в процессе выполнения программы. extern с этой задачей справиться, input -не справиться.
Из справки:
Подобно input-переменным, extern-переменные также определяют входные параметры mql4-программы, они доступны из окна свойств. В отличии input-переменных, значения extern-переменных могут быть программно изменены в процессе работы программы.
Я знаю об этом. Но ведь если в программе предусмотрено изменение значений input переменным, то никто не запрещает предусмотреть переменную глобального уровня и её использовать во всём коде меняя где угодно и сколько угодно.
В общем это на любителя.
Я знаю об этом. Но ведь если в программе предусмотрено изменение значений input переменным, то никто не запрещает предусмотреть переменную глобального уровня и её использовать во всём коде меняя где угодно и сколько угодно.
В общем это на любителя.
Ну как сказать. Если пишется чисто для MQL4 то я предпочитаю start(). По простой причине
Если новый тик поступил в период выполнения специальной функции start(), то этот тик будет проигнорирован
В OnTick() то же самое.
Тогда вопрос, почему данность не указана в описании функции???
Хотя мне как-то это проверять не приходилось, да и использовать флаг не составляет труда. Но все равно добавить данное предложение в описание не помешает.
Посмотрите повнимательней CodeBase и найдёте в достаточно свежих кодах и extern и start() не только в советниках, но и в индикаторах.
А что касается "начитался", так свежее чем учебник Ковалёва не писали и вряд-ли напишут.Вы код то его смотрели? Я не говорил, что Start нельзя использовать. Можно, если очень хочется, но не одновременно с OnTick(). У него в коде используется ОДНОВРЕМЕННО и Start() и OnTick().
Ну как сказать. Если пишется чисто для MQL4 то я предпочитаю start(). По простой причине
Еще один, код топик стартера посмотрите внимательно. В коде используется и Start() и OnTick() сразу вместе, а не отдельно друг от друга. Я ни слова не сказал о том что лучше использовать. Складывается такое впечатление что тут ни кто даже не удосужился посмотреть его исходный код, кроме LRA. А сразу начали полемику разводить и высказывать свое "экспертное" мнение о том что лучше Start или OnTick, да еще и extern суда приплели.
Еще один, код топик стартера посмотрите внимательно. В коде используется и Start() и OnTick() сразу вместе, а не отдельно друг от друга.
Читаем ВНИМАТЕЛЬНО
Приведенная вами моя цитата, уже ответ на другое.Вы код то его смотрели? Я не говорил, что Start нельзя использовать. Можно, если очень хочется, но не одновременно с OnTick(). У него в коде используется ОДНОВРЕМЕННО и Start() и OnTick().
Виталий, я всё смотрел, но ответил только на выделенный фрагмент фразы. И в том моём сообщении эта фраза была выделена жирным шрифтом.
Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий
Написание эксперта
Vitalii Ananev, 2018.01.28 09:57
Это я знаю. А вот как компилятор будет работать встретив в коде две функции предназначение которых вызываться при получении нового тика, при этом одна из них устаревшая? Как минимум надо использовать какую то одну из них, а не обе вместе. Функция Start() оставлена для совместимости с устаревшими версиями и на данный момент ее уже ни кто не использует. Я думаю, что топик стартер просто начитался где то старых статей по Mql4.
Читаем ВНИМАТЕЛЬНО
Виталий, я всё смотрел, но ответил только на выделенный фрагмент фразы. И в том моём сообщении эта фраза была выделена жирным шрифтом.
Тогда извиняюсь, если цитируют все сообщения то я считаю, что ответ был именно на все сообщение. А вы оказывается прицепились к слову о том что Start() ни кто использует.