RSI2-Strategie Intraday-Reversal-Gewinn-Rate-Backtest

RSI SMA
Erstellungsdatum: 2024-04-29 14:02:55 zuletzt geändert: 2024-04-29 14:02:55
Kopie: 7 Klicks: 1116
1
konzentrieren Sie sich auf
1617
Anhänger

RSI2-Strategie Intraday-Reversal-Gewinn-Rate-Backtest

Überblick

Die Strategie basiert auf einem Überverkaufssignal des relativ starken RSI-Indikators, bei dem man an den Tagestiefpunkten kauft und dann einen festen Prozentsatz an Stop-and-Loss setzt, um die Wahrscheinlichkeit zu messen, dass die Strategie die Stopp- und Stop-Loss-Probenzen berührt. Die Hauptidee besteht darin, die RSI-Indikator-Überverkaufszeit zu nutzen, sich an den Tagestiefpunkten einzumischen und die kurzfristigen Gewinne aus der Umkehrung zu nutzen.

Strategieprinzip

  1. Berechnen Sie den 2-Zyklus-RSI und den 200-Zyklus-Simple Moving Average
  2. Wenn der Schlusskurs über der Mittellinie liegt und der RSI kleiner als die Überschussmarge (Standard 10) ist, kauft am nächsten Handelstag
  3. Der Mindestkaufpreis des Tages wird als Einstiegspreis aufgezeichnet.
  4. 6% Stop-Loss- und 3% Stop-Loss-Preise basierend auf dem Einstiegspreis
  5. Am nächsten Handelstag, wenn der Stop-Loss-Preis berührt wird, wird die Position beendet.
  6. Anzahl der Stop-Ops und Stop-Losses, die Strategie zur Berechnung der Gewinnrate innerhalb eines festgelegten Zeitraums

Analyse der Stärken

  1. Kaufen Sie bei den Tagestiefpunkten und holen Sie sich den Rückschlag nach einem Überschuss des RSI am Tag
  2. Fixed-Prozent-Stop-Loss, um das Risiko eines einzelnen Handels zu kontrollieren
  3. Verwenden Sie langfristige mittlere Linie-Filter, um negative Transaktionen zu reduzieren
  4. Einfach zu bedienen, mit flexiblen Parametern und für Short-Line-Händler geeignet

Risikoanalyse

  1. Der RSI-Überverkauf ist keine Garantie für eine Kehrtwende, und die Märkte werden in extremen Fällen weiter fallen.
  2. Ein fester Stop-Loss-Prozent kann die Transaktionskosten nicht decken.
  3. Eintrittspunkte basieren auf den niedrigsten Tagespreisen, und es ist schwierig, genau am niedrigsten zu kaufen.
  4. Der Mangel an Trendbeurteilung, der sich nur auf Überkauf-Überverkauf-Signale stützt, kann zu geringen Renditen führen.

Optimierungsrichtung

  1. Anpassung der Stop-Loss-Regelung an die Dynamik von Indikatoren wie Preisschwankungen
  2. Hinzufügen von Trendbestätigungsindikatoren wie MACD, DMI usw. und Vermeidung von Gegenhandel
  3. Optimierte Einstiegspunkte, wie die Verwendung von Variablen-Distanz-Beach-Trading-Regeln
  4. Erhöhung der Positionsverwaltung, Kapitalnutzung und Rendite
  5. In Kombination mit anderen kurzperiodischen Indikatoren zur Verbesserung der Signalbestätigung, wie Brinband, KDJ usw.

Zusammenfassen

Die RSI2-Strategie versucht, die Tagesumkehr nach einem Überschuss des RSI-Indikators zu erfassen, um das Risiko zu kontrollieren, indem sie einen festen Prozentsatz der Stop-Loss-Situation festlegt und gleichzeitig die langfristigen Durchschnittslinien verwendet, um negative Signale zu filtern. Die Strategie ist einfach und eignet sich für Short-Line-Spekulanten.

Strategiequellcode
/*backtest
start: 2024-03-01 00:00:00
end: 2024-03-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © rajk1987

//@version=5
strategy("RSI2 strategy Raj", overlay=true, margin_long=100, margin_short=100)

rsi_len = input.int( 2, title = "RSI Length",     group = "Indicators")
rsi_os  = input.float(10, title = "RSI Oversold", group = "Indicators")
rsi_ob  = input.float(90, title = "RSI OverBrought",   group = "Indicators")
max_los = input.float(3,title = "Max Loss Percent", group = "Indicators")
tar_per = input.float(6,title = "Target Percent",group = "Indicators")

//Get the rsi value of the stock
rsi = ta.rsi(close, rsi_len)
sma = ta.sma(close,200)
var ent_dat = 0
var tar = 0.0
var los = 0.0
var bp = 0.0

if ((close > sma) and (rsi < rsi_os))
    strategy.entry("RSI2 Long Entry", strategy.long,1)
    ent_dat := time(timeframe = timeframe.period)

if(ent_dat == time(timeframe = timeframe.period))
    bp := low //high/2 + low/2
    tar := bp * (1 + (tar_per/100))
    los := bp * (1 - (max_los/100))

if (time(timeframe = timeframe.period) > ent_dat)
    strategy.exit("RSI2 Exit", "RSI2 Long Entry",qty = 1, limit = tar, stop = los, comment_profit = "P", comment_loss = "L")

//plot(rsi,"RSI")
//plot(bp,"BP")
//plot(tar,"TAR")
//plot(los,"LOS")