Die RSI Alligator Trend Strategie basiert auf der Kombination von RSI Indikator und Alligator Indikator, um den Ein- und Ausstieg von Trends zu bestimmen. Sie verwendet drei gleitende Durchschnittslinien - die Alligator
Die RSI Alligator Trend-Strategie baut die drei Linien des Alligator-Indikators mit dem RSI-Indikator auf.
Die Logik des Eingangssignals lautet:
Langes Signal: Wenn die Zahnlinie über die Lippenlinie kreuzt und die Kieferlinie höher ist als die Zahnlinie, gehen Sie lang.
Kurzsignal: Wenn die Zahnlinie unterhalb der Lippenlinie kreuzt und die Kieferlinie niedriger ist als die Zahnlinie, gehen Sie kurz.
Die Strategie legt außerdem Stop-Loss- und Take-Profit-Bedingungen fest:
Die RSI Alligator Trend-Strategie weist folgende Stärken auf:
Die RSI-Alligator-Trend-Strategie birgt außerdem folgende Risiken:
Es kann zu falschen Ausbrüchen an der Kreuzung zwischen Zahnlinie und Lippenlinie kommen, was zu unnötigen Verlusten führt.
Die Stop-Loss-Einstellung kann zu aggressiv sein, mit einer hohen Wahrscheinlichkeit von unnötigem Stop-Loss. Der Stop-Loss-Bereich kann angemessen entspannt werden oder andere Bedingungen können als Voraussetzung für die Aktivierung des Stop-Loss hinzugefügt werden.
Wenn sich der Markt heftig bewegt, kann der Stop-Loss möglicherweise nicht seine richtige Rolle spielen, die Marge zu schützen.
Wenn Long- und Shortpositionen häufig wechseln, ist der Handelskostendruck größer.
Die RSI Alligator Trend Strategie kann in folgenden Aspekten optimiert werden:
Optimieren Sie die Alligator Linienparameter Einstellungen, um die beste Parameterkombination zu finden
Optimieren Sie die Logik der Einstiegsbedingungen, z. B. Hinzufügen von Indikatoren wie Handelsvolumen zu Filtersignalen
Optimierung der Gewinn- und Stop-Loss-Strategien, um sie besser an die Marktbedingungen und die Margin-Level anzupassen
Hinzufügen von Mechanismen zur Bewältigung extremer Ereignisse und zur Vermeidung der Exposition gegenüber abnormalen Marktbedingungen
Hinzufügen von Algorithmen für offene Positionen zur Kontrolle des Anteils des in einen einzigen Handel investierten Kapitals zur Risikominderung
Im Allgemeinen ist die RSI Alligator Trend Strategie eine zuverlässige und einfach zu bedienende Trendfolgestrategie. Sie verwendet den Alligator-Indikator, um die Trendrichtung zu bestimmen, kombiniert mit dem RSI-Indikator, um Referenzschwellen zu setzen, die den Trend effektiv sperren und angemessene Ausgangspunkte festlegen können. Gleichzeitig hat die Strategie selbst auch eine starke Flexibilität und Erweiterbarkeit, was sie für den Live-Handel und weitere Optimierung lohnt.
/*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)