
상대적으로 강한 지표 ((RSI) 오버 바이 오버 세일 양적 거래 전략은 기술 분석의 RSI 지표에 기반한 자동 거래 시스템이다. 이 전략의 핵심 아이디어는 시장에서 오버 바이와 오버 세일 상태를 식별하고 RSI 지표가 특정 하위치를 통과할 때 거래를 수행하는 것이다. RSI가 30 (오버 세일 영역) 을 넘어서면 구매하고 RSI가 70 (오버 세일 영역) 을 넘어서면 판매한다. 이 전략은 MetaTrader 플랫폼에서 설계되었으며, Pine Connector를 통해 자동 거래 기능을 구현하며, 특히 비트코인과 같은 변동성이 큰 암호화폐 시장에 적합하다.
이 전략은 RSI (상대적으로 강한 지표) 라는 고전적인 기술 지표에 기반하여 작동한다. RSI는 가격 변화의 속도와 변화의 크기를 측정하는 동적 흔들림 지표이다. RSI의 값값은 0에서 100 사이로 일반적으로 다음과 같이 간주됩니다.
이 전략의 거래 논리는 다음과 같습니다.
이 전략은 표준의 14주기 RSI를 사용하며, 종결 가격 계산에 기반한다. 이 전략은 TradingView 플랫폼에서 구현되며, MetaTrader와의 연결 기능을 구성하여 사용자가 라이선스 ID를 입력하여 자동 거래를 할 수 있도록 한다. 거래 위험은 고정된 수 (Lots) 파라미터를 통해 제어된다.
해결책:
다중 지표 통합: 이동 평균, MACD 또는 브린 띠와 같은 다른 기술 지표와 결합하여 더 포괄적인 입시 조건을 구축하고 가짜 신호를 줄여줍니다. 예를 들어, 가격이 장기 이동 평균 위에있을 때만 여러 신호를 고려하십시오.
동적 절댓값 조정: 고정된 30⁄70 값을 동적 값으로 바꾸어, 시장의 변동성에 따라 자동으로 조정한다. 낮은 변동성 시장에서 좁은 값 범위를 사용할 수 있다 (예: 40⁄60), 높은 변동성 시장에서 넓은 범위를 사용할 수 있다 (예: 20⁄80)
시간 필터: 시간 필터링 조건을 추가하여 낮은 변동성이나 알려진 주요 뉴스 발표 시간을 피하고 신호 품질을 향상시킵니다.
자금 관리 최적화: 고정 수를 계좌 자금 비율에 기반한 동적 위치 크기 또는 ATR에 기반한 위치 계산 방법으로 대체하여 위험을 더 잘 관리한다.
손해 방지 장치: 가격 또는 비율에 기반한 스톱로스 체계를 추가하여 단일 거래에서 과도한 손실을 방지하거나 수익을 얻을 기회를 놓치지 않도록하십시오.
트렌드 필터: 트렌드 인식 기능이 추가되어 RSI 신호가 우세한 방향으로 수신되고, 신호 임계 (threshold) 가 우세한 방향으로 무시되거나 증가합니다.
RSI 주기를 최적화: 다른 거래 종류와 시간 프레임에 대해 다른 RSI 계산 주기를 테스트하여 최적의 파라미터 조합을 찾습니다.
이러한 최적화 방향의 주요 목적은 신호의 질을 높이고, 가짜 신호를 줄이고, 자금 관리와 위험 통제를 강화하여 다양한 시장 환경에서 전략이 안정성을 유지할 수 있도록 하는 것입니다.
상대적으로 강한 지표 ((RSI) 오버 바이 오버 세일 양적 거래 전략은 클래식 기술 분석 원칙에 기반한 자동화 된 거래 시스템이다. 전략은 RSI 지표를 사용하여 시장의 가능한 역전점을 식별하고, 오버 세일 영역에서 더 많은 기회를 찾고, 오버 바이 영역에서 더 적은 기회를 찾는다. 전략의 논리는 간단하고 명확하지만, 그 효과는 시장 환경과 매개 변수 최적화에 크게 달려있다.
이 전략은 변동성이 많지만 특정 범위의 시장에서 가장 적합합니다. 암호화폐 시장. 투자자는 이 전략을 사용할 때 시장 환경의 적합성에 주의를 기울이고 추가적인 필터링 조건과 위험 관리 메커니즘을 도입하는 것을 고려해야합니다. 이 기본 전략은 합리적인 최적화 및 확장으로 더 안정적인 거래 시스템으로 발전 할 수 있습니다.
입문 수준의 기술 분석 전략으로, RSI 과매매 전략은 양적 거래의 기본 원칙을 이해하고 적용하는 데 좋은 출발점을 제공합니다. 그러나 투자자는 단일 지표 또는 자동화 전략에 과도하게 의존하지 않고, 더 광범위한 시장 분석과 건전한 위험 관리 원칙을 결합하여 전체적인 거래 방법을 구축해야합니다.
/*backtest
start: 2024-03-25 00:00:00
end: 2025-03-24 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
// Risk Settings
pc_id = input.string(title='License ID', defval='', group='MT4/5 Settings', tooltip='This is your license ID')
pc_risk = input.float(title='Lots', defval=0.1, step=0.1, minval=0, group='MT4/5 Settings', tooltip='Lot Size')
pc_prefix = input.string(title='MetaTrader Symbol', defval='', group='MT4/5 Settings', tooltip='This is your broker\'s MetaTrader symbol')
// Symbol Information
var symbol = pc_prefix
// Alerts for MetaTrader Integration
longa = pc_id + ',buy,' + symbol + ',risk=' + str.tostring(pc_risk, '#.##')
shorta = pc_id + ',sell,' + symbol + ',risk=' + str.tostring(pc_risk, '#.##')
longa_close = pc_id + ',closelong,' + symbol + ''
shorta_close = pc_id + ',closeshort,' + symbol + ''
//@version=6
strategy("RSI Overbought/Oversold Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=5)
// 📌 RSI Settings
rsiLength = 14
rsiSource = close
rsi = ta.rsi(rsiSource, rsiLength)
// 📌 Entry Conditions
longEntry = ta.crossover(rsi, 30) // Buy when RSI crosses above 30
shortEntry = ta.crossunder(rsi, 70) // Sell when RSI crosses below 70
// 📌 Exit Conditions
longExit = ta.crossover(rsi, 70) // Close long when RSI hits 70
shortExit = ta.crossunder(rsi, 30) // Close short when RSI hits 30
// ✅ Execute Trades
if (longEntry)
strategy.entry("BUY", strategy.long)
if (longExit)
strategy.close("BUY")
if (shortEntry)
strategy.entry("SELL", strategy.short)
if (shortExit)
strategy.close("SELL")
// 🔥 Visuals for Better Clarity
plot(rsi, title="RSI", color=color.blue, linewidth=2)
hline(70, "Overbought", color=color.red)
hline(30, "Oversold", color=color.green)
// 🔔 Alerts for Entry/Exit
alertcondition(longEntry, title="BUY Signal", message="RSI crossed above 30 - Buy!")
alertcondition(longExit, title="SELL Exit", message="RSI reached 70 - Close Buy!")
alertcondition(shortEntry, title="SELL Signal", message="RSI crossed below 70 - Sell!")
alertcondition(shortExit, title="BUY Exit", message="RSI reached 30 - Close Sell!")