Bollinger Bands Breakout Chiến lược giao dịch định lượng

Tác giả:ChaoZhang, Ngày: 2024-02-04 14:52:52
Tags:

img

Tổng quan

Chiến lược này tính toán dải trên, dải giữa và dải dưới của Bollinger Bands và kết hợp giá đóng của K-line để thực hiện chiến lược giao dịch đột phá Bollinger Bands. Nó đi dài khi giá vượt qua dải trên và đi ngắn khi giá vượt qua dải dưới. Giá dừng lỗ và lấy lợi nhuận cũng được đặt.

Nguyên tắc chiến lược

  1. Tính toán đường SMA giữa của Bollinger Bands với thời gian 60, đại diện cho đường giữa của xu hướng giá.

  2. Tính toán dải trên và dải dưới của Bollinger Bands. Dải trên là dải giữa + 2 lần độ lệch chuẩn và dải dưới là dải giữa - 2 lần độ lệch chuẩn.

  3. Khi giá đóng lớn hơn dải trên, mua dài. Khi giá đóng thấp hơn dải dưới, mua ngắn.

  4. Thiết lập cơ chế dừng lỗ và lấy lợi nhuận.

  5. Khi giá quay lại Bollinger Bands hoặc đạt giá dừng lỗ / lấy lợi nhuận, đóng vị trí.

Phân tích lợi thế

  1. Chỉ số Bollinger Bands có khả năng đánh giá xu hướng mạnh mẽ bằng cách phá vỡ.

  2. Đơn giản chiến lược logic và dễ hiểu và thực hiện.

  3. Dừng lỗ và chấp nhận rủi ro kiểm soát lợi nhuận.

Phân tích rủi ro

  1. Bollinger Bands breakout không thể xác định chính xác các điểm đảo ngược xu hướng giá, với nguy cơ breakout sai.

  2. Các thiết lập dừng lỗ và lấy lợi nhuận không hợp lý có thể mang lại rủi ro lớn hơn.

  3. Tần suất giao dịch cao có thể bị ảnh hưởng bởi chi phí giao dịch.

Hướng dẫn tối ưu hóa

  1. Kết hợp với các chỉ số khác để lọc các tín hiệu sai, ví dụ: KDJ cho xu hướng và MACD cho sự phân kỳ.

  2. Điều chỉnh năng động các thông số Bollinger Bands dựa trên biến động thị trường để tính rộng dải hợp lý.

  3. Tối ưu hóa chiến lược dừng lỗ và lấy lợi nhuận, ví dụ như dừng lại hoặc đóng một phần.

  4. Xem xét chi phí giao dịch tác động và điều chỉnh thời gian giữ.

Kết luận

Chiến lược này theo xu hướng của Bollinger Bands breakout và có một số hiệu ứng tích cực. Nhưng breakout sai có thể mang lại rủi ro lớn hơn. Kết hợp với các chỉ số khác và tiếp tục tối ưu hóa các tham số có thể kiểm soát rủi ro và cải thiện lợi nhuận.


/*backtest
start: 2024-01-04 00:00:00
end: 2024-02-03 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Fuera Bolinga", overlay=true)

length = input.int(60, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
take_profit_percentage = 6.0

basis = ta.sma(close, length)
dev = mult * ta.stdev(close, length)
upper = basis + dev
lower = basis - dev

stop_loss_percentage = 1.5

// Determinar si la vela cierra por fuera de las bandas
above_upper_band = close > upper
under_lower_band = close < lower

// Pintar las velas que cierran por fuera de las bandas
barcolor(above_upper_band ? color.new(#2cee32, 0) : na)
barcolor(under_lower_band ? color.new(#e02c2c, 0) : na)

// Entrada larga con stop loss y take profit
if (ta.crossover(close, upper))
    strategy.entry("BBandLE", strategy.long, oca_name="BollingerBands",  comment="BBandLE")
else
    strategy.cancel(id="BBandLE")

// Entrada corta con stop loss y take profit
if (ta.crossunder(close, lower))
    strategy.entry("BBandSE", strategy.short, oca_name="BollingerBands",comment="BBandSE")
else
    strategy.cancel(id="BBandSE")

//// Salida de operación larga
if ((ta.crossunder(close, upper) or ta.crossunder(close, lower)) and (strategy.opentrades != 0))
    strategy.close("BBandLE")

// Salida de operación corta
if ((ta.crossover(close, lower) or ta.crossover(close, upper)) and (strategy.opentrades != 0))
    strategy.close("BBandSE")
	
// Plot de las bandas de Bollinger
plot(upper, color=color.new(#2cee32, 0), title="Upper Bollinger Band")
plot(lower, color=color.new(#e02c2c, 0), title="Lower Bollinger Band")


Thêm nữa