Ставь лайки и следи за новостями
Поставь на него ссылку - пусть другие тоже оценят
Оцени его работу в терминале MetaTrader 5
Exp_Fractal_WeightOscillator - эксперт для MetaTrader 5
- Просмотров:
- 2271
- Рейтинг:
- Опубликован:
- 2017.01.23 16:23
- Обновлен:
- 2023.03.16 17:25
- Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу
Реальный автор: Хлыстов Владимир
Самый простой советник по взвешенному осциллятору Fractal_WeightOscillator. Продаем при пересечении сверху вниз уровня перекупленности осциллятора, покупаем при пересечении снизу вверх уровня перепроданности осциллятора. Сигнал на совершение сделки формируется в момент закрытия бара, если произошло пересечение уровня.
Индикатор Fractal_WeightOscillator_HTF в эксперте предназначен только для более удобной визуализации трендов в тестере стратегий, и в других режимах он не работает.
Для корректной компиляции советника необходимо наличие откомпилированных файлов индикаторов Fractal_WeightOscillator.ex5 и Fractal_WeightOscillator_HTF.ex5 в папке <каталог_данных_терминала>\MQL5\Indicators.
После компиляции файл эксперта Exp_Fractal_WeightOscillator.ex5 содержит индикаторы Fractal_WeightOscillator.ex5 и Fractal_WeightOscillator_HTF.ex5 в себе как ресурсы, и поэтому дальнейшей необходимости их наличия в папке терминала для работы откомпилированного эксперта нет! Для этого в код эксперта добавлен соответствующий код для включения этих индикаторов в исполняемый файл эксперта.
На глобальном уровне добавлены исполняемые файлы индикаторов как ресурсы
#resource "\\Indicators\\Fractal_WeightOscillator.ex5"
#resource "\\Indicators\\Fractal_WeightOscillator_HTF.ex5"
В блоке функции OnInit() изменёны строковые пути к используемым как ресурсы индикаторам
InpInd_Handle=iCustom(Symbol(),InpInd_Timeframe,"::Indicators\\Fractal_WeightOscillator",
e_period,normal_speed,RSIWeight,RSIPrice,MFIWeight,MFIPrice,MFIVolumeType,
WPRWeight,DeMarkerWeight,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
if(InpInd_Handle==INVALID_HANDLE)
{
Print(" Не удалось получить хендл индикатора Fractal_WeightOscillator");
return(INIT_FAILED);
}
//---- получение хендла индикатора Fractal_WeightOscillator_HTF для визуализации в тестере стратегий
if(MQLInfoInteger(MQL_VISUAL_MODE))
{
//---- получение хендла индикатора Fractal_WeightOscillator_HTF
int Ind_Handle=iCustom(Symbol(),Period(),"::Indicators\\Fractal_WeightOscillator_HTF",InpInd_Timeframe,
e_period,normal_speed,RSIWeight,RSIPrice,MFIWeight,MFIPrice,MFIVolumeType,
WPRWeight,DeMarkerWeight,bMA_Method,bLength,bPhase,HighLevel,LowLevel);
if(Ind_Handle==INVALID_HANDLE)
{
Print(" Не удалось получить хендл индикатора Fractal_WeightOscillator_HTF");
return(INIT_FAILED);
}
}
Таким образом, откомпилированный исполняемый файл эксперта можно использовать на других торговых терминалах без индикаторов самостоятельно.
Следует учесть, что файл библиотеки TradeAlgorithms.mqh предназначен для использования экспертов у брокеров, предлагающих ненулевой спред и возможность установки Stop Loss и Take Profit одновременно с открытием позиции. Другие варианты этой библиотеки можно скачать по ссылке Trade Algorithms.
При тестах, приведенных ниже, использовались входные параметры эксперта по умолчанию. Stop Loss и Take Profit в тестах не использовались.
Рис. 1. Примеры сделок на графике
Результаты тестирования за 2015 год на GBPUSD H6:
Рис. 2. График результатов тестирования
Торговля только на новом баре. Правила простые: если MAIN_LINE MACD (1) > MAIN_LINE MACD (2) -> Buy, если MAIN_LINE MACD (1) < MAIN_LINE MACD (2) -> Sell". Когда поступает сигнал, противоположный открытым позициям - закрываем все позиции.
MARE5.1Советник MARE5.1 очень прост и использует значения двух Moving Average (SMA) по Close 0, 2 и 5-го баров. Советник настроен на работу на таймфрейме M1.
Индикатор NRTR_Gator с возможностью изменения таймфрейма индикатора во входных параметрах.
TDI-2_Cloud_HTFИндикатор TDI-2 с возможностью изменения таймфрейма индикатора во входных параметрах.