다중 이동 평균 거래 시스템은 모멘텀과 볼륨 확인을 정량적 추세 전략과 결합합니다.

MA VWMA WMA RSI ADX
생성 날짜: 2024-12-12 14:27:59 마지막으로 수정됨: 2024-12-12 14:27:59
복사: 2 클릭수: 518
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

다중 이동 평균 거래 시스템은 모멘텀과 볼륨 확인을 정량적 추세 전략과 결합합니다.

개요

이 전략은 여러 평균선, 상대적으로 약한 지표 ((RSI), 평균 트렌드 지표 ((ADX) 와 거래량 분석을 결합한 통합적인 양적 거래 시스템이다. 이 전략은 여러 기술 지표의 협동적인 협조를 통해 트렌드 확인에 기초하여 거래를 수행하고 거래량과 동력 지표의 필터링을 통해 거래 신뢰성을 향상시킵니다.

전략 원칙

전략의 핵심 논리는 다음과 같은 핵심 구성 요소를 기반으로 합니다.

  1. 이중 헐 평균선 ((Double Hull MA) 과 교차량 가중 이동 평균선 ((VWMA) 과 기본 가중 이동 평균선 ((WMA) 을 사용하여 다중 평균선 시스템을 구축
  2. ADX 지표로 트렌드 강도를 판단하고 트렌드가 뚜렷한 경우에만 거래합니다.
  3. RSI 지표를 사용하여 극한 시장 상태를 필터링하여 지역 거래를 과도하게 구매하거나 판매하는 것을 피하십시오.
  4. 합성 거래량 분석으로 거래 신호가 발생했을 때 거래량이 특정 임계치를 초과하도록 요구
  5. n1 및 n2 선의 교차로 특정 거래 방향을 결정합니다.

다중평균선 시스템은 가격 추세에 대한 기준 판단을 제공하며, ADX는 추세가 충분히 강할 때만 거래하는 것을 보장하며, RSI는 추락을 추적하는 것을 피하고, 거래량 분석은 거래가 시장의 활동성이 높은 시기에 이루어지는 것을 보장합니다.

전략적 이점

  1. 복수 인증 메커니즘은 가짜 침입의 위험을 낮춰줍니다.
  2. 기술 지표와 거래량 분석을 결합하여 거래의 신뢰성을 향상시킵니다.
  3. RSI 필터링으로 극한시장 상황을 피하고 불리한 시점에 진입합니다.
  4. ADX의 사용은 트렌드가 분명할 때만 거래하는 것을 보장하고 승률을 높여줍니다.
  5. 거래량 요청은 시장의 합의를 확인하는 데 도움이 됩니다.
  6. 전략 논리는 명확하고 매개변수는 매우 조정 가능합니다.

전략적 위험

  1. 다중 필터링 조건으로 인해 일부 거래 기회를 놓칠 수 있습니다.
  2. 시장의 흔들림 속에서 부진할 수도 있다.
  3. 매개변수 최적화로 인해 과적합이 발생할 수 있습니다.
  4. 평균선 시스템은 빠른 역행 시 반응이 지연될 수 있다
  5. 거래량 필터링은 유동성이 낮은 시장에서 거래 기회를 제한할 수 있습니다.

다음의 방법으로 위험을 관리하는 것이 좋습니다.

  • 다른 시장 특성에 따라 변수를 조정
  • 적당한 스톱을 설정하세요.
  • 각 거래에 대한 자본 비율을 제어합니다.
  • 전략의 유효성을 주기적으로 재검토합니다.

전략 최적화 방향

  1. 시장 상황에 따라 동적으로 조정하기 위한 적응형 매개변수 메커니즘 도입
  2. 시장 변동율 필터를 추가하여 높은 변동성 기간 동안 포지션을 조정합니다.
  3. 출전 메커니즘을 개선하고, 손실 추적을 추가하는 것을 고려할 수 있다.
  4. 절대값이 아닌 상대적인 거래량을 고려하여 거래량 필터를 최적화하십시오.
  5. 중요한 소식이 나오지 않도록 시간 필터를 추가하세요.
  6. 가격 변동성 지표를 추가하여 시장 위험을 인식하는 것을 고려하십시오.

요약하다

이 전략은 여러 기술 지표의 협동적 협동으로 비교적 완벽한 트렌드 추적 시스템을 구축한다. 전략의 주요 특징은 여러 가지 확인을 통해 거래의 신뢰성을 높이고, 다양한 필터를 통해 위험을 제어하는 것이다. 일부 거래 기회를 놓칠 수 있지만, 전체적으로 거래의 안정성을 높이는 데 도움이 된다.

전략 소스 코드
/*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")