Momentum-Reversal-Strategie


Erstellungsdatum: 2023-12-12 17:25:08 zuletzt geändert: 2023-12-12 17:25:08
Kopie: 1 Klicks: 639
1
konzentrieren Sie sich auf
1621
Anhänger

Momentum-Reversal-Strategie

Überblick

Diese Strategie berechnet die Dynamik der Preise, um zu beurteilen, ob ein Preisbewegungs-Trend umgekehrt ist, um die Chance auf eine Preisumkehr zu erfassen. Wenn sich ein Preisanstieg verlangsamt oder ein Abwärtstrend verlangsamt, was darauf hindeutet, dass eine Preisbewegung umgekehrt ist, wird die Strategie zu einem Über- oder Einbruch positioniert.

Strategieprinzip

Die Strategie basiert hauptsächlich auf der Berechnung von Dynamikindikatoren. Die Dynamikindikatoren spiegeln die Geschwindigkeit und Intensität der Preisänderungen wider. In der Strategie werden die beiden Dynamikindikatoren MOM und MOM1 berechnet.

MOM-Rechnung:

MOM = Schlusskurs am Tag - Schlusskurs vor N Tagen

MOM1 berechnet sich aus:

MOM1 = MOM heute - MOM gestern

Wenn MOM > 0 und MOM1 < 0 ist, bedeutet dies eine Verlangsamung des Aufwärtstrends und ein Umkehrsignal. Wenn MOM < 0 und MOM1 > 0 ist, bedeutet dies eine Verlangsamung des Abwärtstrends und ein Umkehrsignal.

Strategische Vorteile

  1. Der Preiswechsel ist zu erfassen und rechtzeitig in den Markt zu gelangen.
  2. “Wir müssen uns zurückziehen, um nicht nach oben und unten zu jagen”.
  3. Automatische Stop-Loss und Risikominderung

Strategisches Risiko

  1. Bei Preisschwankungen kann es zu häufigen Börsenöffnungen und -schließungen kommen.
  2. Die Parameter sind nicht zeitgerecht eingestellt und können den Preiswendepunkt nicht genau bestimmen
  3. Marktstörungen führen zu falschen Signalen

Die wichtigsten Risikominderungsmaßnahmen:

  1. Optimierung der Parameter zur Verbesserung der Genauigkeit
  2. Filtersignale in Kombination mit anderen Indikatoren
  3. Einfluss von Menschen, um Schäden bei Marktunregelmäßigkeiten zu vermeiden

Richtung der Strategieoptimierung

  1. Optimierung der Parameter für die Dynamometer, um die Umkehrzeit besser zu erfassen
  2. Filterung von Kennzahlen wie Zunahme des Umsatzes, um falsche Signale zu vermeiden
  3. Ein Stop-Loss-Strategie, um die Einzelschäden zu reduzieren

Zusammenfassen

Diese Strategie berechnet die Preisbewegungsindikatoren, um zu beurteilen, ob die Preisbewegung sich umkehrt. Die Rückmeldung zeigt, dass die Strategie insgesamt reibungslos funktioniert und die Preisumkehrpunkte effektiv erfasst werden. Durch die Optimierung der Parameter-Einstellungen und die Erhöhung der Signalfilterung können die Strategie-Stabilität und die Ertragsrate weiter verbessert werden.

Strategiequellcode
/*backtest
start: 2023-11-11 00:00:00
end: 2023-12-11 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Momentum - Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, commission_type = strategy.commission.percent, commission_value = 0.2 )

i_len           =       input(defval = 12,      title = "Length",       minval = 1)
i_src           =       input(defval = close,   title = "Source")
i_percent       =       input(defval = true,    title = "Percent?")
i_mom           =       input(defval = "MOM2",  title = "MOM Choice",   options = ["MOM1", "MOM2"])

momentum(seria, length, percent) =>
	_mom        =       percent ? ( (seria / seria[length]) - 1) * 100 : seria - seria[length]
	_mom

mom0        =       momentum(i_src, i_len, i_percent)
mom1        =       momentum(mom0, 1, i_percent)
mom2        =       momentum(i_src, 1, i_percent)

momX        =       mom1

if i_mom == "MOM2"
    momX    :=     mom2

if (mom0 > 0 and momX > 0)
    strategy.entry("MomLE", strategy.long, stop = high + syminfo.mintick, comment = "MomLE")
else
	strategy.cancel("MomLE")
if (mom0 < 0 and momX < 0)
	strategy.entry("MomSE", strategy.short, stop = low - syminfo.mintick, comment = "MomSE")
else
	strategy.cancel("MomSE")

plot(mom0, color = #0000FF, title = "MOM")
plot(mom1, color = #00FF00, title = "MOM1", display = display.none)
plot(mom2, color = #00FF00, title = "MOM2")