이 전략은 간단한 이동 평균 (SMA) 과 상대적 강도 지수 (RSI) 를 결합한 양적 거래 시스템이다. 이 전략은 RSI 과잉 구매 및 과잉 판매 수준을 고려하면서 단기 및 장기 이동 평균의 크로스오버 신호를 관찰하여 거래 기회를 결정합니다. 이 전략은 트레이딩뷰 플랫폼을 위해 파이인 스크립트로 작성되어 자동화 거래 및 그래픽 디스플레이를 가능하게합니다.
핵심 논리는 두 가지 주요 기술 지표의 조합에 기반합니다. 첫째, 시스템은 50 기간 및 200 기간 간단한 이동 평균 (SMA) 을 계산하여 크로스오버를 주요 트렌드 신호로 사용합니다. 둘째, 70 및 30을 과잉 구매 및 과잉 판매 임계로 14 기간 RSI 지표를 통합하여 거래 신호를 필터합니다. 단기 MA가 장기 MA를 넘어서고 RSI가 과잉 구매 수준을 넘어서면 긴 포지션은 시작됩니다. 단기 MA가 장기 MA를 넘어서고 RSI가 과잉 판매 수준을 넘어서면 포지션은 종료됩니다.
이 전략은 MA 크로스오버와 RSI 과잉 구매/ 과잉 판매 수준의 이중 필터링 메커니즘을 통해 비교적 견고한 거래 시스템을 구축합니다. 트렌딩 시장에 적합하지만 특정 시장 특성에 따라 매개 변수를 조정해야합니다. 더 많은 필터링 조건과 위험 제어 메커니즘을 추가하여 전략의 안정성을 더욱 향상시킬 수 있습니다. 라이브 거래 전에 철저한 백테스팅을 수행하고 실제 시장 조건에 따라 매개 변수를 최적화하는 것이 좋습니다.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-27 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Chỉ báo Giao dịch Cắt SMA với RSI", overlay=true) // Định nghĩa các tham số short_period = input.int(50, title="Thời gian SMA ngắn") long_period = input.int(200, title="Thời gian SMA dài") rsi_period = input.int(14, title="Thời gian RSI") rsi_overbought = input.int(70, title="Ngưỡng RSI Mua Quá Mức") rsi_oversold = input.int(30, title="Ngưỡng RSI Bán Quá Mức") // Tính toán các SMA sma_short = ta.sma(close, short_period) sma_long = ta.sma(close, long_period) // Tính toán RSI rsi = ta.rsi(close, rsi_period) // Điều kiện vào lệnh Mua (Cắt lên và RSI không quá mua) long_condition = ta.crossover(sma_short, sma_long) and rsi < rsi_overbought // Điều kiện vào lệnh Bán (Cắt xuống và RSI không quá bán) short_condition = ta.crossunder(sma_short, sma_long) and rsi > rsi_oversold // Vẽ các đường SMA và RSI lên biểu đồ plot(sma_short, color=color.blue, title="SMA Ngắn") plot(sma_long, color=color.red, title="SMA Dài") hline(rsi_overbought, "Overbought", color=color.red) hline(rsi_oversold, "Oversold", color=color.green) plot(rsi, color=color.orange, title="RSI") // Hiển thị tín hiệu vào lệnh plotshape(series=long_condition, location=location.belowbar, color=color.green, style=shape.labelup, title="Tín hiệu Mua", text="MUA") plotshape(series=short_condition, location=location.abovebar, color=color.red, style=shape.labeldown, title="Tín hiệu Bán", text="BÁN") // Giao dịch tự động bằng cách sử dụng cấu trúc if if (long_condition) strategy.entry("Long", strategy.long) if (short_condition) strategy.close("Long")