Die Ressourcen sind geladen. Beförderung...

Der Wert des Wertpapiers wird auf der Basis der in Artikel 4 Absatz 1 Buchstabe b genannten Methode berechnet.

Schriftsteller:ChaoZhang, Datum: 2023-10-08 12:14:36
Tags:

Übersicht

Diese Strategie basiert auf den Indikatoren Simple Moving Average (SMA) und Relative Strength Index (RSI). Sie geht kurz, wenn der RSI über das Einstiegsniveau überschreitet und der Schlusskurs unterhalb des SMA liegt. Sie schließt Positionen, wenn Stop-Loss- oder Take-Profit-Signale erscheinen. Der doppelte Filter hilft, ineffektive Trades zu vermeiden.

Grundsätze

Die Strategie beurteilt den Markt hauptsächlich anhand von zwei Indikatoren:

  1. SMA: Berechnet auf der Grundlage des einfachen gleitenden Durchschnitts der Schlusskursentwicklung der letzten 200 Tage und repräsentiert mittelfristige und langfristige Trends.

  2. Der RSI wird auf der Grundlage der relativen Festigkeit der Schlusskursentwicklung in den letzten 14 Tagen berechnet und repräsentiert kurzfristige Überkauf-/Überverkaufswerte.

Wenn der RSI über 51 in die Überkaufzone überschreitet und über der SMA-Linie liegt, deutet dies darauf hin, dass die kurz- und mittelfristigen Trends abweichen, so dass eine Short-Position eröffnet wird.

Danach werden Stop-Loss- und Take-Profit-Linien gesetzt. Die Position wird geschlossen, wenn der RSI für Take-Profit unter 32 fällt oder wenn der RSI über 54 überschreitet oder der Stop-Loss für Stop-Loss erreicht wird.

Stärken

  1. Der doppelte Indikatorfilter erhöht die Genauigkeit der Einstiegssignale. Der RSI bestimmt kurzfristige Überkaufniveaus und der SMA mittelfristige langfristige Bärensignale. Die Kombination der beiden macht die Signale zuverlässiger.

  2. Der Trailing-Stop verriegelt die Gewinne entsprechend der Kursentwicklung und vermeidet die Rückgabe von Gewinnen.

  3. Die Logik ist einfach und unkompliziert, leicht zu verstehen und zu ändern.

Risiken

  1. Es werden keine Faktoren wie Handelsvolumen oder Volatilität berücksichtigt.

  2. Die RSI-Parameter sind fest und können nicht für alle Produkte und Zeitrahmen geeignet sein.

  3. Es werden keine Handelskosten wie Slippage und Provisionen berücksichtigt.

  4. Die Strategie ist sehr einfach und hat nur begrenzten Raum für eine Erweiterung.

Verbesserungsbereiche

  1. Testen und optimieren Sie die RSI- und SMA-Parameter, um die beste Kombination zu finden.

  2. Fügen Sie mehr Arten von Stop-Loss/Profit-Methoden hinzu, wie Trailing-Stops, prozentual basierte Stops.

  3. Fügen Sie Trendfilterindikatoren wie MACD hinzu, um den Handel gegen den Trend zu vermeiden.

  4. Überlegen Sie sich Volumenindikatoren, um falsche Ausbrüche mit geringem Volumen zu filtern.

Zusammenfassung

Die Strategie hat eine klare Logik und einen gewissen praktischen Wert. Aber ihre Parameter sind fest und passen sich nicht an die Marktveränderungen an. Es gibt auch einige Details, die verbessert werden können. Insgesamt kann sie als Beispiel für Anfänger dienen, um doppelte Indikatorfilterstrategien zu erlernen, muss aber für den tatsächlichen Handel weiter getestet und verbessert werden.


/*backtest
start: 2023-09-07 00:00:00
end: 2023-10-07 00:00:00
period: 3h
basePeriod: 15m
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/
// © abdllhatn

//@version=5
// strategy("Alpha Short SMA and RSI Strategy", overlay=true, initial_capital=10000, default_qty_value=100)

// Inputs
sma_length = input(200, title="SMA Length")
rsi_length = input(14, title="RSI Length")
rsi_entry = input(51, title="RSI Entry Level")
rsi_stop = input(54, title="RSI Stop Level")
rsi_take_profit = input(32, title="RSI Take Profit Level")

// Indicators
sma_value = ta.sma(close, sma_length)
rsi_value = ta.rsi(close, rsi_length)

var float trailingStop = na
var float lastLow = na

// Conditions
shortCondition = ta.crossover(rsi_value, rsi_entry) and close < sma_value
if (shortCondition)
    strategy.entry("Sell", strategy.short)
    trailingStop := na
    lastLow := na

if (strategy.position_size < 0)
    if (na(lastLow) or close < lastLow)
        lastLow := close
        trailingStop := close

if not na(trailingStop) and close > trailingStop
    strategy.close("Sell")

if (rsi_value >= rsi_stop)
    strategy.close("Sell")

if (rsi_value <= rsi_take_profit)
    strategy.close("Sell")

// Plot
plot(sma_value, color=color.red, linewidth=2)




Mehr