
Die RSI-Fisch-Trend-Strategie ist eine Kombination aus Fischer-Indikatoren, die auf dem RSI basiert, um Trends ein- und auszugeben. Sie verwendet drei Mittelwerte - den Aufschwung der Fische, die Zahnlinie und die Lippenlinie - und baut den RSI mit unterschiedlichen Perioden auf.
Die RSI-Fisch-Trend-Strategie verwendet die RSI-Anzeige, um die drei Moving Averages der Fisch-Anzeige zu erstellen. Die spezifischen Einstellungen sind wie folgt:
Die Logik des Signals lautet:
Mehrköpfige Signale: Mehr machen, wenn die Lippenlinie über der Zahnseite getragen wird und die Zahnseite gleichzeitig über der Zahnseite liegt.
Leerkopfsignal: Leerkopf, wenn die Lippen unterhalb der Zahnlinie und die Zähne unterhalb der Zahnlinie sind.
Die Strategie setzt sowohl Stop-Loss- als auch Stop-Stop-Bedingungen:
Die RSI-Trend-Haken-Strategie hat folgende Vorteile:
Die RSI-Trendfisch-Strategie birgt auch folgende Risiken:
Die Kreuzung der Zahn- und Lippenlinien kann zu einem falschen Durchbruch führen, was zu unnötigen Verlusten führt. Die Periodiparameter können entsprechend angepasst werden, um die Wahrscheinlichkeit eines falschen Durchbruchs zu verringern.
Die Stop-Loss-Einstellungen können zu radikal sein und die Wahrscheinlichkeit eines unnötigen Stop-Losses ist höher. Der Stop-Loss-Bereich kann entsprechend gelockert oder andere Bedingungen als Voraussetzung für die Aktivierung von Stop-Loss hinzugefügt werden.
Wenn die Situation so schlimm ist, dass die Garantie nicht wirksam ist oder nicht wirksam ist, ist eine manuelle Intervention erforderlich, um die Garantie rechtzeitig zu stoppen.
Bei häufigem Multi-Room-Switching ist der Druck auf die Transaktionskosten größer. Die Zugangsbedingungen können entsprechend gelockert werden, um unnötige Wiederholungen zu reduzieren.
Die RSI-Haken-Trendstrategie kann in folgenden Bereichen optimiert werden:
Optimierung der Parameter-Einstellungen für die Wadenfischerei, Anpassung der Parameter-Perioden und Suche nach der optimalen Kombination der Parameter
Optimierung der eingehenden bedingungslogischen Filtersignale, wie z. B. neue Handelsvolumenindikatoren
Optimierung der Stop-Loss-Strategie, um sie besser an die Lage und die Höhe der Sicherheiten anzupassen
Erhöhung der Notfallbearbeitung und Vermeidung der Offenlegung von Unregelmäßigkeiten
Erhöhung der Algorithmen für die Eröffnung von Positionen, Kontrolle des Anteils der Einzelleistungen und Vermeidung von Risiken
Die RSI-Fisch-Trend-Strategie ist insgesamt eine zuverlässige, einfach zu bedienende Trend-Tracking-Strategie. Sie verwendet die Fischer-Indikatoren, um die Richtung der Tendenz zu bestimmen, in Kombination mit den RSI-Indikatoren, um die Referenztürme zu setzen, um die Trends effektiv zu sperren und einen vernünftigen Ausgangspunkt zu setzen. Die Strategie selbst verfügt außerdem über eine starke Flexibilität und Skalierbarkeit, die es wert ist, in der Praxis angewendet und nachträglich optimiert zu werden.
/*backtest
start: 2023-12-01 00:00:00
end: 2023-12-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// @version=3
// RSI Alligator
// Forked from Author: Reza Akhavan
// Updated by Khalid Salomão
strategy("RSI Alligator Strategy", overlay=false, pyramiding=0, default_qty_type=strategy.cash, default_qty_value=25000, initial_capital=25000, commission_type=strategy.commission.percent, commission_value=0.15, slippage=3)
// === TA LOGIC ===
overBought = input(70, minval=0, maxval=100, title="Over bought")
overSold = input(30, minval=0, maxval=100, title="Over sold")
jawPeriods = input(5, minval=1, title="Jaw Periods")
jawOffset = input(0, minval=0, title="Jaw Offset")
teethPeriods = input(13, minval=1, title="Teeth Periods")
teethOffset = input(0, minval=0, title="Teeth Offset")
lipsPeriods = input(34, minval=1, title="Lips Periods")
lipsOffset = input(0, minval=0, title="Lips Offset")
jaws = rsi(close, jawPeriods)
teeth = rsi(close, teethPeriods)
lips = rsi(close, lipsPeriods)
plot(jaws, color=green, offset=jawOffset, title="Jaw")
plot(teeth, color=red, offset=teethOffset, title="Teeth")
plot(lips, color=blue, offset=lipsOffset, title="Lips")
//
// === Signal logic ===
//
LONG_SIGNAL_BOOLEAN = crossover(teeth, lips) and jaws > teeth
SHORT_SIGNAL_BOOLEAN = crossunder(teeth, lips) and jaws < teeth
// === INPUT BACKTEST DATE RANGE ===
strategyType = input(defval="Long Only", options=["Long & Short", "Long Only", "Short Only"])
FromMonth = input(defval = 7, title = "From Month", minval = 1, maxval = 12)
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
FromYear = input(defval = 2018, title = "From Year", minval = 2017)
ToMonth = input(defval = 12, title = "To Month", minval = 1, maxval = 12)
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
ToYear = input(defval = 2020, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00)
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59)
window() => true
// === STRATEGY BUY / SELL ENTRIES ===
// TODO: update the placeholder LONG_SIGNAL_BOOLEAN and SHORT_SIGNAL_BOOLEAN to signal
// long and short entries
buy() => window() and LONG_SIGNAL_BOOLEAN
sell() => window() and SHORT_SIGNAL_BOOLEAN
if buy()
if (strategyType == "Short Only")
strategy.close("Short")
else
strategy.entry("Long", strategy.long, comment="Long")
if sell()
if (strategyType == "Long Only")
strategy.close("Long")
else
strategy.entry("Short", strategy.short, comment="Short")
// === BACKTESTING: EXIT strategy ===
sl_inp = input(10, title='Stop Loss %', type=float)/100
tp_inp = input(90, title='Take Profit %', type=float)/100
stop_level = strategy.position_avg_price * (1 - sl_inp)
take_level = strategy.position_avg_price * (1 + tp_inp)
strategy.exit("Stop Loss/Profit", "Long", stop=stop_level, limit=take_level)