Die RSI-Break-Branch-Strategie ist eine typische Trend-Tracking-Strategie. Sie verwendet den relativ starken Index ((RSI) als primären technischen Indikator, um nach Möglichkeiten zu suchen, um in die Bühne zu brechen, um Positionen zu erstellen, wenn der RSI überkauft oder überverkauft ist, um die Trends zu verfolgen.
Die Strategie basiert auf dem RSI, um zu überkaufen und zu verkaufen. Der RSI wird berechnet mit der Formel: RSI = ((Gehrdurchschnittswert/Gehrdurchschnittswert+Gehrdurchschnittswert) × 100). Der Gehrdurchschnittswert ist der einfache gleitende Durchschnitt des Anstiegs und des Rückgangs in den letzten N Tagen und der Gehrdurchschnittswert des Rückgangs in den letzten N Tagen.
Wenn der RSI größer ist als die festgelegte Überkauflinie (default 80), ist der Markt überkauft; wenn der RSI kleiner ist als die festgelegte Überverkaufsgrenze (default 35), ist der Markt überverkauf. Die Strategie sucht nach Short-Opportunitäten, wenn der RSI die Überkauflinie nach unten durchbricht; wenn der RSI die Überverkaufsgrenze nach oben durchbricht, sucht er nach Überverkaufsmöglichkeiten.
Konkret beurteilt die Strategie den Trend des RSI-Indikators anhand der beiden SMA-Gehälter. Wenn die Schnelle Linie von unten nach oben die langsame Linie durchbricht und gleichzeitig der RSI die Überverkaufsgrenze durchbricht, macht sie einen Plus. Wenn die Schnelle Linie von oben nach unten die langsame Linie durchbricht und gleichzeitig der RSI die Überkaufsgrenze durchbricht, macht sie einen Minus.
Die RSI-Break-Strategie ist insgesamt eine typische Trend-Tracking-Strategie. Sie beurteilt die Kauf- und Verkaufspunkte durch den RSI-Indikator, filtert die Signal-Doppel-SMA-Durchschnitte und setzt Stop-Loss-Stopps, um das Risiko zu kontrollieren. Die RSI-Indikatoren haben jedoch Probleme mit der Lagerung, außerdem beeinflusst die falsche Einstellung der Parameter die Strategie.
/*backtest
start: 2023-09-10 00:00:00
end: 2023-10-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
//strategy("Strategy RSI | Fadior", shorttitle="Strategy RSI", pyramiding=10, calc_on_order_fills=false, initial_capital=10000, default_qty_type=strategy.percent_of_equity, currency="USD", default_qty_value=100, overlay=false)
len = input(3, minval=1, title="RSI Length")
threshLow = input(title="Treshold Low", defval=35)
threshHigh = input(title="Treshold High", defval=80)
rsiLength1 = input(title="RSI Smoothing 1", defval=3)
rsiLength2 = input(title="RSI Smoothing 2", defval=5)
SL = input(title="Stop loss %", type=float, defval=.026, step=.001)
TP = input( defval=300)
// 3 40 70 2
// 14 40 70 2 16 0.05 50
src = close
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(sma(rsi,rsiLength2), color=orange)
plot(sma(rsi,rsiLength1), color=green)
band1 = hline(threshHigh)
band0 = hline(threshLow)
fill(band1, band0, color=purple, transp=90)
strategy = input(type=bool, title="Long only ?", defval=true)
strategy.risk.allow_entry_in(strategy ? strategy.direction.long : strategy.direction.all)
longCondition = sma(rsi,rsiLength1) < threshLow and sma(rsi,rsiLength2) > sma(rsi,rsiLength2)[1]
if (longCondition)
strategy.entry("Long", strategy.long) //, qty=10)
strategy.exit("Close Long", "Long", stop=src-close*SL, profit=TP)
shortCondition = sma(rsi,rsiLength1) > threshHigh and sma(rsi,rsiLength2) < sma(rsi,rsiLength2)[1]
if (shortCondition)
strategy.entry("Short", strategy.short) //, qty=10)
strategy.exit("Close Short", "Short") //, stop=src-close*SL, profit=TP)