이 전략은 다중 이동 평균, 상대 강도 지수 (RSI), 평균 방향 지수 (ADX) 및 볼륨 분석을 결합한 포괄적 인 양적 거래 시스템입니다. 전략은 거래 신뢰성을 높이기 위해 볼륨과 추진력 필터를 사용하여 여러 기술적 지표를 통해 트렌드 확인에 기반한 거래를 실행합니다.
핵심 논리는 몇 가지 핵심 요소에 기반합니다.
다중 이동 평균 시스템은 기본 트렌드 판단을 제공합니다. ADX는 강한 트렌드에서만 거래를 보장합니다. RSI는 극단적인 추격을 피하는 데 도움이됩니다. 볼륨 분석은 높은 시장 활동 기간 동안 거래를 보장합니다.
위험 관리 권고:
이 전략은 여러 가지 기술 지표가 협동하여 비교적 완전한 트렌드 다음 시스템을 구축합니다. 주요 특징은 다양한 필터를 통해 위험을 제어하면서 거래 신뢰성을 향상시키기 위해 여러 확인을 사용하는 것입니다. 일부 기회를 놓칠 수 있지만 일반적으로 거래 안정성을 향상시키는 데 도움이됩니다. 제안된 최적화 방향은 더 많은 전략 향상을위한 공간을 제공합니다.
/*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")