Стратегия импульсной торговли на основе CMO и WMA


Дата создания: 2023-11-28 16:42:54 Последнее изменение: 2023-11-28 16:42:54
Копировать: 0 Количество просмотров: 661
1
Подписаться
1619
Подписчики

Стратегия импульсной торговли на основе CMO и WMA

Обзор

Стратегия называется динамическая стратегия торговли на основе CMO и WMA. Стратегия использует Chande Momentum Oscillator (CMO) и его взвешенную движущуюся среднюю (WMA) для построения торговых сигналов. Основная идея заключается в том, что CMO делает больше, когда он входит в свою WMA, и пусто, когда он входит в свою WMA.

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

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

Сначала стратегия рассчитывает однодневные изменения цены закрытия abs ((close - close[1]) в качестве исходного момента xMom. Затем вычислить xMom’s Length-day SMA, записанный как xSMA_mom. Затем вычислить Length-day изменение цены xMomLength, то есть close - close[CMO xWMACMO. После того, как CMO будет сглажен с помощью параметра WMA (LengthWMA). Стратегический сигнал будет: когда CMO сверху проходит (внизу проходит) его WMA делает больше (пусто).

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

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

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

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

Можно рассмотреть введение параметров CMO и WMA, оптимизирующих их в зависимости от параметров, чтобы они могли динамически корректироваться; или добавить условия фильтрации, чтобы уменьшить бесполезную сделку. Конечно, снижение волатильности сортов с помощью комбинации также является вариантом.

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

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

  1. Добавление механизмов адаптации параметров CMO. Найти оптимальные параметры в различных волатильных условиях.

  2. Добавление механизма адаптации WMA-параметров. Сглаживание эффекта с изменением волатильности;

  3. Добавление фильтрующих условий, таких как введение индекса волатильности, не приведет к обратному управлению.

  4. Помимо того, что в данном случае используется только один индикатор, в данном случае используются другие индикаторы.

  5. Оптимизация механизма остановки убытков. Установка динамической линии остановки убытков, активное управление потерями на одном колесе.

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

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

Исходный код стратегии
/*backtest
start: 2022-11-21 00:00:00
end: 2023-11-27 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 13/02/2017
//    This indicator plots Chandre Momentum Oscillator and its WMA on the 
//    same chart. This indicator plots the absolute value of CMO.
//    The CMO is closely related to, yet unique from, other momentum oriented 
//    indicators such as Relative Strength Index, Stochastic, Rate-of-Change, 
//    etc. It is most closely related to Welles Wilder?s RSI, yet it differs 
//    in several ways:
//    - It uses data for both up days and down days in the numerator, thereby 
//        directly measuring momentum;
//    - The calculations are applied on unsmoothed data. Therefore, short-term 
//        extreme movements in price are not hidden. Once calculated, smoothing 
//        can be applied to the CMO, if desired;
//    - The scale is bounded between +100 and -100, thereby allowing you to clearly 
//        see changes in net momentum using the 0 level. The bounded scale also allows 
//        you to conveniently compare values across different securities.
////////////////////////////////////////////////////////////
strategy(title="CMO & WMA", shorttitle="CMO & WMA")
Length = input(9, minval=1)
LengthWMA = input(9, minval=1)
reverse = input(false, title="Trade reverse")
hline(0, color=gray, linestyle=line)
xMom = abs(close - close[1])
xSMA_mom = sma(xMom, Length)
xMomLength = close - close[Length]
nRes = 100 * (xMomLength / (xSMA_mom * Length))
xWMACMO = wma(nRes, LengthWMA)
pos = iff(nRes > xWMACMO, 1,
	   iff(nRes <= xWMACMO, -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="CMO")
plot(xWMACMO, color=red, title="WMA")