
この戦略は,移動平均 ((SMA) と相対的に弱い指標 ((RSI) を組み合わせた量化取引システムである.これは,短期および長期の移動平均の交差信号を観察し,RSI指標の超買い超売りレベルと組み合わせて取引のタイミングを決定する.この戦略は,TradingViewプラットフォームのPine Script言語で記述され,自動取引とグラフィカル表示を実現する.
戦略の核心的な論理は,2つの主要な技術指標の組み合わせに基づいています. まず,システムは50周期と200周期の単純な移動平均 ((SMA) を計算し,この2つの均線の交差が主要なトレンド判断信号を形成します. 次に,システムは14周期のRSI指標を組み合わせて,70と30をオーバーバイのオーバーセール値として設定し,取引をフィルターします.短期平均線が長期平均線を上方,そしてRSIがオーバーセールレベルに達していないときに,システムは多重信号を生成します.短期平均線が長期平均線を下方,そしてRSIがオーバーセールレベルに達していないときに,システムは平仓信号を生成します.
この戦略は,均線交差と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")