리소스 로딩... 로딩...

이중 모멘텀 돌파구 확인 양적 거래 전략

저자:차오장, 날짜: 2024-12-13 10:37:00
태그:WPRRSI

img

전반적인 설명

이 전략은 윌리엄스 %R 및 상대적 강도 지수 (RSI) 를 사용하여 이중 추진력 돌파구 확인을 기반으로 한 양적 거래 전략입니다. 전략은 두 개의 추진력 지표의 교차 돌파구를 통해 거래 신호를 식별하여 잘못된 돌파구의 위험을 효과적으로 줄여줍니다. 과소매 및 과소매 지역에서 거래 기회를 찾고 두 지표의 상호 확인을 통해 거래 정확성을 향상시킵니다.

전략 원칙

이 전략은 30 기간 윌리엄스 %R와 7 기간 RSI를 주요 지표로 사용한다. 윌리엄스 %R가 -80을 넘고 RSI가 동시에 20을 넘을 때 구매 신호가 발생하고, 윌리엄스 %R가 -20을 넘고 RSI가 동시에 80을 넘을 때 판매 신호가 생성된다. 이 이중 확인 메커니즘은 단일 지표에서 잠재적 인 잘못된 신호를 효과적으로 필터링한다. 이 전략은 보다 정확한 지표 값을 위해 기간 내 가장 높고 가장 낮은 가격을 계산함으로써 윌리엄스 %R의 수동 계산을 구현한다.

전략적 장점

  1. 이중 확인 메커니즘은 거래 신호 신뢰성을 크게 향상시킵니다.
  2. 과잉 구매 및 과잉 판매 구역에서의 거래는 더 높은 수익률과 수익 잠재력을 제공합니다.
  3. 지표 매개 변수는 다른 시장 조건에 따라 유연하게 조정할 수 있습니다.
  4. 전략 논리는 간단하고 명확하고 이해하기 쉽고 유지하기 쉽습니다.
  5. 지표 값의 수동 계산은 더 많은 최적화 잠재력을 제공합니다.

전략 위험

  1. 다양한 시장에서 과도한 거래 신호를 생성 할 수 있습니다.
  2. 이중 확인 메커니즘은 약간 지연된 입국 지점을 초래할 수 있습니다.
  3. 고정된 과잉 구매 및 과잉 판매 기준은 다른 시장 환경에서 조정될 수 있습니다.
  4. 단기 RSI는 가격 변동에 민감할 수 있습니다.
  5. 전략의 수익성을 위해 거래 비용이 고려되어야 합니다.

전략 최적화 방향

  1. 강한 트렌드 시장에서 트렌드 상거래를 피하기 위해 트렌드 필터를 도입
  2. 기존 수익을 보호하기 위해 후속 스톱 로스 메커니즘을 추가합니다.
  3. 과도한 구매 및 과도한 판매의 기준을 계산하는 적응적인 방법을 개발
  4. 윌리엄스 %R 및 RSI를 위한 기간 매개 변수 조합을 최적화
  5. 보조 확인 신호로 볼륨 표시기를 추가하는 것을 고려하십시오.

요약

이 전략은 윌리엄스 %R와 RSI의 시너지를 통해 견고한 거래 시스템을 구축합니다. 이중 추진력 확인 메커니즘은 잘못된 신호 위험을 효과적으로 줄이고, 과잉 구매 및 과잉 판매 구역에서의 거래는 좋은 수익 잠재력을 제공합니다. 적절한 위험 통제 및 지속적인 최적화를 통해 전략은 다른 시장 환경에서 안정적인 성과를 유지할 수 있습니다.


/*backtest
start: 2024-11-12 00:00:00
end: 2024-12-11 08:00:00
period: 1h
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Williams %R + RSI Strategy", overlay=true)

// Inputs for Williams %R
wpr_length = input.int(30, title="Williams %R Length", minval=1)
wpr_upper = input.int(-20, title="Williams %R Upper Band", minval=-100, maxval=0)
wpr_lower = input.int(-80, title="Williams %R Lower Band", minval=-100, maxval=0)

// Inputs for RSI
rsi_length = input.int(7, title="RSI Length", minval=1)
rsi_upper = input.int(80, title="RSI Upper Band", minval=0, maxval=100)
rsi_lower = input.int(20, title="RSI Lower Band", minval=0, maxval=100)

// Calculate Williams %R Manually
highest_high = ta.highest(high, wpr_length)
lowest_low = ta.lowest(low, wpr_length)
wpr = ((highest_high - close) / (highest_high - lowest_low)) * -100

// Calculate RSI
rsi = ta.rsi(close, rsi_length)

// Entry and Exit Conditions
longCondition = ta.crossover(wpr, wpr_lower) and ta.crossover(rsi, rsi_lower)
shortCondition = ta.crossunder(wpr, wpr_upper) and ta.crossunder(rsi, rsi_upper)

// Plot Buy/Sell Signals
plotshape(series=longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(series=shortCondition, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")

// Strategy Entry and Exit
if (longCondition)
    strategy.entry("Buy", strategy.long)

if (shortCondition)
    strategy.entry("Sell", strategy.short)


관련

더 많은