
Diese Strategie ist ein quantitatives Handelssystem, das die drei wichtigsten technischen Indikatoren integriert: Relative Strength Index (RSI), gleitender Durchschnitt (MA) und Bollinger Bands (BB). Diese Strategie analysiert umfassend die Signale mehrerer technischer Indikatoren, um die besten Handelsmöglichkeiten bei Markttrends und -schwankungen zu finden. Die Strategie verwendet das goldene Kreuz und das tote Kreuz von MA20 und MA50, um den mittelfristigen Trend zu beurteilen, und kombiniert die überkauften und überverkauften RSI-Signale und die Durchbruchsregression der oberen und unteren Spuren der Bollinger-Bänder, um eine vollständige Handelsentscheidung zu treffen. Herstellungssystem.
Die Kernlogik der Strategie basiert auf den folgenden drei Dimensionen:
Die Long-Bedingungen müssen gleichzeitig erfüllt sein: RSI < 25 (überverkauft) + MA20 > MA50 (Aufwärtstrend) + Kurs < untere Spur des Bollinger Bands (überverkauft) Die Short Selling Bedingungen müssen gleichzeitig erfüllt sein: RSI>80 (überkauft) + MA20 Bollinger Band oberer Kurs (übersteigend)
Diese Strategie baut durch die koordinierte Zusammenarbeit mehrerer technischer Indikatoren ein relativ vollständiges Handelssystem auf. Die Strategie funktioniert gut in Märkten mit klaren Trends, es ist jedoch notwendig, auf Änderungen im Marktumfeld zu achten und entsprechende Anpassungen vorzunehmen. Durch kontinuierliche Optimierung und Verbesserung sollen mit dieser Strategie stabile Erträge im realen Handel erzielt werden.
/*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")