bool x = false; //присваиваем переменной х типа bool значение false
while(x==false) //пока x равен false. Два символа равно “==” означают сравнение
{
/*
здесь будут выполняться какие-то условия.
Как только x станет true, цикл прекратится.
*/
//например
x = true;//после первого же прохода делаем x равным true
//и цикл прекращается
}
В процессе написания советника мы будем использовать оба этих цикла, и вы без труда с ними разберетесь.
ТЕХНИЧЕСКОЕ ЗАДАНИЕ
Опишем, что и когда должен делать наш будущий советник:
Торговые сигналы будут
формировать два
стандартных индикатора
Envelopes
и
ZigZag
. Эти индикаторы встроены в
MetaTrader
4 и дополнительно скачивать их не нужно. Я выбрал два именно этих индикатора, т. к. их значения вызываются разными способами. Для
Envelopes
– с помощью стандартной функции iEnvelopes, а
ZigZag
вызывается функцией
iCustom
– ее вам необходимо изучить (хотя, это громко сказано), чтобы в дальнейшем вы умели вызывать данные почти
любых не стандартных
индикаторов для
MetaTrader
4.
Составим краткое техническое задание:
1) Если верхний пик индикатора
ZigZag
(далее -
ZZ
) сформировался выше верхней линии индикатора
Envelopes
(с параметром
Shift
= 10, остальные – стандартные), выставляем ордер на продажу фиксированным лотом, определенным в настройках советника.
2) Если нижний
пик
ZZ
сформировался ниже нижней
Envelopes
– сигнал на покупку (т. е. наоборот от
buy
–сигнала).
3) Путем модификации (почему модификации, а не сразу при установке ордера – позже, когда будем писать этот код) советник должен устанавливать у ордеров Стоп-Лосс и Тейк-Профит.
4) Добавить возможность закрывать ордера при касании ценой противоположной линии Envelopes. Эту функцию можно выключать в настройках.
Если вы читаете эту книгу, я надеюсь, на вашем компьютере уже установлен торговый терминал MetaTrader4 и вы умеете открывать демо-счет. Если нет, нужно этот терминал установить, предварительно зарегистрировавшись у любого брокера, поддерживающего работу MetaTrader4.
А теперь, переведите свой терминал на английский язык! Если уж вы решили заняться программированием, привыкайте к английскому, без этого никуда! Сам редактор кода MetaEditor лучше оставить на русском, т. к. при переводе его на английский язык, Справка (F1) получается тоже на английском языке. Не всем это удобно.
ПОЛУЧАЕМ ДАННЫЕ ИНДИКАТОРОВ
Открываем свой MetaTrader4 и нажимаем кнопку F4 на клавиатуре, или левой кнопкой мыши здесь:
В открывшемся редакторе кода нажимаем
New
(Создать), затем
Expert
Advisor
(
template
),