На основании предыдущих исследований в области MQL5 (использование функции IndicatorCreate в MQL5), вышла в свет первая версия советника TradeBuilderMT5, позволяющего построить торговую систему на базе произвольного набора технических индикаторов.
Основная цель данного советника — избавить трейдера, находящегося в процессе поиска собственного грааля от необходимости постоянного заказа советников для «новых» стратегий. Достаточно настроить имеющийся советник и оценить прибыльность торговой идеи.
В данной статье рассматривается построение простейшей системы на пересечении скользящих средних линий EMA(7) и EMA(21).
Вопрос о том, как купить советник или скачать триал-версию мы упустим, оставив ее на откуп администрации mql5, а конкретно на данную статью.
В терминале MT5 открываем настройки тестера и выбираем наш советник. Это должно выглядеть примерно так:
Далее переходим во вкладку входных параметров тестера и делаем настройки аналогично приведенным на рисунке ниже:
Цифрами на рисунке обозначено следущее:
- выбран индикатор первой линии — MA
- выбран текущий временной период
- пустое действие с первой линией
- параметры первой линии (об этом чуть ниже)
- задан последний закрытый бар
- индикатор второй линии
- тайм-фрейм второй линии
- действие для второй линии пересечении вверх
- параметры второй линии
- бар второй линии
- выбран пустой индикатор (обязательно, если алгоритм закончен)
Аналогично настраиваем сигнал на продажу. Разница лишь в действии второй линии — выбираем CrossDown:
Далее проверяем, что для всех остальных сигнальных настроек выбран EmptyIndicator и можем запускать советника.
Теперь о параметрах индикаторов. Здесь нам необходимо обратиться к разделу документации, конкретно — о скользящей средней. Имеем следующее описание:
int iMA( string symbol, // имя символа ENUM_TIMEFRAMES period, // период int ma_period, // период усреднения int ma_shift, // смещение индикатора по горизонтали ENUM_MA_METHOD ma_method, // тип сглаживания ENUM_APPLIED_PRICE applied_price // тип цены или handle );
Первые два параметра нас не интересуют — их мы задаем в своих настройках. Остаются ma_period, ma_shift (здесь вопросов быть не должно), ma_method и applied_price. По вторым двум параметра у людей, маленько программирующих на mql, вопросов так же будет мало, но мы рассмотрим общий случай. Константы доступны на странице документации и приведены ниже. Численное их выражение нумеруется сверху вниз от нуля. Например, MODE_SMA=0, MODE_LWMA=3. В нашем случае, строковый параметр ‘21,0,1,0’ означает период скользящей 21, смещение 0, MODE_EMA, PRICE_CLOSE.
ENUM_MA_METHOD
Идентификатор | Описание |
MODE_SMA | Простое усреднение |
MODE_EMA | Экспоненциальное усреднение |
MODE_SMMA | Сглаженное усреднение |
MODE_LWMA | Линейно-взвешенное усреднение |
ENUM_APPLIED_PRICE
Идентификатор | Описание |
PRICE_CLOSE | Цена закрытия |
PRICE_OPEN | Цена открытия |
PRICE_HIGH | Максимальная за период цена |
PRICE_LOW | Минимальная за период цена |
PRICE_MEDIAN | Медианная цена, (high+low)/2 |
PRICE_TYPICAL | Типичная цена, (high+low+close)/3 |
PRICE_WEIGHTED | Средневзвешенная цена, (high+low+close+close)/4 |
Разобравшись с параметрами, немного усложним нашу стратегия, т.к. я не люблю работу без SL. Делаем настройки в соответствии с картинкой:
Цифрами на картинке обозначено:
- Выбрано вычисление наименьшего значения цены
- задан временной интервал
- пустое действие
- начальный бар
- длина участка в барах
- пустой индикатор
Для стоп-лосса Sell настраиваем цену Highest:
Теперь запускаем советник и радуемся..
Set-файл прицеплен к топику.