Смотри, как бесплатно скачать роботов
Ищи нас в Twitter!
Ставь лайки и следи за новостями
Интересный скрипт?
Поставь на него ссылку - пусть другие тоже оценят
Понравился скрипт?
Оцени его работу в терминале MetaTrader 5
Советники

Open by iMACD Close by iSAR - эксперт для MetaTrader 5

Просмотров:
1748
Рейтинг:
(13)
Опубликован:
2021.05.02 07:12
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

Торговая стратегия

Советник выполнен по мотивам ветки Requests & Ideas (MQL5 only!)

В момент рождения нового бара проверяется условие на открытие или закрытия позиции. Открытие позиции производится по индикатору iMACD (Moving Average Convergence/Divergence, MACD) и индикатору iSAR (Parabolic SAR, SAR), а закрытие - или при срабатывании Стоп лосс или при срабатывании Тейк профит или по сигналу индикатора iSAR (Parabolic SAR, SAR).

Уточнения:

Сигнал на открытие ограничивается фильтрами по дням недели ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday') - можно запретить поиск сигнала для целого дня недели. Например при выставлении 'Monday' в 'false' поиск торгового сигнала на открытие позиции будет запрещён на протяжении всего понедельника.

Также есть общий фильтр торгового диапазона - время между которым МОЖНО проводить поиск торгового приказа на открытие позиции ('Start Hour'::'Start Minute' - 'End Hour'::'End Minute'). Это общая настройка и она одинаково действует на все дни недели.

Торговые сигналы (блок кода  SearchTradingSignals)

сигнал на открытие BUY: MACD пересекает свою сигнальную линию снизу-вверх и при это iSAR находиться под ценой

//--- Open BUY Signal
   if(main[m_bar_current+1]<signl[m_bar_current+1] && main[m_bar_current]>signl[m_bar_current] && sar[m_bar_current]<rates[m_bar_current].low)

    сигнал на закрытие BUY: iSAR находится над ценой

    //--- Close BUY Signal
       if(sar[m_bar_current]>rates[m_bar_current].high)

    сигналы SELL зеркальные для BUY.

      Open by iMACD Close by iSAR

      Рис. 1. Open by iMACD Close by iSAR


      Особенности:

      • Советник можно оптимизировать по рабочему таймфрейму ('Working timeframe')
      • На баре может быть только одна сделка 'вход в рынок' (это внутренний параметр, он не вынесен во входные параметры и это не имеет отношения к параметру 'Only one positions')
      • Параметр 'Use time control' - временной интервал поиска торговых сигналов от 'Start Hour'::'Start Minute' до 'End Hour'::'End Minute'. Временной диапазон можно задавать как внутри дня, так и с переходом через сутки. Параметр нельзя отключить, он работает всегда
      • Параметр 'Pips Or Points: ' задаёт стандарт расчёта Стоп лосс, Тейк профит и Трейлинга

      Теперь подробнее по каждой группе параметров:

      Trading settings:

      'Working timeframe' - рабочий таймфрейм. Таймфрейм на котором создаются индикаторы и на котором ищется новый бар.

      'Pips Or Points: ' задаёт стандарт расчёта Стоп лосс, Тейк профит, Трейлинга и Отступа. Может быть 'Pips (1.00045-1.00055=1 pips)' или 'Points (1.00045-1.00055=10 points)'. Любой из параметров ('Stop Loss', 'Take Profit', 'Trailing Stop') можно отключить - для этого выбранный параметр установите в '0.0'.

      Интервал между трейлингом и интервал между поиском сигналов задаются в 'Trailing, in seconds' и 'Search signals, in seconds' соответственно. Для этих двух параметров общее правило: если интервал задать меньше, чем "10" - это означает работу ТОЛЬКО в момент рождения нового бара, если же интервал задать ровно или более "10" - это означает работу каждые "N" секунд.

      Как работает трейлинг показано в картинках в коде TrailingStop.

      Position size management (lot calculation)

      Лот может быть как постоянный ('Money management' установить в 'Constant lot' и задать размер лота в 'The value for "Money management"') и динамический - в процентах риска на сделку ('Money management' установить в 'Risk in percent for a deal' и задать процент риска в  'The value for "Money management"'). Также можно задать постоянный лот равный минимальному лоту - 'Money management' установить в 'Lots Min'.

      Time control:

      В данном разделе задаётся временной диапазон для поиска торговых сигналов. Временной диапазон включается через 'Use time control' и задаёт временной интервал поиска сигналов от 'Start Hour'::'Start Minute' до 'End Hour'::'End Minute'. Временной диапазон можно задавать как внутри дня, так и с переходом через сутки. Не влияет на трейлинг. Включён всегда

      MACD и SAR:

      Параметры индикаторов MACD и SAR.

      Trade by days:

      Разрешение (запрет) торговли по дням недели.

      Additional features:

      Флаг 'Positions: Only one' выставленный в 'true' разрешает советнику иметь в рынке не более одной позиции.

      ВНИМАНИЕ: 'Positions: Only one' выставленный в 'true' не отменяет действие 'Positions: Close opposite' выставленный в 'true'! Другими словами: сначала будет закрыта противоположная позиция(позиции)

      Additional features

      Интересный флаг 'Positions: Close opposite' - при выставлении его в 'true' перед открытием позиции гарантированно удаляет противоположные позиции. 'Print log' выводит расширенное логирование всех операций. Параметр 'Freeze and StopsLevels Coefficient' задаёт коэффициент для уровней стопов и заморозки для случаев, когда эти уровни для символа равны нулю. Рекомендуется применять значение '3'.

      Bid Ask Strength Histogram Bid Ask Strength Histogram

      Берет все тики на свече. Вычисляет количество bid на каждое значение цены. Вычисляет количество ask на каждое значение цены. Выбирает из них самые большие значения. Сравнивает их и отображает на гистограмме.

      Line through two fractals 2 Line through two fractals 2

      Индикатор строит трендовые линии по двум последним фракталам.

      MA horizontal line MA horizontal line

      Горизонтальная линия по текущей цене индикатора iMA (Moving Average, MA)

      SAR Color Filling SAR Color Filling

      Индикатор iSAR (Parabolic SAR, SAR) с заливкой областей между индикатором и ценой