Der Grundgedanke dieser Strategie besteht darin, sowohl die Parabolische SAR als auch die EMA-Indikatoren zu verwenden, um die Trendrichtung und den Zeitpunkt des Markteintritts zu identifizieren. Parabolische SAR wird verwendet, um die aktuelle Trendrichtung zu bestimmen, und EMA wird verwendet, um den spezifischen Zeitpunkt des Markteintritts zu bestimmen. Wenn SAR über dem Preis liegt, ist es ein Bärenmarkt. Wenn SAR unter dem Preis liegt, ist es ein Bullenmarkt. Beim Eintritt in den Markt erfordert es auch, dass der Preis die EMA durchbricht, bevor der Trend als sich bilden kann. Zu diesem Zeitpunkt folgen Sie der Trendrichtung, um in den Markt einzutreten.
Der Kernindikator dieser Strategie ist der Parabolische SAR, ein technisches Analysetool, das Preise verfolgen und Trendumkehrungen beurteilen kann. Seine Berechnungsformel ist komplizierter, aber das Prinzip ist einfach und intuitiv. Der SAR-Indikator passt ständig seine Position an, um immer hinter dem Preis zu bleiben. Wenn der Preis umkehrt, passt er sofort seine Position auf die andere Seite des Preises an. Beobachten Sie daher einfach die Position des SAR-Indikators im Verhältnis zum Preis, um den aktuellen Trend zu beurteilen.
Ein weiterer Indikator, der dieser Strategie hilft, ist der EMA. Im Gegensatz zum SAR eignet sich der EMA besser zur Beurteilung der Nachhaltigkeit von Trends. Durch die Anforderung, dass der Preis vor dem Markteintritt durch den EMA durchbricht, kann ein gewisses Rauschen effektiv herausgefiltert werden. Und der EMA kann auch verwendet werden, um Umkehrsignale zu bestätigen. Zum Beispiel, wenn der Preis durch den steigenden Trend EMA bricht, ist es wahrscheinlich ein Signal für eine Trendumkehr.
Zusammenfassend sind die spezifischen Handelsregeln dieser Strategie wie folgt:
Durch die Bestimmung des Haupttrends durch Parabol SAR und das Filtern irreführender Signale mit EMA ist es möglich, den Trend zu verriegeln und gleichzeitig das Risiko zu kontrollieren und eine effektive Trendverfolgung zu erzielen.
Diese Strategie hat folgende Hauptvorteile:
Im Allgemeinen integriert diese Strategie die Vorteile mehrerer Indikatoren und ermöglicht gleichzeitig eine wirksame Risikokontrolle, wobei sie eine stabile und leicht zu beherrschende Trendverfolgungsstrategie darstellt.
Obwohl die Strategie viele Vorteile bietet, bestehen noch gewisse Risiken, vor denen man sich während des eigentlichen Betriebs schützen muss.
Um die oben genannten Risiken zu verringern, kann die Optimierung in den folgenden Aspekten durchgeführt werden:
Um diese Strategie weiter zu optimieren, sollten folgende Aspekte berücksichtigt werden:
Optimierung der Parameter-Einstellungen: Methoden wie genetische Algorithmen können verwendet werden, um die Parameter von EMA und SAR zu testen und zu optimieren, um die optimale Parameterkombination zu finden.
Zusätzliche Indikatoren wie MACD und Bollinger Bands können hinzugefügt werden, um den Trend zu bestätigen und die Genauigkeit zu verbessern.
Setzen Sie dynamische Stop-Loss-Punkte auf Basis von Indikatoren wie ATR für flexiblere Stopps.
Es ist wichtig, die Kosten für den Handel zu berücksichtigen, und Parameter für Slip und Provisionen einzuführen, um den Nettogewinn anstelle der absoluten Rendite zu optimieren.
Mehrstufige Ein- und Ausstiegsmechanismen: Komplexere mehrstufige Einstiegs- und Ausstiegsmechanismen können eingerichtet werden, um Positionen zu erstellen oder Verluste in verschiedenen Trendstufen zu stoppen.
Mit den oben genannten Optimierungen kann man bei der Verfolgung des Trends erwarten, dass die Strategie eine höhere Stabilität, eine genauere Einschätzung und eine stärkere Risikokontrolle erzielt, wodurch eine bessere Leistung erzielt wird.
Die Parabolische SAR- und EMA-Trendverfolgungsstrategie integriert die Vorteile mehrerer Indikatoren, um die Trendrichtung und den Zeitpunkt des Eintritts zu beurteilen. Mit SAR als Stop-Loss-Punkt festgelegt, ist das Risiko unter Kontrolle. Es ist eine relativ stabile quantitative Strategie. Diese Strategie hat Vorteile wie hohe Urteilsgenauigkeit und einfache Beherrschung. Aber es gibt auch bestimmte Risiken. Eine weitere Optimierung der Parameter und Stop-Loss-Methoden ist erforderlich, um eine bessere Leistung zu erzielen.
/*backtest start: 2022-12-15 00:00:00 end: 2023-12-21 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Parabolic SAR Strategy w/ EMA", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=100) emalength = input(100 , "EMA Length") emaoffset = input(0.00, "EMA Offset %") start = input(0.015) increment = input(0.005) maximum = input(0.2) //////////////////////////////////////////////////////////////////////////////// // BACKTESTING RANGE // From Date Inputs fromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) fromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) fromYear = input(defval = 2019, title = "From Year", minval = 1970) // To Date Inputs toDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) toMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) toYear = input(defval = 2020, title = "To Year", minval = 1970) // Calculate start/end date and time condition startDate = timestamp(fromYear, fromMonth, fromDay, 00, 00) finishDate = timestamp(toYear, toMonth, toDay, 00, 00) time_cond = true //////////////////////////////////////////////////////////////////////////////// psar = sar(start, increment, maximum) ema = ema(close, emalength) offset = (emaoffset / 100) * ema // Signals psar_long = high[1] < psar[2] and high > psar[1] psar_short = low[1] > psar[2] and low < psar[1] // Plot PSAR plotshape(psar, location = location.absolute, style = shape.cross, size = size.tiny, color = low < psar[1] and not psar_long ? green : red) //Plot EMA plot(ema) if(psar_long) strategy.close("Short") if(psar_short) strategy.close("Long") if (psar < low and time_cond and close > ema + offset) strategy.entry("Long", strategy.long, comment="Long", stop = psar) if (psar > high and time_cond and close < ema - offset) strategy.entry("Short", strategy.short, comment="Short", stop = psar) if (not time_cond) strategy.close_all()