Скачать MetaTrader 5

Смотри, как бесплатно скачать роботов

Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят

Понравился скрипт?
Оцени его работу в терминале MetaTrader 5

2016.12.01 16:20
Советники

Exp_WeightOscillator - эксперт для MetaTrader 5

| Russian English 中文 Español Deutsch 日本語 Português

Просмотров:
643
Рейтинг:
голосов: 17

Реальный автор: Хлыстов Владимир

Самый простой советник по взвешенному осциллятору WeightOscillator. Продаем при пересечении сверху вниз уровня перекупленности осциллятора, покупаем при пересечении снизу вверх уровня перепроданности осциллятора. Сигнал на совершение сделки формируется в момент закрытия бара, если произошло пересечение уровня.

Индикатор WeightOscillator_HTF в эксперте предназначен только для более удобной визуализации трендов в тестере стратегий, и в других режимах он не работает.

Для корректной компиляции советника необходимо наличие откомпилированных файлов индикаторов WeightOscillator.ex5 и WeightOscillator_HTF.ex5  в папке <каталог_данных_терминала>\MQL5\Indicators.

После компиляции файл эксперта Exp_WeightOscillator.ex5 содержит индикаторы WeightOscillator.ex5 и WeightOscillator_HTF.ex5  в себе как ресурсы, и поэтому дальнейшей необходимости их наличия в папке терминала для работы откомпилированного эксперта нет! Для этого в код эксперта добавлен соответствующий код для включения этих индикаторов в исполняемый файл эксперта.

На глобальном уровне добавлены исполняемые файлы индикаторов как ресурсы

//---- Включение индикаторов в код эксперта как ресурсов
#resource "\\Indicators\\WeightOscillator.ex5"
#resource "\\Indicators\\WeightOscillator_HTF.ex5"

В блоке функции OnInit() изменёны строковые пути к используемым как ресурсы индикаторам

//---- получение хендла индикатора WeightOscillator
   InpInd_Handle=iCustom(Symbol(),InpInd_Timeframe,"::Indicators\\WeightOscillator",RSIWeight,RSIPeriod,RSIPrice,MFIWeight,MFIPeriod,MFIVolumeType,
                         WPRWeight,WPRPeriod,DeMarkerWeight,DeMarkerPeriod,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
   if(InpInd_Handle==INVALID_HANDLE)
     {
      Print(" Не удалось получить хендл индикатора WeightOscillator");
      return(INIT_FAILED);
     }

//---- получение хендла индикатора WeightOscillator_HTF для визуализации в тестере стратегий  
   if(MQLInfoInteger(MQL_VISUAL_MODE))
     {
      //---- получение хендла индикатора WeightOscillator_HTF
      int Ind_Handle=iCustom(Symbol(),Period(),"::Indicators\\WeightOscillator_HTF",InpInd_Timeframe,
                             RSIWeight,RSIPeriod,RSIPrice,MFIWeight,MFIPeriod,MFIVolumeType,
                             WPRWeight,WPRPeriod,DeMarkerWeight,DeMarkerPeriod,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
      if(Ind_Handle==INVALID_HANDLE)
        {
         Print(" Не удалось получить хендл индикатора WeightOscillator_HTF");
         return(INIT_FAILED);
        }
     }

Таким образом, откомпилированный исполняемый файл эксперта можно использовать на других торговых терминалах без индикаторов самостоятельно.

Следует учесть, что файл библиотеки TradeAlgorithms.mqh предназначен для использования экспертов у брокеров, предлагающих ненулевой спред и возможность установки Stop Loss и Take Profit одновременно с открытием позиции. Другие варианты этой библиотеки можно скачать по ссылке Trade Algorithms.

При тестах, приведенных ниже, использовались входные параметры эксперта по умолчанию. Stop Loss и Take Profit в тестах не использовались.

Рис. 1. Примеры сделок на графике

Рис. 1. Примеры сделок на графике

Результаты тестирования за 2015 год на EURJPY H6:

Рис. 2. График результатов тестирования

Рис. 2. График результатов тестирования

WeightOscillator_HTF WeightOscillator_HTF

Индикатор WeightOscillator с возможностью изменения таймфрейма индикатора во входных параметрах.

Fractional_Bands Fractional_Bands

Fractional Bands модифицирует ценовые изменения с помощью фрактального броуновского движения, которое принимает во внимание фрактальную размерность.

Fractional_Bands_HTF Fractional_Bands_HTF

Индикатор Fractional_Bands с возможностью изменения таймфрейма индикатора во входных параметрах.

Fractal_Keltner_x5_Cloud Fractal_Keltner_x5_Cloud

Два фрактальных канала Кёлтнера в облачном исполнении.