Super Trend nach einer auf gleitenden Durchschnitten basierenden Strategie

Schriftsteller:ChaoZhang, Datum: 2024-02-05 11:10:41
Tags:

img

Übersicht

Diese Strategie ist eine typische Trend-Folge-Strategie. Sie verwendet mehrere Sätze gleitender Durchschnitte mit verschiedenen Perioden, um den Markttrend zu bestimmen. Sie tritt in den Markt ein, wenn der Trend festgelegt wird, und tritt aus, wenn der kurzfristige Trend umkehrt.

Strategieprinzip

Die Strategie verwendet 4 Gruppen von gleitenden Durchschnitten: 9-Tage-, 21-Tage-, 50-Tage- und 200-Tage-Linien.

Wenn der kurzfristige gleitende Durchschnitt den langfristigen nach oben überschreitet, wird festgestellt, dass der Markt in einen Aufwärtstrend eintritt.

Die Strategie nimmt den 9-Tage-MA als Referenz, um die Ausrichtung der anderen MA zu beobachten und so die allgemeine Trendrichtung zu beurteilen.

Lange Einstiegsbedingungen: Schließen > 9-Tage-MA und 9-Tage-MA > 21-Tage-MA und 21-Tage-MA > 50-Tage-MA und 50-Tage-MA > 200-Tage-MA.

Kurzzeitige Einstiegsbedingungen: Nähe < 9-Tage-MA und 9-Tage-MA < 21-Tage-MA und 21-Tage-MA < 50-Tage-MA und 50-Tage-MA < 200-Tage-MA.

Hier bestimmt die Beziehung zwischen dem Schlusskurs und dem 9-Tage-MA den kurzfristigen Trend, während die Beziehung zwischen dem 9-Tage- und dem 21-Tage-MA den kurzfristigen Trend, den 21-Tage- und 50-Tage-Mittelfristigen Trend, den 50-Tage- und 200-Tage-Langzeittrend beurteilt.

Ausstiegsbedingungen: Schlusskurs überschreitet die 21-Tage-MA, alle Long-Positionen werden abgeflacht; überschreitet er die 21-Tage-MA, alle Short-Positionen werden abgeflacht.

Vorteile der Strategie

  1. Durch die Annahme mehrerer MAs zur Bestimmung des Trends können Marktgeräusche von nicht-mainstream-Tendenzen herausgefiltert und mittelfristige bis langfristige Trends erfasst werden.

  2. Strenge Eintrittsbedingungen erfordern gültige Urteile über verschiedene Zeitrahmen hinweg, um nicht von kurzfristigen Korrekturen gefangen zu werden.

  3. Ein rechtzeitiger Stop-Loss hilft, Risiken wirksam zu kontrollieren.

Risiken und Lösungen

  1. In langfristigen Rangebound-Märkten können übermäßige falsche Signale auftreten und das Handelsrisiko erhöhen. Dies kann durch Optimierung der Parameter und Anpassung der MA-Perioden vermieden werden, um einige Geräusche zu filtern.

  2. Während heftiger Trends treten häufig MA-Kreuzungen auf. Es sind dann andere Faktoren erforderlich, um den realen Trend zu bestimmen, z. B. die Kombination von Indikatoren wie RSI und MACD zur Bestätigung, falls starke Bewegungen verpasst werden.

Optimierungsrichtlinien

  1. Optimierung von Parametern. Verschiedene Parameterkombinationen testen, um das Optimale herauszufinden. Wie die Anpassung von MA-Perioden, das Hinzufügen oder Ändern von Stop-Loss-Kriterien usw.

  2. Verbessern Sie den Qualitätsfilter, z. B. überprüfen Sie, ob das Volumen beim Eintritt ansteigt, um unzureichende Impulse zu vermeiden, oder untersuchen Sie die Volatilität, um Schwankungen zu vermeiden.

  3. Einführung von Bestätigungen aus mehr technischen Indikatoren, um falsche Signale inmitten heftiger Marktbewegungen zu vermeiden.

Zusammenfassung

Insgesamt ist dies eine typische und praktische Trendfolgestrategie. Es verwendet mehrere MA, um Trends zu bestimmen, hat strenge Einstiegsregeln, um mittelfristige bis langfristige Trends zu verriegeln. Zusammen mit einem rechtzeitigen Stop-Loss hilft es, Risiken zu kontrollieren. Weitere Verbesserungen der Stabilität und Rentabilität können durch Wege wie Parameteroptimierung und Hinzufügen von Bestätigungsindikatoren erreicht werden. Es eignet sich für Anleger, die den Trend für den langfristigen Handel bevorzugen.


/*backtest
start: 2023-01-29 00:00:00
end: 2024-02-04 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © shayak1

//@version=5
strategy('Super SR', overlay=true)

r = input.int(14,"rsi-length",1,100)
rsi = ta.rsi(close,r)

len1 = 9
len2 = 21
len3 = 50
len4 = 200

ema1 = ta.ema(close, len1)
ema2 = ta.ema(close, len2)
ema3 = ta.ema(close, len3)
ema4 = ta.ema(close, len4)

plot(ema1,color= color.green)
plot(ema2,color= color.yellow)
plot(ema3,color= color.orange)
plot(ema4,color= color.red)


// *** entries 
Long1 = close > ema1
Long2 = ema1 > ema2
Long3 = ema2 > ema3
Long4 = ema3 > ema4
buy_condition = Long1 and Long2 and Long3 and Long4 and strategy.position_size == 0

if (buy_condition and strategy.position_size <= 1)
    strategy.entry("B", strategy.long)

Short1 = close < ema1
Short2 = ema1< ema2
Short3 = ema2< ema3
Short4 = ema3< ema4
sell_condition = Short1 and Short2 and Short3 and Short4 and strategy.position_size == 0

//if (sell_condition)
//    strategy.entry("S", strategy.short)

// trailing SL
//Long_sl = min(strategy.position_avg_price * 0.95, strategy.pos


//EXIT CONDITIONS

exit_long = ta.crossunder(close, ema2)
exit_short = ta.crossover(close, ema2)

if(exit_long)
    strategy.close("B", "LE", qty_percent=100)
if(exit_short)
    strategy.close("S", "SE", qty_percent=100)

//==============================================================================
//INSERT SECTION
//This section is where users will be required to insert the indicators they
//would like to use for their NNFX Strategy.
//==============================================================================
//INSERT - CONFIRMATION INDICATOR 1
//==============================================================================


//==============================================================================
//INSERT - CONFIRMATION INDICATOR 2
//==============================================================================


//==============================================================================
//INSERT - VOLUME INDICATOR
//==============================================================================


//==============================================================================
//INSERT - BASELINE INDICATOR
//==============================================================================


//==============================================================================
//INSERT - EXIT INDICATOR
//==============================================================================


//==============================================================================
//INSERT - CONTINUATION TRADES INDICATOR
//==============================================================================


//==============================================================================
//COMPLETED SECTION
//This section has been optimised to work with the above indicators the user
//has inserted above. The user does not require to change any code below and
//is completed and optimised for the full NNFX strategy. Users may wish to 
//customise this section of code if they wish to alter the NNFX strategy.
//==============================================================================
//COMPLETE - BACKTEST DATE RANGE
//==============================================================================
// start_day = input.int(1,"start day",1,31)
// start_month = input.int(1,"start month",1,12)
// start_year = input.int(1,"start year",2010,2023)



//==============================================================================
//COMPLETE - CURRENCY CONVERSION
//==============================================================================


//==============================================================================
//COMPLETE - ATR MONEY MANAGEMENT
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C1
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - C2
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Vol
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Bl
//==============================================================================


//==============================================================================
//COMPLETE - USER INPUT CONDITIONS - Exit
//==============================================================================


//==============================================================================
//COMPLETE - CONTINUATION TRADES
//==============================================================================


//==============================================================================
//COMPLETE - ONE CANDLE RULE
//==============================================================================


//==============================================================================
//COMPLETE - BRIDGE TOO FAR
//==============================================================================


//==============================================================================
//COMPLETE - BASELINE AND ATR RULE
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - ENTRY ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - TAKE PROFIT AND STOP LOSS CONDITIONS
//==============================================================================


//==============================================================================
//COMPLETE - EXIT ORDERS
//==============================================================================


//==============================================================================
//COMPLETE - CLOSE ORDERS
//==============================================================================


//==============================================================================

Mehr