Chiến lược này sử dụng Bollinger Bands để xác định hướng xu hướng thị trường kết hợp với chỉ số RSI để lọc các tín hiệu tăng, thực hiện các hoạt động phá vỡ đà để theo đuổi tăng và giết rơi.
Khi chỉ số Bollinger Bands xác định giá phá vỡ qua dải trên, nó chỉ ra thị trường đi vào xu hướng tăng. Tại thời điểm này, sử dụng chỉ số RSI để lọc. Tạo tín hiệu mua khi RSI lớn hơn 60. Khi chỉ số BB xác định giá phá vỡ qua dải dưới, nó chỉ ra thị trường đi vào xu hướng giảm. Tại thời điểm này, sử dụng chỉ số RSI để lọc. Tạo tín hiệu bán khi RSI dưới 40.
Thiết lập stop loss sau khi tham gia thị trường để tránh tổn thất thêm.
Các tiêu chí thoát là đóng vị trí dài khi giá phá vỡ dưới dải giữa BB và đóng vị trí ngắn khi giá phá vỡ trên dải giữa BB.
Chỉ số Bollinger Bands có thể xác định xu hướng thị trường chính và nắm bắt các điểm uốn cong.
Chase tăng và giết rơi hoạt động có thể đạt được lợi nhuận dư thừa.
Thiết lập stop loss có thể kiểm soát rủi ro.
Chỉ số BB không hiệu quả trong việc đánh giá thị trường bên cạnh, có thể tạo ra các tín hiệu sai.
Cài đặt stop loss không chính xác có thể dẫn đến tổn thất thêm.
Tần suất giao dịch cao bị ảnh hưởng bởi chi phí giao dịch và trượt.
Các tín hiệu đột phá cần được cập nhật kịp thời, nếu không những cơ hội tốt nhất có thể bị bỏ lỡ.
Kết hợp với các chỉ số khác để đánh giá độ tin cậy của các tín hiệu đột phá BB, chẳng hạn như khối lượng, đường trung bình động v.v.
Điều chỉnh động các thông số BB để tối ưu hóa hiệu suất chỉ số.
Tối ưu hóa vị trí dừng lỗ, chẳng hạn như dừng lỗ sau, tỷ lệ dừng lỗ để giảm lỗ không cần thiết.
Chiến lược này có một logic rõ ràng để xác định xu hướng thị trường thông qua BB và các tín hiệu lọc với RSI để theo đuổi xu hướng động lực. Nó có tần suất hoạt động cao, chu kỳ lợi nhuận / lỗ nhanh, phù hợp hơn với các nhà giao dịch theo đuổi lợi nhuận vượt quá. Tuy nhiên, tần suất giao dịch cao cũng làm tăng chi phí giao dịch và đòi hỏi quản lý vốn nghiêm ngặt và kiểm soát cảm xúc.
/*backtest start: 2023-11-21 00:00:00 end: 2023-12-21 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="Bollinger Band Breakout", shorttitle = "BB-Stoxguru",default_qty_type = strategy.percent_of_equity,default_qty_value = 100, overlay=true) source = close start = timestamp (2007, 1,1,0,0) end = timestamp (2021,11,05,0,0) stop_level = (high[1]-low[1]) profit_level = (high[1]-low[1]) length = input(20, minval=1, title = "Period") //Length of the Bollinger Band mult = input(2, minval=0.001, maxval=50, title = "Standard Deviation") basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev band=upper-lower stop_loss=low-atr(14) if time >= start // and time < end strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>=60 and rsi(close,14)<=70) // strategy.entry("Long", strategy.long, when = crossover(source, upper) and rsi(close,14)>60 and band<200) // strategy.exit("SL", "Long", stop=stop_loss) strategy.close(id="Long", when=crossunder(close, basis)) strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<=40 and rsi(close,14)>=35) strategy.close(id="Short", when=crossover(close, basis)) // strategy.entry("Short", strategy.short, when = crossunder(source, lower) and rsi(close,14)<40 and band<200) // plot(upper-lower, color=color.purple,title= "DIFF",style=plot.style_linebr) plot(basis, color=color.red,title= "SMA") p1 = plot(upper, color=color.blue,title= "UB") p2 = plot(lower, color=color.blue,title= "LB") // fill(p1, p2) BW = ((upper - lower)) / basis * 100 plot(BW, title="Bollinger bandwidth", color=color.red)