Available Now

Order now and be among the first to learn from Alternative Investing expert Bob Rice. Begin building your alternatives portfolio today! Order from Amazon.com, Barnes & Noble or 800-CEO-Reads

Back to Blog

The Alternative Answer Daily

MQL4: уроки программирования, советники и индикаторы, учебник

уроки программирования mql4

Установим нулевой размер у массивов фракталов и определим направление индексации в массивах, как в таймсериях (справа налево). Массив баров на графике на всю глубину исторических данных называется таймсерией. Нумерация в этом массиве ведётся справа налево, то есть индекс 0 (ноль) в массиве-таймсерии означает данные текущего бара, который соответствует незавершенному промежутку времени на данном таймфрейме. Размер массива-таймсерии можно получить, вызвав функцию iBars, или обратившись к предопределённой переменной Bars.

  1. А затем перейдем к написанию советника с пирамидингом в основе.
  2. Не так давно на сайте появился индикатор открытых позиций трейдеров.
  3. Давайте в нашей структуре Candle определим метод, который будет получать время открытия свечи, искать её в массиве-таймсерии и заполнять поля структуры данными о найденной свече.
  4. Тесты, сделанные в первом приближении, показали работоспособность метода в целом и конкретного советника в частности.

Скачать исходник советника из урока

Все операторы в теле цикла, идущие за оператором continue, не будут выполнены. Для иллюстрации работы оператора немного модифицируем нашу задачу с выводом в журнал целых чисел от 1 до 5. Заметьте, что наряду с инкрементом, то есть увеличением переменной i на единицу, здесь мы использовали и декремент, то есть уменьшали на единицу переменную j. Пирамидинг наряду с достоинствами имеет и серьёзные недостатки.

Введение в Объектно ориентированное Программирование, структуры

Крайнее правое число после разделителя – это текущая прибыль ордера. В данном случае переменная-счётчик последовательно примет значения 1, 3, 5, 7, 9, 11, а нфа форекс отзывы в журнал выведет 1, 3, 5, 7, 9. Любое из трех или все выражения в операторе for(выражение1; выражение2; выражение3) могут отсутствовать. Нельзя опускать только разделяющие выражения точки с запятыми, то есть в записи всегда должны быть оба символа «;». Выражение1 и выражение3 могут состоять из нескольких выражений, объединенных оператором запятая «,».

Входные параметры

Методически учебник составлен так, чтобы сделать обучение языку MQL4 максимально удобным и последовательным. В этом уроке мы рассмотрели использование циклов при работе с массивами. Заодно вспомнили и закрепили основные сведения о самих массивах и циклах, изучили особенности их реализации в языке MQL4, разобрали типичные примеры и приёмы программирования массивов и циклов. Подобные структуры можно написать и для массивов других типов. Универсальную структуру, подходящую для использования массивов любого типа, к сожалению, создать не получится.

Для этого будем писать скрипт, а из технических индикаторов нам поможет индекс относительной силы (RSI). Также разберем работу с анализом баров и напишем скрипты для разметки фракталов на истории. Многомерные массивы также могут быть статическими или динамическими. Массив-приёмник, естественно, должен быть объявлен и иметь тот же тип, что массив-источник. В связи с тем, что операция копирования занимает какое-то время, старайтесь использовать эту функцию, когда это действительно необходимо в рамках вашей задачи.

Функция GetSignal()

Напечатаем в журнал числа от 1 до 5 и от 5 до 1 одновременно в одном цикле. При этом тело цикла должно состоять только из одного вызова функции Print(). Первая будет открывать ордер указанным объёмом по текущей рыночной цене в указанном направлении. Давайте в нашей структуре Candle определим метод, который будет получать время открытия свечи, искать её в массиве-таймсерии и заполнять поля структуры данными о найденной свече.

уроки программирования mql4

Отметим лишь, что искать подобные точки входа лучше всего на старших таймфреймах от H1 и выше. В результате значения всех полей переменной h2 скопируются в поля переменной h1. Основным достоинством прикладных программ является возможность совершать торговые операции в соответствии с алгоритмом, заданным трейдером по своему усмотрению. Мы рассмотрим отличия серьёзные и не очень между МТ4 (язык программирования MQL4) и МТ5 (язык программирования MQL5) как в общем, так и непосредственно в программировании на этих языках. Видео будет интересно в первую очередь тем, кто давно хотел попробовать свои силы в MQL5, но не решался. Оператор continue прерывает текущую итерацию цикла и начинает новую.

Тогда адрес первого элемента совпадает с адресом всего массива, то есть смещение равно нулю. Адрес второго элемента – это адрес первого плюс одно смещение на размер первого элемента. Для фиксации прибыли в нашем советнике используется общий Stop Loss, но может случиться так, что будут активированы все ордера пирамиды и цена уйдёт дальше по тренду. Чтобы не терять в таких редких случаях прибыль, используется страховочный Take Profit, иначе нам придётся ждать возвращения цены и срабатывания общего Stop Loss. При этом лучше всё-таки использовать больше ордеров в пирамиде.