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

Three Typical Candles Martingale - эксперт для MetaTrader 5

Просмотров:
2075
Рейтинг:
(16)
Опубликован:
2021.01.25 14:17
Обновлен:
2021.01.27 09:49
Нужен робот или индикатор на основе этого кода? Закажите его на бирже фрилансеров Перейти на биржу

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

Одна из версий Three Typical Candles - переписан торговый движок, добавлен мартингейл.

В советнике нет ни Стоп лосс, ни Тейк профит, ни Трейлинга.

Советник рассчитывает Typical цены для баров #1, #2 и #3 (или #0, #1 и #2) на заданном таймфрейме 'Working timeframe'. Советник держит серию позиций одного направления. При получении сигнала, если есть позиции противоположные сигналу, эти противоположные позиции будут закрыты.

Мартингейл

Стартовый размер позиции задаётся через количество минимальных лотов (параметр 'Lots (number of minimum lots)'). Если перед открытием позиции текущая прибыль отрицательная, объём последней отрытой позиции умножается на коэффициент 'Coefficient of the last lot (at losses)'. Позиции могут быть закрыты если текущий убыток достиг или превысил 'Max loss' или если текущая прибыль достигла 'Min profit'.

Торговые сигналы:

Блок торговых сигналов (расчет Typical цены для трех баров)

   double typical_3=(rates[m_bar_current+2].high+rates[m_bar_current+2].low+rates[m_bar_current+2].close)/3.0;
   double typical_2=(rates[m_bar_current+1].high+rates[m_bar_current+1].low+rates[m_bar_current+1].close)/3.0;
   double typical_1=(rates[m_bar_current].high+rates[m_bar_current].low+rates[m_bar_current].close)/3.0;
//--- BUY signal
   if(typical_3<typical_2 && typical_2<typical_1)
     {
      ArrayResize(SPosition,size_need_position+1);
      SPosition[size_need_position].pos_type=POSITION_TYPE_BUY;
      if(InpPrintLog)
         Print(__FILE__," ",__FUNCTION__,", OK: ","Signal BUY");
      return(true);
     }
//--- SELL signal
   if(typical_3>typical_2 && typical_2>typical_1)
     {
      ArrayResize(SPosition,size_need_position+1);
      SPosition[size_need_position].pos_type=POSITION_TYPE_SELL;
      if(InpPrintLog)
         Print(__FILE__," ",__FUNCTION__,", OK: ","Signal SELL");
      return(true);
     }


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

  • Советник можно оптимизировать по рабочему таймфрейму ('Working timeframe')
  • На баре может быть только одна сделка 'вход в рынок' (это внутренний параметр, он не вынесен во входные параметры и это не имеет отношения к параметру 'Only one positions')
  • При работе в режиме 'внутри бара' ('Search signals, in seconds' больше или равно '10') текущий бар - бар #0, при работе в режиме 'только в момент рождения нового бара' ('Search signals, in seconds' меньше, чем '10') текущий бар - бар #1
  • Параметр 'Use time control' - временной интервал поиска торговых сигналов от 'Start Hour'::'Start Minute' до 'End Hour'::'End Minute'. Временной диапазон можно задавать как внутри дня, так и с переходом через сутки

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

Trading settings:

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

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

Position size management (lot calculation)

Расчет лота описан выше, в шапке

Additional features:

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

Bollinger Bands Fills Color N bars Bollinger Bands Fills Color N bars

Индикатор iBands (Bollinger Bands) с применением стиля рисования DRAW_FILLING. Также при помощи цвета указывает наличие тренда.

iDEMA Intersection iDEMA Intersection

Стратегия на пересечении двух индикаторов iDEMA (Double Exponential Moving Average, DEMA)

Two iRSI in one subwindow Two iRSI in one subwindow

Два индикатора iRSI (Relative Strength Index, RSI) в одном подокне

Min Max for N Bars Martingale 2 Min Max for N Bars Martingale 2

Поиск Минимальных и Максимальных цен на заданном количестве баров. Выставление отложенных ордеров