Die Ressourcen sind geladen. Beförderung...

SAR-Alternative Handelsstrategie im Zeitrahmen

Schriftsteller:ChaoZhang, Datum: 2024-01-16 14:18:20
Tags:

img

Übersicht

Diese Strategie basiert auf den wechselnden Operationen des SAR-Indikators über verschiedene Zeitrahmen hinweg. Die Strategie berechnet den SAR-Indikator in 15-minütigen, täglichen, wöchentlichen und monatlichen Zeitrahmen und handelt im wöchentlichen Zeitrahmen.

Grundsätze

Berechnung des SAR-Indikators

Der Parabolische SAR (SAR) Indikator stellt einen parabolischen SAR dar, der die Trendrichtung beurteilt, indem er die Beziehung zwischen dem aktuellen Preis und den historischen Preisen berechnet.

Diese Strategie berechnet SAR-Werte in 15-minütigen, täglichen, wöchentlichen und monatlichen Zeitrahmen.

SAR = Previous SAR + Acceleration Factor * (Highest Price - Previous SAR) # Uptrend 
SAR = Previous SAR + Acceleration Factor * (Lowest Price - Previous SAR) # Downtrend

Der anfängliche Beschleunigungsfaktor wird auf 0,2 eingestellt und wird sich mit zunehmender Entwicklung allmählich auf maximal 0,2 erhöhen.

Handelsstrategie

Die Strategie erzeugt Handelssignale im wöchentlichen Zeitrahmen. Sie geht lang, wenn der wöchentliche SAR über den höchsten Preis überschreitet, wobei der SAR-Wert als Stop-Loss dient. Sie geht kurz, wenn der SAR unter den niedrigsten Preis überschreitet, wobei der SAR als Stop-Loss dient.

Durch die Bestimmung des Trends in einem längeren Zeitrahmen und die Festlegung eines genaueren Stop-Loss-Niveaus zielt die Strategie darauf ab, effizienter zu profitieren.

Vorteile

  • Der SAR-Indikator lokalisiert genau die Trendumkehrpunkte für den Markteintritt
  • Der Handel in höheren Zeitrahmen folgt dem Haupttrend
  • Ein Stopp-Loss, der an SAR festgehalten wird, kontrolliert die Risiken wirksam

Risiken und Lösungen

  • SAR-Verzögerung kann dazu führen, dass sich der Trend nach dem Erreichen des Stop-Loss umkehrt.
  • Der Beschleunigungsfaktor kann sich bei großen Trends dramatisch erweitern, wodurch der Stop-Loss durchdrungen wird.
  • Die Lösung besteht darin, die Positionsgröße zu reduzieren.

Verbesserungsbereiche

  • Optimierung der Einstiegsbedingungen, z. B. Kombination mit anderen Indikatoren
  • Verstärkung der Stop-Loss-Mechanismen, z. B. nachläufiger Stop-Loss, Zone Stop-Loss
  • Verfeinerte Positionsgrößenregeln, z. B. feste Bruchteil, dynamische Anpassung
  • In noch längeren Zeitrahmen arbeiten, z. B. vierteljährlich, jährlich
  • Dynamische Optimierung von Parametern durch maschinelles Lernen

Schlussfolgerung

Die Strategie hat eine klare Logik der Fahrt Trends auf höheren Zeitrahmen mit SAR-Indikator um Umkehrungen zu lokalisieren und Stop-Loss setzen. Eintrittssignale und Risikomanagement könnte weiter verbessert werden. Mit Optimierungen in Bereichen wie Eintritte, Stopps und Position Größe, kann es stabiler und profitabler werden.


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

//@version=2
strategy ("SAR alternating timeframe", overlay=true)

//resolution
res1=input("15", title="Resolution")
res2=input("D", title="Resolution")
res3=input("W", title="Resolution")
res4=input("M", title="Resolution")

//output functions
out = sar(0.02,0.02,0.2)

// request.security
SAR1 = request.security(syminfo.tickerid, res1, out)
SAR2 = request.security(syminfo.tickerid, res2, out)
SAR3 = request.security(syminfo.tickerid, res3, out)
SAR4 = request.security(syminfo.tickerid, res4, out)

//Plots
//plot(SAR1 , title="SAR 15", color = red, linewidth = 2)
//plot(SAR2 , title="SAR D", color = green, linewidth = 3)
plot(SAR3 , title="SAR W", color =blue, linewidth = 4)
//plot(SAR4 , title="SAR W", color =purple, linewidth = 5))


/////////////////////////////////////////////////////////////////////
//trade
if (SAR3 >= high)
    strategy.entry("ParLE", strategy.long, stop=SAR3, comment="ParLE")
else
    strategy.cancel("ParLE")

if (SAR3 <= low)
    strategy.entry("ParSE", strategy.short, stop=SAR3, comment="ParSE")
else
    strategy.cancel("ParSE")



Mehr