![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Функция ArrayInsertDouble()
Выполняет вставку одного элемента массива с заданным индексом. Возвращает количество элементов (размер) нового массива. Вставка выполняется следующим образом. Сначала размер массива увеличивается на единицу. Потом все элементы, индекс которых больше или равен индексу вставляемого элемента, поочереди сдвигаются в конец массива, освобождая место для вставляемого. И наконец значение записывается в нужную ячейку. Функция ArrayInsertDouble() принимает следующие параметры:
ЗЫ. Во вложении скрипты для тестирования функций ArrayInsertDouble(), ArrayInsertInt(), ArrayInsertString().
ЗЗЫ. На сайте обновил библиотеку b-Array.
Игорь раз взялись за массивы, может вернемся к старой моей просьбе, про сортировку массивов ('Полезные функции от KimIV'). То что было сделано раннее немного не то, извиняюсь за некоренное ТЗ.
Нужна сортировка двух мерного массива по заданному столбцу (строке), аналог операции в EXCEL. Данная процедура необходима для использования статистики Спирмена 'Коэффициент ранговой корреляции Спирмена - Spearman's Rank Correlation', в некоторых вариантах анализа корреляционных матриц валют (портфелей).
Функция BubbleSort2().
Данная функция выполняет пузырьковую сортировку элементов двумерного массива по произвольному столбцу. Кроме того, можно задать направление сортировки. Функция BubbleSort2() принимает следующие параметры:
Функция GetTypeLastDeleted().
Данная функция возвращает тип последнего удалённого ордера или -1. Бывают ситуации, когда логику работы советника нужно завязать на тип только-что удалённого ордера. Например, если сейчас удалили BuyStop, то сделать то-то, а если BuyLimit, то сделать что-то другое и т.д. Функция GetTypeLastDeleted() принимает следующие необязательные параметры:
Да, теперь этот
#include "b-KimIV.mqh" // Библиотека дополнительных функций
Здравствуйте, Олег!
Для безошибочной компиляции библиотеки b-Positions.mqh Вам в библиотеке b-kimiv.mqh понадобятся функции, которые уже есть в данной ветке:
Таким образом, Вы можете сделать следующее:
Удачи!
Функция iBarLargest().
Данная функция возвращает индекс наибольшего бара или -1. Размер бара измеряется функцией одним из двух способов, определяемым входным параметром ty - тип элементов поиска. Либо только размер тела, либо вместе с тенями. Функция iBarLargest() принимает следующие необязательные параметры:
Функция iBarOfDayCalc().
Данная функция возвращает расчётный номер бара от начала суток. Бары нумеруются с единицы, то есть бар с самым маленьким временем открытия в заданных сутках будет иметь номер один, следующий бар - номер два и т.д. Эту функцию удобно использовать при оптимизации времени входа/выхода. Если кого-то заинтересуют подробности, задавайте вопросы. Постараюсь ответить. Функция iBarOfDayCalc() принимает следующие необязательные параметры:
ЗЫ. Во вложении скрипт для тестирования функции iBarOfDayCalc(). На рисунке ниже показан способ использования скрипта.
Функция iBarOfDayReal().
Данная функция возвращает реальный номер бара от начала суток. Бары нумеруются с единицы, то есть бар с самым маленьким временем открытия в заданных сутках будет иметь номер один, следующий бар - номер два и т.д. Практического применения данной функции я пока не нашёл. А написал, чтобы была :-) в паре с функцией iBarOfDayCalc(). Функция iBarOfDayReal() принимает следующие необязательные параметры:
ЗЫ. Во вложении скрипт для тестирования функции iBarOfDayReal(). На рисунке ниже показан способ использования скрипта.
Функция iBarOfDayReal().
Практического применения данной функции я пока не нашёл.
гг... :)
Я тут в качестве тренировки решил написать скрипт который посчитает пройденый путь.
Если кто знает есть такая програмулька что считает сколько километров пробежала мышь по монитору.
Так и здесь, сложить опен-клос баров текущих суток (недели, месяца или года) или если представить
по другому как нитка с иголкой по стежку шубу шьёт: опен-клос-опен-клос-опен-клос ... по ходу графика.
Тоже самое но по хай-лоу...
*
Затык начался с первых же шагов.
Как отфильтровать для обсчёта бары текущих суток...
Попробую применить Ваши функции для этого баловства.
Игорь. Доброго времени суток.
Может черкнете простую для вас задачку: а задачка (для меня ) следующая:
задача следующая: установить при каком значении цены сигнальная линия пересечет MACD, или, другими словами, гистограмма MACD станет равной нулю.
Решение такой задачи необходимо, например, для вычисления цены стоп или лимит ордера для следующего бара в сигналах торговой системы, использующей этот индикатор,
который будет визуально показывать уровень цены, на котором произойдет пересечение гистограммой MACD нулевой линии (то бишь пересечение одной линии с ценой - линия на графике)
это касается, относится, к процентному MACD, вычисляемому по формуле MACD = (FastEMA/SlowEMA - 1). Периоды 12, 26, сигн.9.
Есть коды для для омеги и метостока. а как это в мт4 реализовать-не нашел пока нигде.
спасибо