Strategi ini menggabungkan tiga indikator klasifikasi: RSI, CCI dan Williams%R untuk menghasilkan sinyal perdagangan yang efektif. Ini akan mengeluarkan sinyal beli atau jual ketika ketiga indikator secara bersamaan menampilkan sinyal overbought atau oversold. Dibandingkan dengan menggunakan satu indikator, strategi komposit ini menyaring lebih banyak sinyal palsu dan meningkatkan stabilitas.
Strategi ini disebut
Strategi ini terutama didasarkan pada indikator berikut untuk keputusan perdagangan:
Ketika RSI di bawah 25, itu menandakan status oversold. Ketika RSI di atas 75, itu menandakan status overbought. Logika yang sama berlaku untuk parameter CCI dan Williams%R.
Ketika ketiga indikator secara bersamaan menampilkan sinyal beli, yaitu RSI < 25, CCI < -130, Williams %R < -85, strategi akan panjang. Ketika ketiga indikator secara bersamaan menampilkan sinyal jual, yaitu RSI > 75, CCI > 130, Williams %R > -15, strategi akan pendek.
Ini menghindari sinyal palsu dari satu indikator dan meningkatkan keandalan. Ini juga mengkonfigurasi stop loss dan take profit untuk mengontrol risiko dan pengembalian per perdagangan.
Kombo multi-indikator menyaring sinyal palsu
Dengan menggabungkan RSI, CCI dan Williams%R, strategi ini menyaring beberapa sinyal palsu dari indikator individu, meningkatkan akurasi.
Auto stop loss/profit takes mengelola risiko Fungsi stop loss dan take profit internal secara otomatis menetapkan harga keluar untuk setiap perdagangan, secara efektif membatasi kerugian dalam ambang batas yang dapat ditoleransi.
Cocok untuk perdagangan jangka menengah Strategi ini bekerja lebih baik untuk perdagangan jangka menengah, dengan jelas mengidentifikasi titik infleksi jangka menengah melalui kombinasi indikator.
Data backtest yang solid
Strategi ini menggunakan bar 45 menit dari EUR/USD, pasangan forex utama dengan likuiditas dan data yang melimpah, mengurangi risiko overfit dari data yang tidak cukup.
Identifikasi tren jangka panjang yang lemah
Strategi ini lebih bergantung pada sinyal yang bertentangan. Kemampuannya untuk mengukur dan mengikuti tren jangka panjang terbatas. Selama pasar satu arah jangka panjang, potensi keuntungan dibatasi.
Hilangnya perubahan jangka pendek Dengan bar 45 menit, strategi melewatkan peluang menguntungkan dari perubahan harga jangka pendek yang lebih sering.
Risiko sistemik
Strategi ini terutama berlaku untuk EUR/USD. Pada saat krisis ekonomi yang parah yang mengguncang pasar forex global, aturan perdagangan dapat gagal, menimbulkan kerugian besar.
Menambahkan indikator yang mengikuti tren
Cobalah untuk memasukkan metrik tren seperti MA, Boll dll untuk membantu pengenalan tren jangka panjang.
Mengoptimalkan parameter stop loss/profit Backtest lebih banyak data historis untuk menilai dampak dari berbagai parameter stop loss / profit pada profitabilitas akhir, untuk menemukan pengaturan yang optimal.
Memperluas produk
Saat ini terutama berlaku untuk EUR / USD. Kita dapat mencoba untuk menyebarkannya pada pasangan mata uang utama lainnya seperti GBP, JPY, AUD untuk memeriksa stabilitas dan transferabilitas.
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-23 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("RSI CCI Williams %R Strategy with TP and SL", overlay=true) // Input parameters for indicators rsi_period = input(14, title="RSI Period") cci_period = input(20, title="CCI Period") williams_period = input(14, title="Williams %R Period") // Thresholds for overbought and oversold conditions rsi_oversold = input(25, title="RSI Oversold Level") rsi_overbought = input(75, title="RSI Overbought Level") cci_oversold = input(-130, title="CCI Oversold Level") cci_overbought = input(130, title="CCI Overbought Level") williams_oversold = input(-85, title="Williams %R Oversold Level") williams_overbought = input(-15, title="Williams %R Overbought Level") // Take profit and stop loss levels as a percentage take_profit_pct = input(1.2, title="Take Profit (%)") / 100 stop_loss_pct = input(0.45, title="Stop Loss (%)") / 100 // Indicator calculations rsi = ta.rsi(close, rsi_period) cci = ta.cci(close, cci_period) highestHigh = ta.highest(high, williams_period) lowestLow = ta.lowest(low, williams_period) williamsR = (highestHigh - close) / (highestHigh - lowestLow) * -100 // Entry conditions longCondition = rsi < rsi_oversold and cci < cci_oversold and williamsR < williams_oversold and strategy.position_size == 0 shortCondition = rsi > rsi_overbought and cci > cci_overbought and williamsR > williams_overbought and strategy.position_size == 0 // Execute strategy entry orders if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Take Profit or Stop Loss Long", "Long", limit=close * (1 + take_profit_pct), stop=close * (1 - stop_loss_pct)) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Take Profit or Stop Loss Short", "Short", limit=close * (1 - take_profit_pct), stop=close * (1 + stop_loss_pct)) // Plot the signals on the chart plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.triangleup, text="BUY") plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.triangledown, text="SELL") // Plot the indicators for visualization plot(rsi, title="RSI", color=color.blue) plot(cci, title="CCI", color=color.purple) plot(williamsR, title="Williams %R", color=color.orange)