
Strategi Indikator Ganda (bahasa Inggeris: Dual Indicator Strategy) adalah strategi perdagangan kuantitatif yang menggabungkan purata bergerak sederhana (SMA) dan purata bergerak berpusat (MACD) secara serentak. Strategi ini menggunakan pelbagai petunjuk teknikal untuk mengesahkan isyarat perdagangan dan bertujuan untuk meningkatkan ketepatan keputusan perdagangan.
Strategi dua kali ganda adalah berdasarkan kepada dua petunjuk teknikal: SMA dan MACD. Strategi menggunakan SMA dengan 7 akar, 15 akar dan 60 akar K, dan MACD dengan parameter standard 12 / 26 / 9.
Apabila 7 SMA lebih tinggi daripada 15 dan 60 SMA, 15 SMA juga lebih tinggi daripada 60 SMA, dianggap sebagai isyarat bullish yang diberikan oleh penunjuk SMA, dengan kebarangkalian 0.5 ◦
Pada masa yang sama, apabila MACD indikator MACD melintasi garis isyarat, ia juga dianggap sebagai isyarat penunjuk yang diberikan oleh MACD indikator, dengan kebarangkalian 0.5.
Apabila kebarangkalian isyarat bullish kedua-dua petunjuk ditambah 1 maka anda boleh membeli dan membuka kedudukan.
Sebaliknya, apabila 7 SMA adalah lebih rendah daripada 15 dan 60 SMA, 15 SMA juga lebih rendah daripada 60 SMA, ia dianggap sebagai isyarat penurunan yang diberikan oleh indikator SMA, dengan kebarangkalian 0.5.
Pada masa yang sama, apabila MACD indikator MACD melintasi garis isyarat, ia juga dianggap sebagai isyarat penurunan yang diberikan oleh indikator MACD, dengan kebarangkalian 0.5 .
Apabila kebarangkalian kedua-dua isyarat turun naik mencapai 1, maka jualan dan bukaan kedudukan akan dilakukan.
Di samping itu, strategi ini menggunakan dua titik berhenti yang berbeza: 50% dari kedudukan kosong apabila harga naik atau turun 9% dan semua kedudukan kosong apabila harga naik atau turun 21%.
Jika terdapat isyarat yang bertentangan dengan arah pegangan semasa, ia akan menebus pegangan sebelumnya, dan kemudian membuka kedudukan mengikut isyarat baru.
Kelebihan utama strategi dua indikator adalah bahawa kedua-dua indikator SMA dan MACD boleh digunakan secara serentak. SMA dapat mengesan perubahan trend harga dengan berkesan, menapis bunyi pasaran; dan MACD dapat mencari masa pembalikan trend jangka pendek. Gabungan kedua-duanya dapat meningkatkan kebolehpercayaan isyarat perdagangan.
Di samping itu, pelbagai set SMA dengan parameter yang berbeza membantu untuk mengenal pasti trend jangka panjang; dan strategi stop-loss dapat mengunci sebahagian daripada keuntungan dan mengawal risiko.
Terdapat juga beberapa risiko yang berpotensi dalam strategi penunjuk ganda yang perlu diperhatikan. Oleh kerana hanya bergantung pada penunjuk teknikal, mungkin terdapat keadaan di mana penunjuk menghantar isyarat yang salah. Selain itu, penyetelan penangguhan yang tidak betul juga boleh menyebabkan berlepas terlalu awal dan terlepas kejatuhan besar.
Anda boleh mengoptimumkan strategi dengan menyesuaikan parameter kitaran SMA atau menambah indikator gelombang lain untuk memastikan isyarat perdagangan lebih dipercayai. Pada masa yang sama, tahap berhenti juga perlu disesuaikan secara dinamik dengan tahap turun naik pasaran untuk memastikan anda dapat terus menangkap trend.
Terdapat beberapa ruang yang boleh dioptimumkan untuk strategi dua kali ganda:
Ujian menambah petunjuk teknikal lain, seperti RSI, Brinband dan lain-lain, untuk membentuk penapis pelbagai petunjuk;
Mencuba algoritma pembelajaran mesin untuk membina model keputusan isyarat perdagangan menggunakan pelbagai pembolehubah;
Pengesanan strategi mengikut pelbagai jenis dan parameter kitaran;
Meningkatkan strategi penangguhan kerugian dan mengawal kerugian tunggal;
Mengoptimumkan strategi penangguhan dan mengekalkan keuntungan dalam trend.
Dengan mengesan dan mengoptimumkan sistem, anda dapat meningkatkan kestabilan dan keuntungan strategi anda.
Strategi dual indicator menggabungkan kelebihan kedua-dua indikator SMA dan MACD, dengan meningkatkan ketepatan isyarat, dan mengawal risiko perdagangan dengan berkesan. Strategi ini mempunyai ruang pengoptimuman dan skalabiliti yang baik, dan merupakan strategi perdagangan kuantitatif yang boleh dipercayai dan beradaptasi.
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("SMA & MACD Dual Direction Strategy", shorttitle="SMDDS", overlay=true, initial_capital=1000)
// SMA settings
sma7_length = input.int(7, title="7 Candle SMA Length")
sma15_length = input.int(15, title="15 Candle SMA Length")
sma60_length = input.int(60, title="60 Candle SMA Length")
// MACD settings
fast_length = input.int(12, title="Fast Length")
slow_length = input.int(26, title="Slow Length")
signal_length = input.int(9, title="Signal Length")
// Leverage
leverage = 10
// Calculate the SMAs
sma7 = ta.sma(close, sma7_length)
sma15 = ta.sma(close, sma15_length)
sma60 = ta.sma(close, sma60_length)
// Calculate the MACD line and Signal line
[macdLine, signalLine, _] = ta.macd(close, fast_length, slow_length, signal_length)
// SMA-based Probabilities
smaBullishProb = (sma7 > sma15 and sma7 > sma60 and sma15 > sma60) ? 0.5 : 0.0
smaBearishProb = (sma7 < sma15 and sma7 < sma60 and sma15 < sma60) ? 0.5 : 0.0
// MACD-based Probabilities
macdBullishProb = ta.crossover(macdLine, signalLine) ? 0.5 : 0.0
macdBearishProb = ta.crossunder(macdLine, signalLine) ? 0.5 : 0.0
// Combined Probabilities
combinedBullishProb = smaBullishProb + macdBullishProb
combinedBearishProb = smaBearishProb + macdBearishProb
// Trade logic using `if` conditions
if combinedBullishProb == 1.0
strategy.close("Short")
strategy.entry("Long", strategy.long, qty=leverage)
if combinedBearishProb == 1.0
strategy.close("Long")
strategy.entry("Short", strategy.short, qty=leverage)
// Exit conditions based on profit points
longTargetProfit1 = close * 1.09
longTargetProfit2 = close * 1.21
shortTargetProfit1 = close * 0.91
shortTargetProfit2 = close * 0.79
strategy.exit("Long TP1", from_entry="Long", limit=longTargetProfit1, qty_percent=0.5)
strategy.exit("Long TP2", from_entry="Long", limit=longTargetProfit2)
strategy.exit("Short TP1", from_entry="Short", limit=shortTargetProfit1, qty_percent=0.5)
strategy.exit("Short TP2", from_entry="Short", limit=shortTargetProfit2)
// Visualization (optional)
plot(sma7, color=color.green, title="7 Candle SMA")
plot(sma15, color=color.blue, title="15 Candle SMA")
plot(sma60, color=color.red, title="60 Candle SMA")
hline(0, "Zero Line", color=color.gray)
plot(macdLine - signalLine, color=color.blue, title="MACD Histogram")