Chiến lược này là một hệ thống giao dịch định lượng tích hợp ba chỉ số kỹ thuật chính: Chỉ số sức mạnh tương đối (RSI), Trung bình động (MA) và Bollinger Bands (BB). Chiến lược tìm kiếm các cơ hội giao dịch tối ưu trong xu hướng thị trường và biến động bằng cách phân tích toàn diện các tín hiệu từ nhiều chỉ số kỹ thuật. Nó sử dụng MA20 và MA50 chéo để đánh giá xu hướng trung hạn, kết hợp với các tín hiệu mua quá mức / bán quá mức RSI và Bollinger Bands breakout / hồi quy để xây dựng một hệ thống quyết định giao dịch hoàn chỉnh.
Logic cốt lõi dựa trên ba chiều:
Các điều kiện dài phải đồng thời đáp ứng: RSI<25 ((đã quá bán) + MA20> MA50 ((trend tăng) + giá
Chiến lược xây dựng một hệ thống giao dịch tương đối hoàn chỉnh thông qua sự kết hợp hợp tác dụng của nhiều chỉ số kỹ thuật. Nó hoạt động xuất sắc trong các thị trường có xu hướng rõ ràng nhưng đòi hỏi sự chú ý đến những thay đổi môi trường thị trường và điều chỉnh tương ứng. Thông qua tối ưu hóa và cải tiến liên tục, chiến lược có tiềm năng đạt được lợi nhuận ổn định trong giao dịch trực tiếp.
/*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")