Die Ressourcen sind geladen. Beförderung...

Die RSI-Strategie für Multi-EMA-Bewegungen

Schriftsteller:ChaoZhang, Datum: 14.9.2023
Tags:

Strategie Logik

Diese Strategie kombiniert mehrere gleitende Durchschnitte mit dem RSI für Trades.

Die Logik lautet:

  1. Berechnung von 4 EMA unterschiedlicher Perioden, z. B. 9, 26, 100 und 55 Perioden

  2. Ein Kurzsignal wird ausgelöst, wenn der 9-Perioden-EMA unter den 26-Perioden-EMA fällt

  3. Aktivieren Sie nur kurz, wenn der RSI unter dem Schwellenwert liegt (z. B. 40), um einen Überverkauf zu vermeiden

  4. Nach kurzem Eintritt, Ausstieg, wenn der Preis über 55 oder 100 EMA steigt

  5. Für die Parameteroptimierung können verschiedene EMA-Kombinationen festgelegt werden

Die Strategie nutzt mehrere EMAs für den Trend und fügt RSI zur Signalbestätigung hinzu und geht bei Überverkäufen kurz.

Vorteile

  • Mehrfache EMA verbessern die Genauigkeit

  • RSI vermeidet Überverkaufsrisiko

  • Schnellere EMA für den Einstieg, langsamer für den Stop-Loss

Risiken

  • Umfangreiche Prüfungen sind erforderlich, um optimale Parameter zu finden

  • Sorgfältige Bewertung der RSI-Parameter

  • KURZ nur, so lange Gelegenheiten verpasst

Zusammenfassung

Diese Strategie kombiniert die Leistung mehrerer EMAs mit RSI-Bestätigung und Filterung. Parameteroptimierung und Stop-Loss sind entscheidend.


/*backtest
start: 2023-08-14 00:00:00
end: 2023-09-13 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/
// © YukalMoon

//@version=5
strategy(title="EMA SCALPEUR", overlay=true, initial_capital = 1000)


//// input controls

EMA_L = input.int (title = "EMA_L", defval = 9, minval = 1, maxval = 100, step =1)
EMA_L2 = input.int (title = "EMA_L2", defval = 26, minval = 1, maxval = 100, step =1)
EMA_S = input.int (title = "EMA_S", defval = 100, minval = 1, maxval = 100, step =1)
EMA_S2 = input.int (title = "EMA_S2", defval = 55, minval = 1, maxval = 100, step =1)
RSI1 = input.int (title = "RSI", defval = 5, minval = 1, maxval = 20 , step = 1)

/// mise en place de ema

RSI = ta.rsi(close, RSI1)

shortest = ta.ema(close, 9)
short = ta.ema(close, 26)
longer = ta.ema(close, 100)
longest = ta.ema(close, 55)

plot(shortest, color = color.red)
plot(short, color = color.orange)
plot(longer, color = color.aqua)
plot(longest, color = color.yellow)

plot(close)

//// trading indicators

EMA1 = ta.ema (close,EMA_L)
EMA2 = ta.ema (close,EMA_L2)
EMA3 = ta.ema (close, EMA_S)
EMA4 = ta.ema (close, EMA_S2)


//buy = ta.crossover(EMA1, EMA2) and RSI > 60 and RSI <70
sell = ta.crossunder(EMA1, EMA2) and RSI > 40

//buyexit = ta.crossunder(EMA3, EMA4)
sellexit = ta.crossover(EMA3, EMA4)

/////strategy


strategy.entry ("short", strategy.short, when = sell, comment = "ENTER-SHORT")


///// market exit


strategy.close ("short",  when = sellexit, comment = "EXIT-SHORT")













Mehr