Блог им. AlgoTrader1 |Синтаксис языка MQL4

Господа, всех приветствую. Продолжаем изучение языка MQL4. В прошлом посте речь шла о базовых функциях-обработчиках событий, которые есть в каждом советнике. Сегодня поговорим о синтаксисе MQL4. Для С++ программистов новость хорошая, в плане синтаксиса MQL4 очень похож.

Синтаксис  — это такой набор правил, которые определяют как из символов алфавита языка собирать слова и предложения, которые образуют правильно структурированную и корректно работающую программу или её фрагмент. Таким образом, наблюдение за набором любого корректного кода, можно одновременно считать и изучением синтаксиса языка.

Однако, согласно справке в разделе посвящённом синтаксису языка предлагается рассмотреть: 

  • комментарии;
  • идентификаторы;
  • зарезервированные слова.
Поэтому, будем придерживаться данного плана.

Комментарии  — это пометки к определённым строкам или целым кускам исходного кода программы, в которых программист разъясняет себе, что происходит на данной строке или в данном фрагменте программы. Комментарии не являются частью исполняемого кода. Они нужны для того, чтобы в программе было проще ориентироваться, особенно если её потребовалось модифицировать спустя какое-то время после написания. Комментарии позволяют быстро вспомнить, что делает программный код.

( Читать дальше )
  • обсудить на форуме:
  • MQL4

Блог им. AlgoTrader1 |Обработчики событий, которые есть в каждом советнике

Господа, всех приветствую. Продолжаем изучение mql4. В прошлый раз мы познакомились с «Мастером MQL4», а так же программами и файлами, которые в нём можно создавать и разобрались, чем они друг от друга отличаются и какие задачи выполняют.

Сегодня я расскажу о трёх основных функциях, которые у Вас будут в каждом советнике. Эти функции называются OnInit(), OnDeinit(), OnTick() и являются обработчиками событий: инициализация, деинициализация и новый тик.

Если Вы попробуете создать шаблон советника в «Мастере MQL4», Вам будет предложено добавить и другие имеющиеся обработчики событий, но перечисленные функции являются базовыми, о них Вас даже не будут спрашивать. После получения пустой заготовки для советника, эти 3 функции уже будут в исходнике, после чего Вы можете их наполнить программным кодом.

В этом посте разберёмся, что следует размещать в каждой из функций и когда каждая из них выполняется.

Функция OnInit() выполняется первой, когда торговый терминал посылает событие init (инициализация). А делает он это в следующих ситуациях: запуск советника на графике, смена торгового символа или таймфрейма, перекомпиляция советника в MetaEditor’e, если его копия установлена на графике, изменение входных параметров советника из окна его настроек, а так же при смене счёта.



( Читать дальше )

Блог им. AlgoTrader1 |Настройка редактора программного кода MetaEditor для разработки советников / индикаторов / скриптов под платформы МТ4 и МТ5

Всех приветствую.
Решил завести свой блог на смартлабе и делать публикации на тему алгоритмической торговли. Буду время от времени постить материалы посвящённые программированию на языках mql4 и mql5 под торговые платформы MetaTrader 4 и 5 соответственно.

Материалов по этим языкам в интернете предостаточно, но большая часть видеоуроков от разных авторов, и от меня в том числе, записывалась до 600 билда терминала МТ4, когда он и претерпел значительные изменения. Именно тогда в mql4 и появилось объектно-ориентированное программирование и в целом язык изменился. Не то чтобы старые видеоуроки полностью утратили актуальность, но часть программного кода, написанного в старых версиях mql4 без ошибок и предупреждений успешно не перекомпилируется в современной версии редактора. Поэтому решил обновить цикл видеоуроков по mql4 с перспективой дальнейшего перехода на mql5. 

Конечно самым мощным ресурсом для изучения mql является официальное сообщество. Но там манера подачи скажем так: «От программистов — для программистов». Абсолютному новичку в программировании вообще и в mql в частности, пользоваться только справочной документацией будет затруднительно. Я же стараюсь доносить информацию максимально просто, доходчиво и с примерами. 

( Читать дальше )

....все тэги
UPDONW