Chiến lược Bollinger Bands & RSI Combination là một chiến lược phân tích kỹ thuật kết hợp hai chỉ số kỹ thuật phổ biến: Bollinger Bands và Chỉ số Sức mạnh Tương đối (RSI), để đưa ra quyết định vào và ra khỏi thị trường.
Chiến lược sử dụng hai chỉ số kỹ thuật để tạo ra tín hiệu giao dịch:
Bollinger Bands bao gồm ba đường: dải giữa (trung bình động), dải trên (dải giữa cộng với sai lệch tiêu chuẩn) và dải dưới (dải giữa trừ sai lệch tiêu chuẩn).
Chỉ số RSI đo tốc độ và quy mô của các biến động giá bằng cách so sánh số ngày tăng và giảm trong một khoảng thời gian.
Cụ thể, các tín hiệu giao dịch của chiến lược là như sau:
Chiến lược Bollinger Bands & RSI Combination là một chiến lược giao dịch kỹ thuật đơn giản và thực tế kết hợp hai chỉ số cổ điển, Bollinger Bands và RSI, để tạo ra các tín hiệu giao dịch tương đối đáng tin cậy. Ưu điểm của chiến lược nằm trong logic rõ ràng, dễ hiểu và thực hiện, và việc sử dụng chỉ số RSI để lọc các tín hiệu Bollinger Bands, cải thiện chất lượng tín hiệu. Tuy nhiên, chiến lược cũng có một số hạn chế, chẳng hạn như khả năng thích nghi không đủ với môi trường thị trường và thiếu cân nhắc các yếu tố cơ bản. Do đó, trong ứng dụng thực tế, cần tối ưu hóa và cải thiện chiến lược theo các đặc điểm và phong cách giao dịch cụ thể của thị trường, chẳng hạn như kết hợp các chỉ số kỹ thuật khác, giới thiệu các biện pháp kiểm soát rủi ro và tối ưu hóa lựa chọn tham số.
/*backtest start: 2023-03-15 00:00:00 end: 2023-10-26 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands & RSI Strategy", overlay=true) // Bollinger Bands Parameters source = close length = input.int(20, minval=1) mult = input.float(2.0, minval=0.001, maxval=50) // RSI Parameters rsi_length = input.int(14, minval=1) rsi_oversold = input.int(30, minval=1, maxval=100) rsi_overbought = input.int(70, minval=1, maxval=100) // Strategy Entry basis = ta.sma(source, length) dev = mult * ta.stdev(source, length) upper = basis + dev lower = basis - dev rsi = ta.rsi(source, rsi_length) if (ta.crossover(source, lower) and rsi < rsi_oversold) strategy.entry("BBandLE", strategy.long, comment="BBandLE") else strategy.cancel(id="BBandLE") if (ta.crossunder(source, upper) and rsi > rsi_overbought) strategy.entry("BBandSE", strategy.short, comment="BBandSE") else strategy.cancel(id="BBandSE")