Торговая стратегия с использованием индикатора конверсии-дивергенции скользящей средней


Дата создания: 2023-09-19 21:16:26 Последнее изменение: 2023-09-19 21:16:26
Копировать: 0 Количество просмотров: 657
1
Подписаться
1617
Подписчики

Обзор

Стратегия основана на среднелинейном преобразовании-распространении показателя ((CMO) для принятия решений о сделке. Абсолютные значения CMO представляют собой степень распространения цены. Стратегия определяет перекуп и перепродажу с помощью среднего значения абсолютных значений CMO за три цикла.

Стратегический принцип

Эта стратегия основана на следующей логике:

  1. Вычисление абсолютных значений индекса CMO в три различных периода
  2. Среднее значение абсолютных значений индекса CMO за три цикла
  3. Если средняя величина выше верхнего предела, то поток потери
  4. Когда среднее значение ниже нижнего порога, смотрите больше и делайте больше.
  5. Индекс CMO вновь достиг нормального уровня

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

Стратегические преимущества

  • Использование индекса CMO для определения перекупленных и перепроданных зон
  • Трехциклическое среднее значение создает гладкую кривую, чтобы избежать ошибочного сигнала
  • Согласно теории CMO, есть веские основания для суждения о перепродаже
  • Настраиваемые параметры, чтобы адаптироваться к изменениям рынка
  • Легко реализуемые стратегии по реверсированию

Стратегические риски

  • Показатели CMO могут дать неверный сигнал
  • Низкие значения параметров требуют постоянного тестирования и оптимизации
  • Продолжающаяся перепродажа в условиях тренда может привести к убыткам

Что делать?

  1. Тенденционные индикаторы помогают избежать обратной торговли
  2. Оптимизация параметров, повышение чувствительности показателя
  3. Использование мобильного стоп-интервью для борьбы с единичными потерями

Направление оптимизации стратегии

Эта стратегия может быть расширена по следующим направлениям:

  1. Увеличение подтверждения показателей объемов сделок, чтобы избежать ложных прорывов в обратном тренде
  2. Интеграция мобильной стратегии по ликвидации убытков и оптимизация управления рисками
  3. Автоматическая оптимизация параметров с использованием методов машинного обучения
  4. Корректировка размеров позиций в сочетании с показателями волатильности
  5. Комбинирование других стратегий, дифференцирование риска и повышение общей доходности

Подвести итог

Эта стратегия использует CMO для определения перекупа и перепродажи для обратной торговли. Благодаря использованию многоциклических средних значений, можно эффективно сгладить кривую и избежать ошибочных сигналов. Сама теория индекса CMO имеет прочную и надежную основу для определения состояния распространения цен.

Исходный код стратегии
/*backtest
start: 2023-09-11 00:00:00
end: 2023-09-14 07:00:00
period: 30m
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////7////////////
//  Copyright by HPotter v1.0 21/02/2017
//    This indicator plots the absolute value of CMO averaged over three 
//    different lengths. This indicator plots a classical-looking oscillator, 
//    which is really an averaged value based on three different periods.
//
// You can change long to short in the Input Settings
// Please, use it only for learning or paper trading. Do not for real trading.
////////////////////////////////////////////////////////////
strategy(title="CMOabsav", shorttitle="CMOabsav")
Length1 = input(5, minval=1)
Length2 = input(10, minval=1)
Length3 = input(20, minval=1)
TopBand = input(58, minval=1)
LowBand = input(5, minval=0)
reverse = input(false, title="Trade reverse")
hline(0, color=green, linestyle=hline.style_dashed)
hline(TopBand, color=purple, linestyle=hline.style_solid)
hline(LowBand, color=red, linestyle=hline.style_solid)
xMom = close - close[1]
xMomabs = abs(close - close[1])
nSum1 = sum(xMom, Length1)
nSumAbs1 = sum(xMomabs, Length1)
nSum2 = sum(xMom, Length2)
nSumAbs2 = sum(xMomabs, Length2)
nSum3 = sum(xMom, Length3)
nSumAbs3 = sum(xMomabs, Length3)
nRes = abs(100 * (nSum1 / nSumAbs1 + nSum2 / nSumAbs2 + nSum3 / nSumAbs3 ) / 3)
pos = iff(nRes > TopBand, 1,
	     iff(nRes < LowBand, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )
plot(nRes, color=blue, title="CMOabsav")