Momentum-Handelsstrategie auf der Grundlage von CMO und WMA

Schriftsteller:ChaoZhang, Datum: 2023-11-28 16.42:54
Tags:

img

Übersicht

Die Strategie heißt Momentum Trading Strategy Based on CMO und WMA. Sie nutzt den Chande Momentum Oscillator (CMO) und seinen gewichteten gleitenden Durchschnitt (WMA) zur Konstruktion von Handelssignalen.

Strategie Logik

Der Kernindikator dieser Strategie ist der CMO. Der CMO ist eng mit anderen Momentumindikatoren wie dem RSI verknüpft, hat aber auch seine Einzigartigkeit. Der CMO misst direkt die Preisänderungsdynamik. Seine Berechnung basiert auf rohen ungeschliffenen Daten, so dass er extreme kurzfristige Preisänderungen widerspiegelt. Der CMO-Wert liegt zwischen +100 und -100, was es praktisch macht, die absolute Momentumstärke zwischen Wertpapieren zu vergleichen.

Die Strategie berechnet zunächst die eintägige Preisänderung abs ((close - close[1]) als ursprüngliche Dynamik xMom. Danach berechnet sie die SMA von xMom über Längentage, bezeichnet als xSMA_mom. Danach berechnet sie die Preisänderung über Längentage xMomLength, nämlich close - close[Length]. Schließlich wird CMO berechnet als xMomLength geteilt durch xSMA_mom und dann multipliziert mit 100. Diese CMO wird durch einen WMA (Parameter LengthWMA) glättet, um xWMACMO abzuleiten. Das Handelssignal ist lang (kurz) zu gehen, wenn CMO über (unter) seine WMA geht.

Vorteile

Der größte Vorteil dieser Strategie besteht darin, die Dynamikmerkmale innerhalb der Preistrends zu erfassen. Das begrenzte Design von CMO spiegelt die Dynamikveränderungen direkter wider. Im Vergleich zu SMA glättet WMA kurzfristige Geräusche besser aus. Diese Strategie kann also die Einstiegspunkte innerhalb der mittelfristigen bis langfristigen Trends effektiv identifizieren. Darüber hinaus bietet die Kombination von CMO und WMA eine bessere Stabilität als ein einzelner Indikator.

Risiken

Das größte Risiko dieser Strategie ist die hohe Handelsfrequenz, die zu erhöhten Schlupfkosten führt. Sowohl CMO als auch WMA haben kurzfristige Parameter, die zu übermäßigen sinnlosen Whipsaws führen können. Dies ist besonders schwerwiegend, wenn das Handelsfahrzeug große Schwankungen aufweist. Darüber hinaus können sich feste Parameter nicht an veränderte Marktumgebungen anpassen.

Wir können eine adaptive Optimierung der CMO- und WMA-Parameter in Betracht ziehen, die es ihnen ermöglicht, sich dynamisch anzupassen.

Anweisungen zur Verbesserung

Die Strategie kann in folgenden Aspekten verbessert werden:

  1. Hinzufügen eines anpassungsfähigen GMO-Parametermechanismus, um optimale Parameter für verschiedene Volatilitätsregime zu finden;

  2. Hinzufügen eines adaptiven WMA-Parametermechanismus, so dass sich die Glättung entsprechend ändert;

  3. Fügen Sie Filterbedingungen wie Volatilitätsindex hinzu, um bedeutungslose Whipsaws zu kontrollieren;

  4. Überlegungen zur Kombination mit anderen Indikatoren zur Verbesserung der Stabilität;

  5. Optimieren Sie den Stop-Loss-Mechanismus. Setzen Sie eine dynamische Stop-Loss-Linie, um den Einzelverlust aktiv zu kontrollieren.

Schlussfolgerung

Die Strategie realisiert ein einfaches und effektives Trendfolgen basierend auf CMO und WMA. Ihr Vorteil liegt in der klaren Erfassung der Preisdynamikmerkmale. Aber sie hat auch eine gewisse Schwäche in der Gewinnbindungsfähigkeit nach Eröffnung von Positionen. Sowohl Parameter-Tuning als auch Combo können die Stabilität erheblich verbessern. Insgesamt hat diese Strategie viel Raum und Wert für Verbesserungen.


/*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")

Mehr