Drei EMA-Crossover plus stochastische RSI-Strategie


Erstellungsdatum: 2023-11-15 10:47:20 zuletzt geändert: 2023-11-15 10:47:20
Kopie: 0 Klicks: 954
1
konzentrieren Sie sich auf
1617
Anhänger

Drei EMA-Crossover plus stochastische RSI-Strategie

Überblick

Dies ist eine Trend-Tracking-Strategie, die mehrere Indikatoren kombiniert. Sie verwendet gleichzeitig drei verschiedene Phasen EMA, Stochastic RSI und ATR, um die Richtung des Trends zu erkennen und Positionen zu erstellen. Wenn Sie eine Position auf einer kurzfristigen EMA über eine langfristige EMA platzieren, machen Sie mehr, und der Stop-Loss liegt dreimal unter dem Wert der jüngsten ATR und der Stop-Loss ist zweimal so hoch wie der jüngste ATR.

Grundsätze

Die Strategie verwendet drei EMA-Gehälter, nämlich EMAs mit 8 Perioden, 14 Perioden und 50 Perioden. Sie repräsentieren die Preisentwicklung in verschiedenen Zeiträumen. Wenn ein EMA mit 8 Perioden einen EMA mit 14 Perioden und ein EMA mit 14 Perioden einen EMA mit 50 Perioden durchschreitet, ist dies der Beginn eines Trends.

Der Stochastic RSI-Indikator kombiniert die RSI- und Stochastic-Berechnungsmethode, um Überkauf-Überverkauf zu erkennen. Wenn die K-Linie des Stochastic RSI die D-Linie von unten durchbricht, zeigt dies, dass der Markt von einem Überverkauf zu einem Beobachter wechselt.

ATR steht für die jüngste Bandbreite der Schwankungen. Die Strategie nutzt 3x den ATR als Stop-Loss-Distanz und 2x den Stop-Stop-Distanz, um Gewinne zu sichern und Risiken zu kontrollieren.

Vorteile

  • Die Verwendung der EMA-Gehaltslinie kann teilweise Geräusche in den Preisdaten filtern und die Richtung der Trends erkennen
  • Der Stochastic RSI zeigt Chancen für eine Umkehr
  • ATR-Dynamic Tracking Stop Loss Stop, mit dem ein vernünftiger Gewinn- und Verlustbereich basierend auf den Marktschwankungen festgelegt werden kann

Die Gefahr

  • Mehrfache Kennzahlenkombinationen können falsche Signale auslösen
  • Ein fester Stop-Loss-Stopp-Multiplier kann sich nicht an Veränderungen anpassen
  • Kurze Zyklen sind sehr anfällig für Umkehrwirkungen

Die Sensitivität des Indikators kann durch Anpassung der EMA-Zyklusparameter optimiert werden. Es kann auch die Stop-Loss-Stopp-Multiplikator des ATR angepasst werden, um die entsprechenden Parameter entsprechend der Marktlage einzustellen. Darüber hinaus kann die Aufnahme anderer Indikatoren in Betracht gezogen werden, um Fehlsignale zu vermeiden.

Optimierungsrichtung

  • Anpassung der EMA-Zyklusparameter zur Optimierung der Indikatorempfindlichkeit
  • Das ATR-Stopp-Stopp-Multiplikator ist einstellbar
  • Das sind die wichtigsten Faktoren, die die Entwicklung der Wirtschaft beeinflussen.

Zusammenfassen

Diese Strategie berücksichtigt die Richtung des Trends, die Überkauf-Überverkauf-Phänomene und die Bandbreite der Schwankungen, um die Zeit des Einstiegs zu erkennen. Die Verwendung der EMA-Mittellinie und der Stochastic RSI-Indikator in Kombination kann den Trend effektiv erkennen, und die ATR-Dynamik, die den Stop-Loss-Stop verfolgt, hilft bei der Risikokontrolle. Durch die Anpassung und Optimierung der Parameter kann die Strategie zu einem zuverlässigen Trend-Tracking-System werden.

Strategiequellcode
/*backtest
start: 2023-10-15 00:00:00
end: 2023-11-14 00:00:00
period: 1h
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/
// © FreddieChopin
 
//@version=4
strategy("3 x EMA + Stochastic RSI + ATR", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100)
 
// 3x EMA
ema1Length = input(8, "EMA1 Length", minval = 1)
ema2Length = input(14, "EMA2 Length", minval = 1)
ema3Length = input(50, "EMA3 Length", minval = 1)
ema1 = ema(close, ema1Length)
ema2 = ema(close, ema2Length)
ema3 = ema(close, ema3Length)
 
plot(ema1, color = color.green)
plot(ema2, color = color.orange)
plot(ema3, color = color.red)
 
// Stochastic RSI
smoothK = input(3, "K", minval=1)
smoothD = input(3, "D", minval=1)
lengthRSI = input(14, "RSI Length", minval=1)
lengthStoch = input(14, "Stochastic Length", minval=1)
src = input(close, title="RSI Source")
rsi1 = rsi(src, lengthRSI)
k = sma(stoch(rsi1, rsi1, rsi1, lengthStoch), smoothK)
d = sma(k, smoothD)
 
// ATR
atrPeriod = input(14, "ATR Period")
takeProfitMultiplier= input(2.0, "Take-profit Multiplier")
stopLossMultiplier= input(3.0, "Stop-loss Multiplier")
atrSeries = atr(atrPeriod)[1]
 
longCondition = ema1 > ema2 and ema2 > ema3 and crossover(k, d)
strategy.entry("long", strategy.long, when = longCondition)
 
float stopLoss = na
float takeProfit = na
 
if (strategy.position_size > 0)
    if (na(stopLoss[1]))
        stopLoss := strategy.position_avg_price - atrSeries * stopLossMultiplier
    else
        stopLoss := stopLoss[1]
    if (na(takeProfit[1]))
        takeProfit := strategy.position_avg_price + atrSeries * takeProfitMultiplier
    else
        takeProfit := takeProfit[1]
 
    strategy.exit("take profit / stop loss", limit = takeProfit, stop = stopLoss)
 
plot(stopLoss, color = color.red, linewidth = 2, style = plot.style_linebr)
plot(takeProfit, color = color.green, linewidth = 2, style = plot.style_linebr)