Программирование на MQL4: основы языка и введение в синтаксис
В связи с тем, что операция копирования занимает какое-то время, старайтесь использовать эту функцию, когда это действительно необходимо в рамках вашей задачи. Оператор continue удобно применять, если тело цикла довольно большое. Можно не усложнять конструкции ветвления внутри цикла, а сразу пропустить все последующие операторы и перейти к новой итерации. Cо значениями по умолчанию советник не блещет результатами, впрочем, и не сливает. Давайте немного «отодвинем» уровни перепроданности и перекупленности в настройках индикатора, установим параметр StochasticLevelDn на 10 вместо 20.
Давайте начнем с простой функции PipPoint(), которая вычисляет количество десятичных знаков в текущей паре и автоматически настраивается для 3-х и 5-ти значных брокеров. Для всех остальных пар (4 и 5 цифр) функция возвращает 0,0001. Вы даже можете создавать свои собственные константы, используя директиву препроцессора #define. Вкладка «Файлы» в окне «Навигатор» — это простой файловый браузер, который позволяет открывать и редактировать любые файлы MQL в папке \experts. На вкладке «Словарь» имеется встроенная ссылка на MQL, а на вкладке «Поиск» — функция поиска. Окно редактора позволяет открывать сразу несколько файлов.
Адрес второго элемента – это адрес первого плюс одно смещение на размер первого элемента. Если предполагается, что лот каждого нового ордера или шаг, на котором он выставляется от предыдущего, изменяется в прогрессии, происходит вызов служебной функции GetProgressionMember(). Эта функция возвращает n-ый член арифметической или геометрической прогрессии. Следующая функция определяет направление текущей сетки ордеров. Как только встретится первый ордер, открытый советником, его тип и будем считать направлением сетки.
Мы пишем демонстрационный вариант, поэтому не будем обрабатывать возможные исключения, когда что-то пошло не так и на счёте оказались открыты встречные ордера. Предположим, что в каждый момент времени у нас на счёте открыты ордера только одного направления или нет открытых вовсе. Программы разных видов могут использоваться одновременно и при этом обмениваться данными. С помощью этих приложений программист может механизировать значительную часть торговых операций или создать робот, способный осуществлять торговлю без вмешательства трейдера.
Циклы, функции и ордера в советнике
Сегодня мы напишем довольно простой советник, который поможет нам с исследованиями рынка. Все, что вам понадобится, — это терминал Metatrader 4 и mql редактор кода. А также знания о стандартном mql4 методе WebRequest, с которым мы с вами сегодня и будем знакомиться. IVolume – тиковый объём или сколько раз цена меняла значение за время формирования бара. Наиболее распространённым графическим представлением баров являются так называемые «японские свечи».
Общие параметры торговли
Основной же целью урока было показать, как использование структур может помочь программисту повысить эффективность кода. Впрочем, структуры, представляя собой объекты, объединяющие данные и действия над ними, служат своеобразным «мостиком» между процедурным и объектно-ориентированным программированием. Поэтому привычка использовать в своём коде структурный тип данных послужит хорошей тренировкой для тех, кто планирует освоить ООП.
Сегодня мы напишем довольно простой советник, который поможет нам с исследованиями рынка.При этом передача структуры в функцию возможна только по ссылке.Сама установка проста и занимает 5-10 минут, поэтому тут подробно описывать этот процесс нет смысла.В арсенале языка MQL4 имеется функция ArraySort() для сортировки числовых массивов по первому измерению.
Он включает в себя несколько разных функций, которые программисты могут найти полезными. Как и все включаемые файлы, он находится в папке \experts\include. Например, если переменная типа Double назначена переменной типа Int, Double будет округлена до ближайшего целого числа. Файлы с расширением .mq4 являются файлами исходного кода.
Многомерные массивы
Торговый терминал MetaTrader 4 по достоинству оценили сотни тысяч трейдеров во всем мире. Использование встроенного языка программирования MQL4 выводит трейдеров на качественно новый уровень торговли – автотрейдинг. В этом уроке мы рассмотрели использование циклов при работе с массивами.
Определимся с полным функционалом будущего советника и опишем его входные параметры. Первая будет открывать ордер указанным объёмом по текущей рыночной цене в указанном направлении. В этом примере поля структуры open, close, high