Суммируем сигналы от Moving Average с разных таймфреймов

 

Общий принцип

Текущая цена выше MA(xxx) - сигнал BUY

Текущая цена ниже MA(xxx) - сигнал SELL

В зависимости от результирующего сигнала (суммирование сигналов с разных таймфреймов) будет различаться ОБЪЁМ позиции.

...

 
Vladimir Karputov:

Общий принцип

Текущая цена выше MA(xxx) - сигнал BUY

Текущая цена ниже MA(xxx) - сигнал SELL

В зависимости от результирующего сигнала (суммирование сигналов с разных таймфреймов) будет различаться ОБЪЁМ позиции.

...

Ещё можно вес для каждого ТФ прикрутить. Вообще, данная идея вписывается в формат СБ-ного класса CExpertSignal.
 
Dennis Kirichenko:
Ещё можно вес для каждого ТФ прикрутить. Вообще, данная идея вписывается в формат СБ-ного класса CExpertSignal.

Именно так я и хотел. Но пока ещё не решил, как из этого выкрутить размер лота.

 
Vladimir Karputov:


А зачем такие сложности, с разных ТФ?

Допустим на 1 мин используем МА 10, на 5 мин ТФ тоже МА 10. Тогда МА 50 на 1 мин будет эквивалентно (и даже лучше) МА 10 на 5 мин. И т.д.

 
Vladimir Karputov:

Именно так я и хотел. Но пока ещё не решил, как из этого выкрутить размер лота.


А причем сигнал и размер лота?

 
Alexey Volchanskiy:

А причем сигнал и размер лота?


Не сигнал, а его суммарная сила:

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Суммируем сигналы от Moving Average с разных таймфреймов

Vladimir Karputov, 2017.07.28 14:34

Общий принцип

Текущая цена выше MA(xxx) - сигнал BUY

Текущая цена ниже MA(xxx) - сигнал SELL

В зависимости от результирующего сигнала (суммирование сигналов с разных таймфреймов) будет различаться ОБЪЁМ позиции.

...


 
Vladimir Karputov:

Не сигнал, а его суммарная сила:



ясно, пропустил этот момент

 

Интересная идея, было бы опыта больше и времени, реализовал бы. Если добавить веса к каждому таймфрейму ( чем больше таймфрейм, тем больше вес), нормализовать это, и далее от суммы совокупности всех сигналов, если все подтверждаются и если МА плавно увеличивается, значит, скорее всего, тренд будет длинный, размер лота максимальный в заданных диапазонах и пропорционально его уменьшать при других условиях.

 

Думаю использовать модуль сигналов SignalMAAboveBelow - самые простые сигналы: цена выше или ниже Moving Average. Если цена Moving Average - сигнал "BUY", если цена ниже индикатора Moving Average - сигнал "SELL". Также есть параметр "Reverse" - когда можно задать реверс сигналов, то есть если цена выше - это будет "SELL", а если цена ниже - это будет "BUY".



 

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

//+------------------------------------------------------------------+
//| Constructor                                                      |
//+------------------------------------------------------------------+
CSignalMA::CSignalMA(void) : m_reverse(false),
                             m_ma_period(12),
                             m_ma_shift(0),
                             m_ma_method(MODE_SMA),
                             m_ma_applied(PRICE_CLOSE),
                             m_pattern_0(80),
                             m_last_loss_price(0.0)
  {
//--- initialization of protected data
   m_used_series=USE_SERIES_OPEN+USE_SERIES_HIGH+USE_SERIES_LOW+USE_SERIES_CLOSE;
  }
 
Andy:

У Вас реверс включен при значении false в настройках, а не наоборот.


"Реверс" == обратное. То есть реверс ВСЕГДА будет противоположное.