На первом уроке по изучению языка MQL мы научились запускать редактор MetaEditor и создавать новый скрипт MQL4. Но как мы можем увидеть, созданный нами скрипт MT4 пока не выполняет никаких функций в торговом терминале Metatrader 4.
В данном уроке мы научим его выполнять какую—нибудь полезную функцию. Для примера, рассмотрим одну из полезных функций, которую мы реализуем на языке MQL4 — «расчет лота в зависимости от имеющихся у нас свободных средств».
Для этого мы должны определится с допустимым риском для нашего депозита на форекс (т.е. какое кол-во средств мы будем задействовать в торговле при использования советника форекс или в нашем случаи — скрипта для Metatrader 4).
Все учебники по форекс и опытные трейдеры рекомендуют: "никогда не рискуйте при заключении сделок на форекс более чем 2−5% от своего депозита". Ну что ж, давайте прислушаемся к их советам. Но т.к. четкой цифры нет, то нам нужно чтобы созданный нами скрипт запрашивал эту цифру.
Теперь давайте реализуем эту функцию на языке MQL4:
Введем в начале скрипта команду: #property show_inputs
У нас получилось:
команда #property show_inputs означает выводить окно со свойствами перед запуском нашего скрипта MQL. Попробуем запустить наш получившийся скрипт. Но для этого его нужно предварительно откомпилировать! Компиляция — это преобразование нашей получившийся программы из языка понятного нам (в данном случаи MQL) в язык понятный компьютеру. Для компиляции скрипта MQL нажмем клавишу «компилировать»:
При этом в нижней части экрана высветится:
Это сообщение означает, что наш скрипт на языке MQL проверен на отсутствие ошибок и преобразован в код, понятный компьютеру.
Затем переходим в терминал Metatrader 4 из редактора MetaEditor, нажав клавишу "Терминал":
Теперь, когда мы уже находимся в торговом терминале Metatrader 4 - в окне «Навигатор» выбираем пунк «Скрипты»:
Ищем в данном списке наш созданный скрипт для MT4 —«test»:
И дважды щелкнув мышкой по скрипту «test»- запускаем его!
Но теперь возникает вопрос: «куда же вводить наш процент от депозита для расчета лота на форекс?».
Для этого мы должны задать его предварительно в нашем скрипте. Идем снова в редактор MetaEditor и добавляем в начале скрипта команду: extern int MaxRisk=2;
В итоге наш код должен выглядеть так:
Давайте разберемся что мы написали, используя команду - extern int MaxRisk=2;
Или другими словами, рассмотрим формат написания команд в редакторе MetaEditor:
extern — означает что данный параметр внешний (т.е. его можно изменить при запуске скрипта или советника MT4)
int - тип переменной (компьютеру же надо знать что мы ему передаем: число, текст и т.д.)
MaxRisk — название нашей переменной, которое может быть абсолютно любым — на ваше усмотрение!
=2 — присвоили данной переменной (в данном случаи MaxRisk) значение, которое будет высвечиваться по умолчанию в окне выставления настроек скрипта в терминале Metatrader 4.
; — знак, означающий окончание нашей команды.
Теперь снова компилируем и запускаем наш скрипт «test»(как было описано выше). Если компилятор «ругается» (сообщает) об ошибках — это означает что то мы сделали что-то не правильно и следует проверить правильность кода на языке MQL4!
Ели ошибок нет, то при запуске скрипта (или советника) в терминале Metatrader 4, появляется следующее окошко:
Как мы теперь можем видеть, при запуске скрипта «test», у нас появилась новая вкладка «Входные параметры».
Переходим на нее:
Вот в данной вкладке мы и видем наш параметр MaxRisk, который служит для расчета лота в MT4 и который мы будем в дальнейшем использовать при создании скриптов и советников на языке MQL!
|