Diese Strategie ist ein umfassendes Handelssystem, das mehrere Indikatoren kombiniert, hauptsächlich auf Basis von Exponential Moving Averages (EMA), Supertrend-Indikator, Bollinger Bands (BB) und Relative Strength Index (RSI).
Die Strategie verwendet eine Kombination von mehrschichtigen technischen Indikatoren, um Markttrends und Volatilitätschancen zu erfassen:
Auslöser für Handelssignale:
Diese Strategie baut ein relativ vollständiges Handelssystem durch die organische Kombination mehrerer technischer Indikatoren auf. Die Zusammenarbeit zwischen EMA und Supertrend liefert primäre Handelssignale, ADX-Filterung sorgt dafür, dass der Handel in starken Trendumgebungen stattfindet, während Bollinger Bands und RSI-Hilfenanalyse zusätzliche Marktperspektiven bieten. Die Hauptvorteile der Strategie liegen in der Signalzuverlässigkeit und der Systemvollständigkeit, aber sie steht auch vor Herausforderungen bei Signalverzögerung und Parameteroptimierung. Durch die vorgeschlagenen Optimierungsrichtungen hat die Strategie das Potenzial, die Rentabilität zu steigern und gleichzeitig die Stabilität zu erhalten.
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-04 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //made by Chinmay //@version=6 strategy("CJ - Multi1", overlay=true) // Input for RSI length rsi_length = input.int(14, title="RSI Length") // Calculate Daily RSI daily_rsi = ta.rsi(close, rsi_length) // Calculate Weekly RSI (using security function to get weekly data) weekly_rsi = request.security(syminfo.tickerid, "W", ta.rsi(close, rsi_length)) // Calculate Monthly RSI (using security function to get weekly data) monthly_rsi = request.security(syminfo.tickerid, "M", ta.rsi(close, rsi_length)) // Plot the RSIs plot(daily_rsi, color=color.blue, title="Daily RSI", linewidth=2) plot(weekly_rsi, color=color.red, title="Weekly RSI", linewidth=2) plot(monthly_rsi, color=color.black, title="Monthly RSI", linewidth=2) // Create horizontal lines at 30, 50, and 70 for RSI reference hline(30, "Oversold", color=color.green) hline(70, "Overbought", color=color.red) hline(50, "Neutral", color=color.gray) // Bollinger Bands Calculation bb_length = 20 bb_mult = 2 bb_stddev = ta.stdev(close, bb_length) bb_average = ta.sma(close, bb_length) bb_upper = bb_average + bb_mult * bb_stddev bb_lower = bb_average - bb_mult * bb_stddev plot(bb_upper, color=color.new(#ffb13b, 0), linewidth=2) plot(bb_average, color=color.new(#b43bff, 0), linewidth=2) plot(bb_lower, color=color.new(#ffb13b, 0), linewidth=2) // Inputs for EMA ema_L1 = input.int(defval=13, title="EMA Length 1") ema_L2 = input.int(defval=34, title="EMA Length 2") ema_L3 = input.int(defval=100, title="EMA Length 3") adx_level = input.int(defval=25, title="ADX Level") // Inputs for Supertrend atr_l = input.int(defval=10, title="ATR Length") factor = input.float(defval=3.0, title="Supertrend Multiplier") // Calculate EMA ema1 = ta.ema(close, ema_L1) ema2 = ta.ema(close, ema_L2) ema3 = ta.ema(close, ema_L3) // Calculate Supertrend [supertrend, direction] = ta.supertrend(factor, atr_l) // Calculate ADX and DI [diplus, diminus, adx] = ta.dmi(14,14) // Buy and Sell Conditions buy = direction == -1 and ema1 > ema2 and close > ta.ema(close, 100) and adx > adx_level short = direction == -1 and ema1 < ema2 and close < ta.ema(close, 100) and adx > adx_level sell = ta.crossunder(close, supertrend) cover = ta.crossover(close, supertrend) // Strategy Logic if buy strategy.entry("Buy", strategy.long, comment="Long Entry") if sell strategy.close("Buy", comment="Sell Exit") // Uncomment for Short Strategy if short strategy.entry("Short", strategy.short, comment="Short Entry") if cover strategy.close("Short", comment="Cover Exit")