Strategie zur Trendfolgeregelung mit gleitendem Durchschnitt


Erstellungsdatum: 2023-11-02 16:58:23 zuletzt geändert: 2023-11-02 16:58:23
Kopie: 0 Klicks: 612
1
konzentrieren Sie sich auf
1617
Anhänger

Strategie zur Trendfolgeregelung mit gleitendem Durchschnitt

Überblick

Die Moving Average Trend Tracking Strategie nutzt eine Kombination aus einfachen und schnellen Moving Averages, um die Richtung eines Markttrends zu bestimmen und somit ein Handelssignal zu erzeugen. Die Strategie wird dynamisch und rückgängig optimiert und bietet ein Echtzeit-Handelssignal, um Trendänderungen zu erfassen.

Strategieprinzip

Die Strategie verwendet die SMA-Funktion, um einen einfachen Moving Average SMA mit einer Länge von 50 Zyklen zu berechnen, sowie einen schnellen Moving Average fsma. Die Berechnung von fsma erfolgt auf der Grundlage von SMA plus der n-Zyklen-Standarddifferenz von price, die 6 mal größer ist.

Die Strategie verwendet die beiden Boolean-Variablen long und short, um die Über- und Unterbrechung zu erfassen. Long wird als 1 eingestellt, wenn der Preis schma und fsma überschreitet; Long wird als 1 eingestellt, wenn der Preis untergeht. Die Short-Variablen verwenden eine ähnliche Logik, um die Unterbrechung zu behandeln.

Die Strategie verwendet die Trendvariablen, um die Trendentscheidung aufzuzeichnen. Wenn der Preis höher als fsma und sma ist, ist der Trend 1 und zeigt einen Aufwärtstrend an. Wenn der Preis niedriger als fsma und sma ist, ist der Trend 1 und zeigt einen Abwärtstrend.

Das ist der Trend, der in Echtzeit zu einem langen und kurzen Handelsignal führt. Wenn der Trend von unten nach oben wechselt, macht man mehr, wenn der Preis über fsma liegt; wenn der Trend von oben nach unten wechselt, wenn der Preis unter sma liegt, macht man eine Lücke.

Der Strategie-Synthesis berücksichtigt die Methoden zur Trendschätzung und zum Durchbruch von Trades, um die Handelschancen, die sich aus einer Trendwende ergeben, effektiv zu erfassen.

Strategische Vorteile

  1. Mit einem Double-Confirmation-Modell, das zwei Moving Averages gleichzeitig erfasst, können falsche Durchbrüche wirksam gefiltert werden.

  2. In Kombination mit Trendbeurteilung und Durchbruchshandel können Chancen an Trendwendepunkten erfasst werden.

  3. Rückführungslos getestet und optimiert, alle Handelssignale werden in Echtzeit erzeugt, keine Kurven passen.

  4. Die Strategie ist klar und einfach zu verstehen und zu ändern.

  5. Die Parameter für die visuelle Konfiguration, die Länge der Zeitspanne, die Multiplikation usw. können an den Markt angepasst werden.

Strategisches Risiko

  1. Eine binäre Einheitsstrategie kann zu häufigen Transaktionen und umgekehrten Verlusten führen.

  2. Der Moving Average selbst ist von der Lagaritätswirkung betroffen und kann die Trendwende verpassen.

  3. Es fehlt ein Stop-Loss-Mechanismus, der einzelne Verluste nicht kontrollieren kann.

  4. Unpassende Parameter können zu häufigen oder zu verzögerten Transaktionen führen.

  5. Für Risiken 1 und 2 kann der Durchschnittszyklus entsprechend verlängert und ein Rücknahme-Stopp hinzugefügt werden.

  6. Für Risiken 3 kann ein Prozentsatzstop oder ein einmaliger Stop eingestellt werden.

  7. Für Risiko 4 sollten die Parameter für verschiedene Märkte angepasst werden, um eine einzige feste Parameter zu vermeiden.

Richtung der Strategieoptimierung

  1. Trend-Filter-Bedingungen hinzugefügt, Trends mit MACD, DMI und anderen Indikatoren bestätigt.

  2. Die Eintrittskurse wird mit Hilfe von Kennzahlen wie KD, RSI und anderen Indikatoren in Verbindung mit Überkauf und Überverkauf durchgeführt.

  3. Erhöhung der Gesamtstop-Mechanismen wie Tracking Stop, Prozentsatz Stop usw.

  4. Ein zusätzliches Modul für die Positionverwaltung, wie z. B. die dynamische Anpassung der Positionsgröße.

  5. Optimierung der Parameter-Einstellungen, um sie effektiver an unterschiedliche Zyklen anzupassen.

  6. Die Einführung von Machine Learning Modulen zur automatischen Optimierung der Parameter mit Hilfe von KI-Technologien.

  7. Erstellen Sie eine komplexe Strategie, um mit anderen Kennzahlen einen vorgefälschten Durchbruch zu erreichen.

  8. Die Techniken des Deep Learning werden eingesetzt, um komplexere Trendmuster zu erkennen.

Zusammenfassen

Die Moving Average Trend-Tracking-Strategie ist insgesamt eine relativ einfache Trend-Tracking-Strategie. Sie nutzt die Kombination aus schnellen und langsamen Durchschnittslinien, um die Trendrichtung zu bestimmen und die Trendwechsel an den Trendwechselpunkten zu machen, um die Preistrendwende effektiv zu erfassen. Die Strategie hat jedoch auch einige Probleme, wie z. B. häufige Transaktionen, Risiken von Verzögerungen.

Strategiequellcode
/*backtest
start: 2022-10-26 00:00:00
end: 2023-11-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("SMA STRATEGY", shorttitle="SMA TREND", overlay=true, calc_on_order_fills=true)
length = input(title="Length", type=input.integer, defval=50)
src_=input(close, title="Source", type=input.source)
mult=input(6.0, title="Mult")
barc=input(true, title="Use barcolor?")
plots=input(false, title="Show plots?")
tri=input(false, title="Use triangles?")


r(src, n)=>
    s = 0.0
    for i = 0 to n-1
        s := s + ((n-(i*2+1))/2)*src[i]
    x=s/(n*(n+1))
    x

l=sma(low, length)
h=sma(high, length)
lr= l+mult*r(low, length)
hr= h+mult*r(high, length)

trend=0
trend:=src_ > lr and src_ > hr ? 1 : src_ < lr and src_ < hr ? -1 : trend[1]

strategy.close("Long", when=trend==-1)
strategy.close("Short", when=trend==1)
strategy.entry("Long", strategy.long, when=trend==1 and src_>h)
strategy.entry("Short", strategy.short, when=trend==-1 and src_<l)

long=0
short=0
long:= trend==1 and src_>h ? 1 : trend==-1 ? -1 : long[1]
short:= trend==-1 and src_<l ? 1 : trend==1 ? -1 : short[1]

barcolor(barc? (long>0? color.green : short>0? color.red : trend>0? color.orange: trend<0 ? color.white : color.blue) : na)
plotshape(tri? close : na, style= shape.diamond, color= long>0? color.green : short>0? color.red : trend>0? color.orange: trend<0 ? color.white : color.blue, location=location.top)

//shortenter=
a1=plot(plots? l : na, color=color.blue, linewidth=1)
//longenter=
a2=plot(plots? h : na, color=color.blue, linewidth=1)
fill(a1, a2, color=color.blue)
//stopshort=
b1=plot(plots? hr : na, color=color.navy, linewidth=1)
//stoplong=
b2=plot(plots? lr : na, color=color.navy, linewidth=1)
fill(b1, b2, color=color.navy)