Strategi ini adalah sistem perdagangan kuantitatif yang komprehensif yang menggabungkan pelbagai purata bergerak, Indeks Kekuatan Relatif (RSI), Indeks Arah Purata (ADX), dan analisis jumlah. Strategi ini melaksanakan dagangan berdasarkan pengesahan trend melalui beberapa penunjuk teknikal, menggunakan penapis jumlah dan momentum untuk meningkatkan kebolehpercayaan perdagangan.
Logik teras berdasarkan beberapa komponen utama: 1. Sistem purata bergerak berbilang menggunakan Double HullMA, Purata Bergerak Berimbang Volume (VWMA), dan Purata Bergerak Berimbang Asas (WMA) 2. Penilaian kekuatan trend menggunakan penunjuk ADX, hanya berdagang dalam trend yang kuat 3. penapisan RSI untuk mengelakkan keadaan pasaran yang melampau 4. Analisis jumlah yang memerlukan jumlah di atas ambang untuk isyarat perdagangan 5. Penentuan arah perdagangan melalui persimpangan garisan n1 dan n2
Sistem purata bergerak berganda menyediakan penilaian trend asas, ADX memastikan perdagangan hanya dalam trend yang kuat, RSI membantu mengelakkan mengejar ekstrem, dan analisis jumlah memastikan perdagangan semasa tempoh aktiviti pasaran yang tinggi.
Cadangan pengurusan risiko: - Sesuaikan parameter berdasarkan ciri pasaran - Tetapkan tahap stop-loss dan mengambil keuntungan yang sesuai - Pengukuran kedudukan kawalan - Ujian semula strategi biasa
Strategi ini membina sistem trend berikut yang agak lengkap melalui pelbagai penunjuk teknikal yang bekerja bersama. Ciri utamanya adalah menggunakan pelbagai pengesahan untuk meningkatkan kebolehpercayaan perdagangan sambil mengawal risiko melalui pelbagai penapis. Walaupun ia mungkin kehilangan beberapa peluang, ia umumnya membantu meningkatkan kestabilan perdagangan. Arahan pengoptimuman yang dicadangkan memberikan ruang untuk peningkatan strategi lebih lanjut.
/*backtest start: 2024-11-11 00:00:00 end: 2024-12-10 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Optimized Multi-MA Strategy with Volume, ADX and RSI", overlay=true) // Kullanıcı Parametreleri keh = input.int(3, title="Double HullMA", minval=1) teh = input.int(3, title="Volume-Weighted MA", minval=1) yeh = input.int(75, title="Base Weighted MA", minval=1) rsiPeriod = input.int(14, title="RSI Period", minval=1) adxPeriod = input.int(14, title="ADX Period", minval=1) volumeLookback = input.int(10, title="Volume Lookback Period", minval=1) // Son X mumun hacmi adxThreshold = input.int(20, title="ADX Trend Strength Threshold", minval=1) // ADX için trend gücü eşiği // Hareketli Ortalamalar rvwma = ta.vwma(close, teh) yma = ta.wma(close, yeh) n2ma = 2 * ta.wma(close, math.round(keh / 2)) nma = ta.wma(close, keh) diff = n2ma - nma sqrtKeh = math.round(math.sqrt(keh)) n1 = ta.wma(diff, sqrtKeh) n2 = ta.wma(diff[1], sqrtKeh) // ADX Hesaplaması trueRange = ta.rma(ta.tr, adxPeriod) plusDM = ta.rma(math.max(high - high[1], 0), adxPeriod) minusDM = ta.rma(math.max(low[1] - low, 0), adxPeriod) plusDI = (plusDM / trueRange) * 100 minusDI = (minusDM / trueRange) * 100 dx = math.abs(plusDI - minusDI) / (plusDI + minusDI) * 100 adx = ta.rma(dx, adxPeriod) trendIsStrong = adx > adxThreshold // RSI Filtreleme rsiValue = ta.rsi(close, rsiPeriod) rsiFilter = rsiValue > 30 and rsiValue < 70 // Aşırı alım ve aşırı satım bölgelerinin dışında olmak // Hacim Filtresi volumeThreshold = ta.sma(volume, volumeLookback) // Ortalama hacim seviyesi highVolume = volume > volumeThreshold // Sinyal Şartları (Sadece güçlü trendler ve rsi'nın aşırı bölgelerde olmaması) longCondition = n1 > n2 and close > rvwma and trendIsStrong and rsiFilter and highVolume shortCondition = n1 < n2 and close < rvwma and trendIsStrong and rsiFilter and highVolume // Hacim Filtresi ile İşaretler plotshape(series=longCondition and highVolume ? close : na, style=shape.triangleup, location=location.belowbar, color=color.blue, size=size.small, title="High Volume Long Signal") plotshape(series=shortCondition and highVolume ? close : na, style=shape.triangledown, location=location.abovebar, color=color.purple, size=size.small, title="High Volume Short Signal") // Strateji Giriş ve Çıkış Şartları if (longCondition) strategy.entry("Long", strategy.long) if (shortCondition) strategy.entry("Short", strategy.short) // Görsel Göstergeler plot(n1, color=color.green, title="N1 Line") plot(n2, color=color.red, title="N2 Line") plot(rvwma, color=color.yellow, linewidth=2, title="VWMA") plot(yma, color=color.orange, title="Base Weighted MA")