Архив категорий: Функции MQL4

Наиболее нужные и полезные функции для применения в советниках и индикаторах терминала MT4.

Как гарантировано открыть и/или модифицировать ордер в mql4

Предлагаю следующий простой и надежный вариант установки или модификации. Для этого используем цикл while. Установка ордера: 2 3 4 5 6 7 8 bool open=false; int ticket = 0; while(!open && !IsStopped()) { ticket=OrderSend(Symbol(),OP_BUY,lot,Ask,300,0,0,"",Magic,0,Lime); if(ticket > 0) open = true; }bool open=false; int ticket = 0; while(!open && !IsStopped()) {… Читать далее »

Функция mql4 считает проценты бычьих и медвежьих баров

Функции считают, сколько бычьих и медвежьих баров по отношению друг к другу. Из скрина будет все понятно: Внешний параметр: 2 input int    number_of_bars = 3; // Сколько баров принимать в расчетinput int    number_of_bars = 3; // Сколько баров принимать в расчет Вызов функций (как пример): 3 4 5 MathRound(PercentsBullBars(number_of_bars)) // сколько процентов… Читать далее »

Функция прямоугольной метки mql4

Чтобы нарисовать прямоугольник на графике, на фоне которого потом можно вывести какую-нибудь информацию уже в виде текста, предлагаю следующую функцию. Каждая строка комментирована и все предельно понятно. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17     void DrawBox()          {           … Читать далее »

Закрылся ли последний ордер по тейк-профиту?

Функция mql4: закрылся ли предыдущий ордер по тейк-профиту? Функция возвращает: если true — по тейку, false — еще как-то. Нажмите лайк и функция откроется.[sociallocker] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26… Читать далее »

Функция безубытка mql4

Функция безубытка mql4 Внешние переменные: 1 2 input int LevelProfit = 60;  //Уровень профита в пунктах, которого должна достигнуть позиция для того, чтобы её стоп был перенесён на уровень безубытка. input int LevelWLoss  =  30;  //  Уровень безубытка в пунктах, на который будет перенесён стоп позиции после того, как её… Читать далее »

Трейлинг-стоп по MA (трал по «машке»)

Функция трейлинг-стопа по индикатору Moving Average Внешние переменные: 1 2 3 input int periodMA = 20; // период МА input bool TralOnlyProfit = true; // тралить только профитные ордера или все input int Step = 1;// можно настроить шаг тралаinput int periodMA = 20; // период МА input bool TralOnlyProfit… Читать далее »

На каком баре был закрыт последний ордер (функция MQL4)

На каком баре был закрыт последний ордер (функция MQL4) Иногда нужно знать, на каком по счету баре был закрыт последний ордер. Например, если ордер уже был закрыт на текущем баре (т.е. на нулевом), то можно не допустить нового открытия ордера здесь же. Параметры функции: Sy — Торговый инструмент; tf —… Читать далее »

Функция дивергенции MACD

Функция дивергенции MACD Вчера возникла задача срочно сделать функцию поиска двух горбов MACD для дальнейшего выявления дивергенции. Получилось целых две функции: для выявления горба при MACD выше нуля и для выявления впадины при MACD ниже нуля. Каждая функция возвращает номер бара, на котором образовался горб или впадина. Вызов функции поиска… Читать далее »

Функция определения количества пунктов в идущих подряд убыточных ордерах

Функция определения количества пунктов в идущих подряд убыточных ордерах Допустим имеется 3 подряд убыточных ордера и нужно узнать, сколько в этих трех ордерах убытка в пунктах (спред не учитывается). Применяем эту функцию: [sociallocker] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17… Читать далее »

Функция гарантированного открытия ордера

Функция гарантированного открытия ордера Ордер точно будет открыт этой функцией. Во внешние параметры надо вынести уровень проскальзывания и комментарий к ордеру: 1 2 input string IsComm = "Тут любой комментарий"; input int Slippage = 30; // 30 — это просто примерinput string IsComm = "Тут любой комментарий"; input int Slippage… Читать далее »