Советники: CCI and Martin

 

CCI and Martin:

Советник использует значение индикатора iCCI (Commodity Channel Index, CCI) на последних четырех барах и цены Open и Close на последних трех барах. При этом сигнал на открытие позиции проверяется, если до закрытия текущего бара остается менее 20 секунд (отмечу, что такое решение встречается очень редко) и если на данный момент нет ни одной позиции открытой данным советником.


Условия открытия позиций

//--- BUY
   if(cci[1]<5 && cci[2]<cci[3] && cci[1]<cci[2] && cci[0]>cci[1] && 
      Open[2]>Close[2] && Open[1]>Close[1] && Open[0]<Close[0] && Open[1]<Close[0])

//--- SELL
   if(cci[1]>-5 && cci[2]>cci[3] && cci[1]>cci[2] && cci[0]<cci[1] && 
      Open[2]<Close[2] && Open[1]<Close[1] && Open[0]>Close[0] && Open[1]>Close[0])

где:

  • cci[] - массив значений индикатора CCI;
  • Open[] и Close[] - массивы цен открытия и закрытия соответственно.


Основные торговые настройки

  • Lots - объем позиций постоянный (если отключены мартингейл и пошаговое увеличение объема) или же это начальный лот для мартингейла и пошагового увеличения объема;
  • Stop Loss - Стоп Лосс ("0.0" → выключение параметра);
  • Take Profit - Тейк Профит ("0.0" → выключение параметра);
  • Trailing Stop - трейлинг ("0.0" → выключение параметра);
  • Trailing Step - шаг трейлинга.


Настройки индикатора CCI

  • CCI: averaging period - период усреднения;
  • CCI: type of price - тип цены, на основании которой рассчитывается индикатор.


Объем позиций

Может задаваться одним из способов:

  • постоянный лот (Lots);
  • мартингейл (Use martingale);
  • пошаговое увеличение объема (Use step by step).
Внимание: не допускается одновременное использование мартингейл и пошаговое увеличение объема! Необходимо выбрать какой-то один способ или отключать оба.

Подробнее о двух последних способах задания объема позиций:


Мартингейл

Применяется только в случае наличия в торговой истории убыточной позиции (или позиций). Основные настройки:

  • Use martingale - флаг использовать Мартингейл;
  • Martingale coefficient - коэффициент увеличения объема позиции;
  • Ordinal number of the losing trade - порядковый номер убыточной сделки, начиная с которой будет производится увеличение объема;
  • Maximum number of multiplications - максимальное количество увеличений объема позиций подряд.


Пошаговое увеличение объема

Может применяться или к серии убыточных или к серии прибыльных позиций. Основные настройки:

  • Use step by step - флаг использовать пошаговое увеличение лота;
  • Step lots - шаг увеличения объема позиции;
  • Maximum lots - максимальный объем который можно использовать при пошаговом увеличении лота;
  • Use step after... - применять пошаговое увеличение объема после:
    • ... losing - убыточной сделки;
    • ... profitable - прибыльной сделки.

При использовании мартингейла кроме параметров мартингейла также важно подобрать параметры Stop Loss, Take Profit, Trailing Stop и Trailing Step.

Параметры по-умолчанию, пара EURUSD M15, начальный депозит $1000:

CCI and Martin


Автор: Vladimir Karputov

 
При этом сигнал на открытие позиции проверяется, если до закрытия текущего бара остается менее 20 секунд (отмечу, что такое решение встречается очень редко)
А где это в коде можно увидеть?
 
Igor Nistor:
А где это в коде можно увидеть?

Вот место, где определятся количество секунд:

//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
//---
   if(!IsPositionExists())
     {
      MqlDateTime STimeCurrent;
      TimeToStruct(TimeCurrent(),STimeCurrent);
      if(STimeCurrent.sec<40)
         return;
      //---
      double cci[];
      ArraySetAsSeries(cci,true);
      MqlRates rates[];
      ArraySetAsSeries(rates,true);
...

если секунд меньше 40, то просто выходим.


Данное изменение включено в версии 1.002 (нужно дождаться перепубликации).

 
Спасибо!
 

Forum on trading, automated trading systems and testing trading strategies

Experts: CCI and Martin

Victor Volovin, 2018.12.09 19:15

Привет. Установил возможным количеством позиций увеличения объема подряд равным 1 . Советник увеличивает три раза.



В чем может быть причина?


 

Forum on trading, automated trading systems and testing trading strategies

Experts: CCI and Martin

Victor Volovin, 2018.12.09 19:50

Не работает увеличение лота после убыточной сделки



 
Victor Volovin:

Так может стоит включить блок "Use martingale" чтобы заработало?

 
Vladimir Karputov:

Так может стоит включить блок "Use martingale" чтобы заработало?

На скрине видно, что мартингейл отключен.

 
Victor Volovin:

На скрине видно, что мартингейл отключен.

Хорошо, попробую второй раз:

 

Внимание: не допускается одновременное использование мартингейл и пошаговое увеличение объема! Необходимо выбрать какой-то один способ или отключать оба.

Это цитата из описания советника. Поэтому я отключил мартингейл и включил пошаговое увеличение объема. Но увеличение объема не происходит.

 

thank you for sharing, I really like this code and I am very grateful that you can add the MA in the 1-day time frame which will be a trend step and each open position is in line with the 1-day MA trend. thank you i really look forward to your reply

Причина обращения: