Strategi ini menggunakan persilangan purata bergerak pantas (EMA) dan purata bergerak perlahan (EMA), digabungkan dengan Indeks Kekuatan Relatif (RSI) dan penembusan trendline untuk menangkap peluang perdagangan trend. Apabila EMA pantas melintasi di atas EMA perlahan atau harga melanggar di atas garis trend menaik, dan RSI berada di bawah tahap overbought, strategi menghasilkan isyarat panjang. Sebaliknya, apabila EMA pantas melintasi di bawah EMA perlahan atau harga melanggar di bawah garis trend menurun, dan RSI berada di atas tahap oversold, strategi menghasilkan isyarat pendek. Pendekatan menggabungkan purata bergerak, RSI, dan penembusan trendline dapat menangkap pasaran trend secara berkesan sambil mengelakkan kemasukan prematur dalam keadaan bergolak.
Dengan menggabungkan EMA, RSI, dan trendline breakout, strategi ini dapat menangkap peluang perdagangan trend dengan berkesan. Walau bagaimanapun, ia juga melibatkan risiko tertentu, seperti isyarat palsu dan ketergantungan pada data sejarah. Oleh itu, dalam aplikasi praktikal, pengoptimuman dan penambahbaikan yang sesuai harus dibuat berdasarkan ciri pasaran dan pilihan risiko peribadi, seperti memperkenalkan lebih banyak penunjuk, menetapkan parameter berhenti rugi dan mengambil keuntungan dinamik, mengoptimumkan, dll. Di samping itu, menggabungkan analisis asas dapat memberikan pemahaman yang lebih komprehensif tentang trend pasaran, meningkatkan kekuatan dan keuntungan strategi.
/*backtest start: 2023-05-22 00:00:00 end: 2024-05-27 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Gold Trading Strategy 15 min", overlay=true) // Input parameters fast_ma_length = input.int(10, title="Fast MA Length") slow_ma_length = input.int(30, title="Slow MA Length") rsi_length = input.int(14, title="RSI Length") rsi_overbought = input.int(70, title="RSI Overbought Level") rsi_oversold = input.int(30, title="RSI Oversold Level") lookback = input.int(50, title="Trendline Lookback Period") // Indicators fast_ma = ta.sma(close, fast_ma_length) slow_ma = ta.sma(close, slow_ma_length) rsi = ta.rsi(close, rsi_length) // Trendline breakout detection highs = ta.highest(high, lookback) lows = ta.lowest(low, lookback) trendline_breakout_up = ta.crossover(close, highs) trendline_breakout_down = ta.crossunder(close, lows) // Entry conditions udao_condition = (ta.crossover(fast_ma, slow_ma) or trendline_breakout_up) and rsi < rsi_overbought girao_condition = (ta.crossunder(fast_ma, slow_ma) or trendline_breakout_down) and rsi > rsi_oversold // Strategy execution if (udao_condition) strategy.entry("उदाओ", strategy.long) if (girao_condition) strategy.entry("गिराओ", strategy.short) // Plotting plot(fast_ma, color=color.blue, title="Fast MA") plot(slow_ma, color=color.red, title="Slow MA") hline(rsi_overbought, "RSI Overbought", color=color.red) hline(rsi_oversold, "RSI Oversold", color=color.green) plot(rsi, color=color.purple, title="RSI") plotshape(series=udao_condition, location=location.belowbar, color=color.green, style=shape.labelup, title="उदाओ Signal") plotshape(series=girao_condition, location=location.abovebar, color=color.red, style=shape.labeldown, title="गिराओ Signal") // Plot trendline breakout levels plot(highs, color=color.orange, linewidth=2, title="Resistance Trendline") plot(lows, color=color.yellow, linewidth=2, title="Support Trendline")