이 전략은 트렌드 방향을 식별하기 위한 이동 평균과 잠재적인 매수 또는 매도 신호를 찾기 위한 상대 강도 지수(RSI)의 조합을 사용합니다. 개념은 트렌드가 상승할 때 RSI가 과매도 상태를 나타내면 매수하고, 트렌드가 하락할 때 RSI가 과매수 상태를 나타내면 매도하는 것입니다.
//@version=5
strategy("Trend Following with RSI", overlay=false, pyramiding=0, default\_qty\_type=strategy.percent\_of\_equity, default\_qty\_value=10)
// Define inputs
smaPeriod = input.int(50, title="SMA Period")
rsiPeriod = input.int(14, title="RSI Period")
rsiOverbought = input.int(70, title="RSI Overbought Level")
rsiOversold = input.int(30, title="RSI Oversold Level")
// Calculate indicators
smaLine = ta.sma(close, smaPeriod)
rsiLine = ta.rsi(close, rsiPeriod)
// Define trend
uptrend = close > smaLine
downtrend = close < smaLine
// Generate signals
buySignal = uptrend and rsiLine < rsiOversold
sellSignal = downtrend and rsiLine > rsiOverbought
// Plotting
plot(smaLine, color=color.blue, title="SMA")
hline(rsiOverbought, "Overbought", color=color.red)
hline(rsiOversold, "Oversold", color=color.green)
// Strategy execution
if (buySignal)
strategy.entry("Buy", strategy.long)
if (sellSignal)
strategy.close("Buy")
// Additional: Enter short positions in a strong downtrend (optional)
shortSignal = downtrend and rsiLine < rsiOversold
if (shortSignal)
strategy.entry("Short", strategy.short)
// Exit short positions on recovery
coverSignal = uptrend or rsiLine > rsiOverbought
if (coverSignal)
strategy.close("Short")
전략 개요:
- 트렌드 식별: 50기간 단순 이동 평균(SMA)을 사용합니다. 가격이 SMA 위에 있을 때 상승 트렌드로, 가격이 SMA 아래에 있을 때 하락 트렌드로 식별합니다.
- 신호 생성: 14기간 RSI를 사용합니다. 상승 트렌드 중 RSI가 30(과매도) 아래로 떨어지면 매수 신호가 생성됩니다. 하락 트렌드 중 RSI가 70(과매수) 위로 올라가면 매도 신호가 생성됩니다.
- 포지션 관리: 매수 신호에 따라 롱 포지션을 진입하고 매도 신호에 따라 포지션을 청산합니다. 반대로 숏 포지션에 대해서도 동일합니다.
전략 특징:
- 지표 사용: 트렌드 방향을 위한 SMA와 진입 신호를 위한 RSI를 결합하여, 트렌드 추종과 모멘텀을 모두 활용합니다.
- 위험 관리:
default_qty_type
과default_qty_value
를 조정하여 각 거래와 관련된 위험을 관리할 수 있습니다. - 유연성: 시장 방향에 따라 상승 트렌드에서의 롱 포지션 진입과 하락 트렌드에서의 숏 포지션 진입 모두를 포함하여, 시장 방향에 따라 유연하게 대응할 수 있습니다.
주의사항:
- 백테스팅: 다양한 시장 조건에서 이 전략의 성능을 이해하기 위해 역사적 데이터에 대한 백테스팅이 중요합니다.
- 맞춤 설정: 위험 감수 성향과 거래 스타일에 따라, SMA와 RSI의 기간, 과매수/과매도 임계값 등 입력 파라미터를 조정할 수 있습니다.
- 시장 조건: 이 전략은 과거에 효과가 있던 시장 조건이 미래에도 계속 효과가 있을 것이라고 가정합니다. 이는 항상 그런 것은 아닙니다.
이 스크립트는 트렌드를 따르는 전략의 기초를 제공하며, 개별 거래 선호도와 목표에 맞게 추가로 맞춤 설정하고 세부 조정할 수 있습니다.