이 글은 주로 RSI와 WMA를 기반으로 한 양적 거래 전략을 소개한다. 이 전략은 RSI와 WMA의 값을 계산하고, 구매 및 판매 신호의 조건을 설정하여 주식 가격 반전점을 발견하여, 낮은 가격으로 높은 가격으로 판매하는 것을 목표로 한다.
이 전략의 핵심 지표는 RSI와 WMA이다. RSI (Relative Strength Index) 는 주식의 최근 상승과 하락의 변화를 측정하는 변동 지표이다. WMA (Weighted Moving Average) 는 중화 이동 평균이다.
전략의 구매 신호는 RSI가 WMA를 통과했을 때 생성되며, 이는 주가 가격이 반전되어 상승하기 시작할 가능성이 있음을 나타냅니다. 전략의 판매 신호는 RSI가 WMA를 통과했을 때 생성되며, 이는 가격이 반전되어 하락하기 시작할 가능성이 있음을 나타냅니다.
구체적으로, 전략은 먼저 14일 RSI의 값을 계산하고 45일 WMA의 값을 계산한다. RSI가 WMA를 통과하면 구매 신호를 생성하고, RSI가 WMA를 통과하면 판매 신호를 생성한다. RSI와 WMA의 조합을 통해 가격의 역점을 더 정확하게 잡을 수 있다.
이 전략에는 다음과 같은 장점이 있습니다.
이 전략에는 다음과 같은 위험도 있습니다.
이러한 위험은 변수 조정, 손해 중지 설정, 필터링 시장 위험 등의 방법으로 회피할 수 있다.
이 전략은 다음과 같은 부분에서 최적화될 수 있습니다.
이 전략은 RSI와 WMA 두 지표를 통합하여, 그들의 교차 형성 거래 신호를 포착하여 간단한 효과적인 양적 거래를 구현합니다. 이 전략은 실행하기 쉽고, 약간의 시가상승 효과가 있습니다. 매개 변수를 계속 테스트하고 최적화하여 적절한 손해 방지 장치를 설정하면 전략의 안정성과 수익성을 더욱 향상시킬 수 있습니다.
/*backtest
start: 2024-01-05 00:00:00
end: 2024-02-04 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI WMA Strategy", overlay=true)
// Input parameters
rsiLength = input(14, title="RSI Length")
wmaLength = input(45, title="WMA Length")
// Calculate RSI and WMA
rsiValue = ta.rsi(close, rsiLength)
wmaValue = ta.wma(rsiValue, wmaLength)
// Define overbought and oversold levels for RSI
overboughtLevel = 70
oversoldLevel = 30
// Strategy logic
longCondition = ta.crossover(rsiValue, wmaValue)
shortCondition = ta.crossunder(rsiValue, wmaValue)
// Execute trades
if (longCondition)
strategy.entry("Long", strategy.long, comment="BUY")
if (shortCondition)
strategy.entry("Short", strategy.short, comment="SELL")
// Plotting for visualization
plot(rsiValue, title="RSI", color=color.blue)
plot(wmaValue, title="WMA", color=color.orange)
hline(overboughtLevel, "Overbought Level", color=color.red)
hline(oversoldLevel, "Oversold Level", color=color.green)
// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)