
Strategi ini adalah sistem perdagangan kuantitatif yang mengintegrasikan tiga indikator teknis utama: indeks kekuatan relatif (RSI), rata-rata pergerakan (MA), dan Bollinger Bands (BB). Strategi ini secara komprehensif menganalisis sinyal berbagai indikator teknis untuk menemukan peluang perdagangan terbaik dalam tren dan fluktuasi pasar. Strategi ini menggunakan golden cross dan dead cross MA20 dan MA50 untuk menilai tren jangka menengah, dan menggabungkan sinyal RSI overbought dan oversold dan regresi terobosan jalur atas dan bawah Bollinger Bands untuk membangun keputusan perdagangan yang lengkap. membuat sistem.
Logika inti dari strategi ini didasarkan pada tiga dimensi berikut:
Kondisi long harus terpenuhi pada saat yang sama: RSI < 25 (oversold) + MA20 > MA50 (tren naik) + harga < Bollinger Band lower track (oversold) Kondisi short selling harus terpenuhi pada saat yang bersamaan: RSI>80 (overbought) + MA20 Bollinger Band upper track (over-rising)
Strategi ini membangun sistem perdagangan yang relatif lengkap melalui kerja sama terkoordinasi dari berbagai indikator teknis. Strategi ini berkinerja baik di pasar dengan tren yang jelas, tetapi perlu memperhatikan perubahan dalam lingkungan pasar dan membuat penyesuaian yang sesuai. Melalui pengoptimalan dan perbaikan berkelanjutan, strategi ini diharapkan dapat mencapai hasil yang stabil dalam perdagangan nyata.
/*backtest
start: 2019-12-23 08:00:00
end: 2025-01-04 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("RSI + MA + BB30 Strategy", overlay=true)
// === Cài đặt RSI ===
rsiLength = input(14, title="RSI Length")
rsiOverbought = input(80, title="RSI Overbought Level")
rsiOversold = input(25, title="RSI Oversold Level")
rsi = ta.rsi(close, rsiLength)
// === Cài đặt MA ===
maLength20 = input(20, title="MA20 Length")
maLength50 = input(50, title="MA50 Length")
ma20 = ta.sma(close, maLength20)
ma50 = ta.sma(close, maLength50)
// === Cài đặt Bollinger Bands (BB30) ===
bbLength = input(30, title="Bollinger Bands Length")
bbStdDev = input(2, title="BB Standard Deviation")
[bbUpper, bbBasis, bbLower] = ta.bb(close, bbLength, bbStdDev)
// === Điều kiện giao dịch ===
// Điều kiện Long
longCondition = (rsi < rsiOversold) and (ma20 > ma50) and (close < bbLower)
// Điều kiện Short
shortCondition = (rsi > rsiOverbought) and (ma20 < ma50) and (close > bbUpper)
// === Mở lệnh giao dịch ===
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// === Hiển thị chỉ báo trên biểu đồ ===
// Hiển thị MA
plot(ma20, color=color.blue, title="MA20")
plot(ma50, color=color.red, title="MA50")
// Hiển thị Bollinger Bands
plot(bbUpper, color=color.green, title="BB Upper")
plot(bbBasis, color=color.gray, title="BB Basis")
plot(bbLower, color=color.green, title="BB Lower")
// Hiển thị RSI và mức quan trọng
hline(rsiOverbought, "RSI Overbought", color=color.red, linestyle=hline.style_dashed)
hline(rsiOversold, "RSI Oversold", color=color.green, linestyle=hline.style_dashed)
plot(rsi, color=color.purple, title="RSI")