저위험 DCA 트렌드 트레이딩 전략


생성 날짜: 2024-01-22 10:20:40 마지막으로 수정됨: 2024-01-22 10:20:40
복사: 0 클릭수: 836
avatar of ChaoZhang ChaoZhang
1
집중하다
1617
수행원

저위험 DCA 트렌드 트레이딩 전략

개요

이 전략은 BTCUSDT 4시간 시간 주기 기반의 DCA 트렌드 거래 전략이다. 이 전략의 주요 아이디어는 RSI 지표가 오버 바이 오버 셀 영역이 형성되는 때 이탈할 때 거래 신호를 발산하는 것이다.

전략 원칙

이 전략은 RSI 지표를 사용하여 과매매 신호를 판단한다. RSI가 70보다 크면 과매매 신호이며, 30보다 작으면 과매매 신호이다. RSI가 과매매 영역에서 아래로 떨어지거나 과매매 영역에서 반등을 할 때, 상위권을 형성하여 공백 신호를 발산 할 수 있으며, RSI가 과매 영역에서 위를 돌파하거나 과매 영역에서 반등을 할 때, 하위권을 형성하여 과매 신호를 발산 할 수 있습니다.

그러나 신호를 더 확인하기 위해, 이 전략은 포괄적 인 K선 형태를 판단하는 데 도움을 줍니다. 따라서 RSI가 역전되는 동시에, 오버 바이 역전이 음선으로, 오버 세 역전이 양선으로 나타나면, 결정된 거래 신호를 발송합니다. 이것은 잘못된 신호의 가능성을 더욱 줄일 수 있습니다.

거래 신호가 나타나면, 다단 신호라면, 매매 가격의 일정한 비율에 따라 매매를 하고, 이어서 연속적인 설정을 추적해 구매 중지 주문서를 DCA 효과를 구현한다. 전략은 최대 5개의 매매 위치를 허용한다. 공백 신호가 나타나면, 현재 모든 다단 위치를 모두 매매한다.

우위 분석

이 전략의 가장 큰 장점은 위험 제어에 있다. 첫째, RSI 지표와 결합 K선 형태 필터링은 잘못된 신호율을 크게 줄이고 신호의 신뢰성을 보장한다. 둘째, 분기적으로 창고 DCA 전략을 채택하면 위험을 분산시킬 수 있으며, 움직임이 불리하더라도 단일 포지션 손실에 대한 통제가 있다. 또한 허용되는 최대 포지션 수는 5 개이며, 포지션 집중은 너무 높지 않습니다.

위험 분석

이 전략의 가장 큰 위험은 포지션 보유 시간이 상대적으로 길어질 수 있다는 것이다. DCA 전략과 트렌드 추적 방식을 적용하면, 특히 시장 상황이 좋지 않을 때, 포지션 보유 시간이 상대적으로 길어질 수 있다. 이것은 포지션 비용을 증가시킬 가능성이 있으며, 심지어 역전 손실 위험에 직면할 수도 있다.

또한, 포지션 구축 논리가 더 복잡하여 오작동 위험도 증가한다. RSI 신호와 K선 신호를 종합적으로 판단할 필요가 있으며, 조작의 난이도가 높으며, 판단 오류가 발생하면 오작동 포지션 구축이 쉽게 된다. 이것은 초보자에게는 비교적 큰 시험이다.

최적화 방향

이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.

  1. 스톱 로직을 추가한다. 특정 손실 조건에서 스톱을 강제할 수 있으며, 단일 포지션이 너무 큰 손실을 초래하는 것을 방지한다.

  2. 포지션 비율을 최적화하십시오. 다양한 포지션 크기를 테스트하여 수익보다 위험이 더 좋은 포지션 설정을 찾을 수 있습니다.

  3. 다른 지표를 테스트하십시오. MACD, KD와 같은 다른 지표를 테스트 할 수 있습니다. 대안 또는 보조 RSI가 신호의 정확성을 향상시킬 수 있는지 확인하십시오.

  4. 최적화 시간 주기를 다른 시간 주기 변수를 테스트하여 이 전략의 논리에 가장 잘 맞는 주기 변수 조합을 찾을 수 있다.

요약하다

이 낮은 위험 DCA 트렌드 트레이딩 전략은 RSI를 중심으로, K선 신호를 보조하여, 추적 스톱을 사용하는 방식으로 DCA 입장을 실현한다. 전략의 위험은 제어 가능하며, 시장의 위험 능력이 약한 투자자에게 적합하다. 그러나 위치 시간이 너무 길고 잘못된 조작 판단과 같은 문제도 있다. 지속적인 최적화를 통해 전략의 성능을 향상시킬 수 있다.

전략 소스 코드
/*backtest
start: 2023-01-15 00:00:00
end: 2024-01-21 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy("Phil's Pine Scripts - low risk long DCA Trend trade", overlay=true)

////
//// trade on BTCUSDT 4H chart
//// $500 balance = $50 per trade, max 5 positions
//// backtested 54% profit over 3 years (~270)
////

//// define $ amount per trade
position_size = 50000

//// Plot short / long signals

// Get user input
rsiSource = input(title="RSI Source", type=input.source, defval=close)
rsiLength = input(title="RSI Length", type=input.integer, defval=14)
rsiOverbought = input(title="RSI Overbought Level", type=input.integer, defval=70)
rsiOversold = input(title="RSI Oversold Level", type=input.integer, defval=30)

// Get RSI value
rsiValue = rsi(rsiSource, rsiLength)
rsiOB = rsiValue >= rsiOverbought
rsiOS = rsiValue <= rsiOversold

// Identify engulfing candles
bullishEC = close > open[1] and close[1] < open[1]
bearishEC = close < open[1] and close[1] > open[1]
tradeSignal = ((rsiOS or rsiOS[1]) and bullishEC) or ((rsiOB or rsiOB[1]) and bearishEC)

// Plot signals to chart
plotshape(tradeSignal and bullishEC, title="Long", location=location.belowbar, color=color.green, transp=0, style=shape.triangleup, text="Long")
plotshape(tradeSignal and bearishEC, title="Short", location=location.abovebar, color=color.red, transp=0, style=shape.triangledown, text="Short")

//// DCA long trade when there is a bullish signal

if tradeSignal and bullishEC
    strategy.entry("OL", strategy.long, qty=position_size / close)

//// Close all positions when there is a bearish signal

if tradeSignal and bearishEC
    strategy.close_all()