Gleitender Durchschnitt – Wendepunkt-Crossover-Handelsstrategie


Erstellungsdatum: 2024-01-29 11:15:42 zuletzt geändert: 2024-01-29 11:15:42
Kopie: 8 Klicks: 585
1
konzentrieren Sie sich auf
1617
Anhänger

Gleitender Durchschnitt – Wendepunkt-Crossover-Handelsstrategie

Überblick

Die Moving Average Turning Point Cross Trading Strategie ist eine klassische Technische Indikatorstrategie. Die Kernidee dieser Strategie ist die Erzeugung von Kauf- und Verkaufssignalen in Kombination mit Moving Averages aus verschiedenen Perioden und die weitere Optimierung des Handels exits mit Moving Average Turning Points. Diese Strategie ist für verschiedene Zeiträume und Sorten geeignet und kann zu stabilen Erträgen führen.

Strategieprinzip

Die Strategie verwendet hauptsächlich zwei Moving Averages, einen kürzeren als Schnelllinie und einen längeren als Langlinie. Sie erzeugt ein Kaufsignal, wenn die Schnelllinie die Langlinie von unten durchbricht; sie erzeugt ein Verkaufsignal, wenn die Schnelllinie von oben nach unten die Langlinie durchbricht. Dies ist der Handelssignal-Erzeugungsmechanismus der klassischen Moving Average Crossover-Strategie.

Weiterhin nutzt die Strategie die Umkehrpunkte des beweglichen Durchschnitts, um den Handel zu beenden. Wenn die Schnelllinie von oben nach unten wechselt, verlassen die Multi-Singles; wenn die Schnelllinie von unten nach oben wechselt, verlassen die Leer-Singles. Die Umkehrpunkte des beweglichen Durchschnitts können die kurzfristigen Wendepunkte des Marktes erfassen, was dazu beiträgt, die Strategie rechtzeitig zu stoppen oder zu stoppen, was die Gesamtergebnisrate verbessert.

Analyse der Stärken

Die Moving Average-Wendepunkt-Cross-Trading-Strategie hat folgende Vorteile:

  1. Die Strategie verwendet nur zwei Indikatoren: den Moving Average und den ROC-Indikator. Die Implementierung des Codes ist unkompliziert.

  2. Der Moving Average selbst weist eine gewisse Verzögerung und einen schleifen Preis-Trend auf, was einen Teil des Rausches filtern kann, um zu vermeiden, dass zu viele unwirksame Geschäfte in einem wackligen Trend entstehen.

  3. Einerseits kann man die Einseitigkeit des Verlustes effektiv kontrollieren. Die Nutzung von Wendepunkten im Moving Average kann dazu beitragen, die Einseitigkeit des Verlustes zu reduzieren.

  4. Breite Anwendbarkeit: Das Prinzip der Strategie ist einfach und kann für verschiedene Sorten und verschiedene Handelszeiträume, wie z. B. Tages- und Stundenzeilen, angewendet werden. Die Optimierung der Parameter ist groß.

  5. Ertragsstabilität. Im Gegensatz zu Strategien, die auf die Verfolgung von Markt-Hotspots abzielen, ist diese Strategie eher auf Risikokontrolle ausgerichtet und strebt keine überhöhten Erträge an, kann aber stabile positive Erträge erzielen.

Risikoanalyse

Es gibt auch einige Risiken bei der Kreuzung von Moving Average-Wendepunkten, die sich auf folgende Aspekte konzentrieren:

  1. Moving-Average-Verzögerung. Wenn es schnell geht, kann das Kreuzungssignal des Moving-Averages etwas verzögert werden und die beste Einstiegszeit verpasst werden.

  2. Die Strategie spielt rechtzeitig, aber die Eintrittssignale sind langsam. Dies führt zu teilweise übermäßigen Leerpositionszeiten. Während der Leerpositionen werden gewisse Gewinnchancen verpasst.

  3. Die Optimierung von Parametern ist schwierig. Die Wahl von Parametern wie der Länge des Moving Averages und der ROC-Zyklus hat einen großen Einfluss auf die Strategie. Die Optimierung von Parametern erfordert jedoch eine große Anzahl von historischen Daten, die zurückgetestet werden müssen.

  4. Bei starken Erschütterungen ist die Wirkung schwach. Bei starken Erschütterungen erzeugt der Moving Average mehrere ungültige Kreuzungen, was die Strategie beeinträchtigt.

Optimierungsrichtung

Die Strategie kann in folgenden Punkten weiter optimiert werden:

  1. In Kombination mit einem Trendwellen-Indikator. Hinzu kommen Indikatoren wie ADX, ATR und andere, um den Trendstatus zu beurteilen. Die Strategie wird bei fehlender Tendenz durch Abschwächung geschlossen, um einen ungültigen Handel zu vermeiden.

  2. Mehrfache Zeitfenster kombiniert. Beurteilen Sie die Richtung des Haupttrends in den höheren Zeitfenstern und vermeiden Sie einen Gegenhandel.

  3. Optimierung der Anpassungsfähigkeit von Parametern. So können Parameter wie die Länge der gleitenden Durchschnitte an die Echtzeit-Marktfluktuation angepasst werden, um die Robustheit der Parameter zu verbessern.

  4. Einführung in die Mustererkennung. An MA-Kreuzungspunkten erkennt das Muster der Antennen, um falsche Signale zu filtern.

Zusammenfassen

Die Moving Average Tipping Point Crossover Trading Strategie ist insgesamt eine Strategie mit einem ausgewogenen Risiko-Gewinn-Verhältnis. Sie hat die Vorteile der einfachen Umsetzung, der Anti-Kontinuitätsverluste, der Ertragsstabilität und anderer Vorteile, aber auch die Probleme der Moving Average-Rückstandsfähigkeit, der zu langen Leerlaufzeit usw. Durch die Optimierung der Parameter, die Einführung von Trendurteilen und der Erkennung von Mustern kann die Wirksamkeit der Strategie weiter verbessert werden.

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

//@version=4
//study(title="MA Crossover Strategy", overlay = true)
strategy("MA Crossover Strategy with MA Turning Point Exits", overlay=true)
src = input(close, title="Source")

price = request.security(syminfo.tickerid, timeframe.period, src)
ma1 = input(25, title="1st MA Length")
type1 = input("SMA", "1st MA Type", options=["SMA", "EMA"])

ma2 = input(50, title="2nd MA Length")
type2 = input("SMA", "2nd MA Type", options=["SMA", "EMA"])

price1 = if (type1 == "SMA")
    sma(price, ma1)
else
    ema(price, ma1)
    
price2 = if (type2 == "SMA")
    sma(price, ma2)
else
    ema(price, ma2)


//plot(series=price, style=line,  title="Price", color=black, linewidth=1, transp=0)
plot(series=price1, style=line,  title="1st MA", color=blue, linewidth=2, transp=0)
plot(series=price2, style=line, title="2nd MA", color=green, linewidth=2, transp=0)


longCondition = crossover(price1, price2)
if (longCondition)
    strategy.entry("Long", strategy.long)

shortCondition = crossunder(price1, price2)
if (shortCondition)
    strategy.entry("Short", strategy.short)

lookback1 = input(1, "Lookback 1")
roc1 = roc(price1, lookback1)

ma1up = false
ma1down = false
ma2up = false
ma2down = false

ma1up := nz(ma1up[1])
ma1down := nz(ma1down[1])
ma2up := nz(ma2up[1])
ma2down := nz(ma2down[1])

trendStrength1 = input(2, title="Minimum slope magnitude * 100", type=float) * 0.01

if crossover(roc1, trendStrength1)
    ma1up := true
    ma1down := false
    
if crossunder(roc1, -trendStrength1) 
    ma1up := false
    ma1down := true

shortexitCondition = ma1up and ma1down[1]
if (shortexitCondition)
    strategy.close("Short")

longexitCondition = ma1down and ma1up[1]
if (longexitCondition)
    strategy.close("Long")