Язык программирования советников для MetaTrader 4 — MQL4
MQL4 – это язык программирования, встроенный в торговую платформу MetaTrader 4. С помощью этого универсального языка, можно создавать такие полезные программы, как пользовательские индикаторы, различные скрипты, а также возможно создание советников – автоматические торговые системы (торговые роботы). Советники работают круглосуточно, не требуют постороннего вмешательства и отслеживают изменения по ценам на финансовые инструменты. Meta Trader советники способны отправлять письма на электронную почту, SMS на мобильный телефон, а также выполнять многие другие функции и полезные действия. MQL4 простой в использовании язык. Он очень схож с другим популярным языком – С. Поэтому, человеку, которых хоть немного знаком с понятие программирования, легко разберется в нюансах MQL4.
MQL4 программирование выводит трейдеров на качество новый уровень работы, помогает реализовать идеи прикладного программирования.
Настало время детально рассмотреть методы создания советников с помощью MQL4, путем использования мастера MetaEditor, который вызывается нажатие клавиш Ctrl+N.
Создание советников следует разбить на несколько пунктов.
Заходим в редактор программ MetaEditor 4. Далее открываем вкладку «Файл» и выбираем пункт «Создать». После этого появляется сам «Мастер создания советника». Выбираем тип будущего советника и жмем кнопку «Далее». После этого Вас перебрасывает на информационное окно, где потребуется ввести данные программиста: название советника, сайт и т.п.
Приступаем к редактированию советника. Здесь нужно добавить программе параметры, чтобы потом прикрепить советник на график цен. Это нужно для возможности дальнейшей передаче определенных сведений программе.
- Фокусируем внимание на таблице «Параметры». Справа Вы увидите кнопку «Добавить». Жмите на эту кнопку и видите, что данный параметр целочисленный без первоначально заданного значения. Позже будет возможным отредактировать данные этого параметра. Делается это при помощи мышки, нажав ее на соответствующем поле в таблице. Далее нужно сменить название параметра на «Stop Loss», тип этого параметра ставим double, и прописываем значение по умолчанию «5». Завершаем редактирование советника нажатием клавиши «Готово». Теперь Ваш советник имеет базовый код.
- После этого Вы увидите на мониторе заголовок, где нужно заполнить запрашиваемые данные: имя, автор и ссылка на ресурс. Далее появляются сведения о глобальной переменной и пустые данные по параметрам функций «start», «deinit» и «init». При этом параметры, которые Вы вводили в предыдущем пункте для параметров StopLoss, а именно «init», уже будет содержать Ваши указания: «double» и значение 5.
- Функции «init» доступно прописать гораздо большее количество параметров. Но здесь нужно понимать, что чем больше будет указано параметров для этой функции, тем больше получим глобальных двойников (кодов). Двойники появятся у каждого кода. После работы с «Мастером создания советников» ненужные глобальные переменные можно удалить.
Коротко расскажем о функциях «start», «deinit», «init» и для чего они:
«start» — эта функция запускается автоматически при новом тике (изменение цены). Она является самой важной функцией советника, потому что на ней лежит самый важный отрезок работы в каждый момент времени. Здесь обязательно стоит обращать внимание на то, чтобы «start» начинал работу по новому тику, как только он наступает. Если функция не завершила работу над предыдущим тиком, а новый уже наступил, то по новому изменению цены функция не будет запускать работу.
«deinit» — функция необходима в случаях:
- При завершении работы торговой платформы MetaTrader 4, или при закрытии графика цен.
- при переключении по торговым счетам
- при смене временного периода графика
- при удалении советника с графика цен
- при изменении параметров советника
- при перекомпиляции программы MetaEditor
«init» — функция необходима в случаях:
- При перекомпиляции программы MetaEditor
- при подключении советника к графику
- при смене торгового счета
- при изменении параметров советника
- при смене временного периода графика
- после загрузки исторических данных и запуске торговой платформы MetaTrader 4
Данные функции являются фундаментальными, когда пишутся советники MetaTrader.