
Chiến lược giao dịch quay trở lại mức trung bình của Bollinger Bands là một phương pháp giao dịch định lượng dựa trên các nguyên tắc biến động giá và quay trở lại mức trung bình. Chiến lược này sử dụng chỉ số Bollinger Bands để xác định các khu vực bán tháo của thị trường và tham gia nhiều hơn khi giá bắt đầu quay trở lại mức trung bình. Ý tưởng cốt lõi của chiến lược là nắm bắt quá trình chuyển động của giá từ đường ray dưới Bollinger Bands để quay trở lại đường trung bình (đường trung bình 20 chu kỳ) và thực hiện cơ hội lợi nhuận ngắn hạn tương đối đáng tin cậy.
Nguyên tắc cơ bản của chiến lược này được xây dựng trên lý thuyết hồi quy trung bình và ứng dụng các chỉ số của dải Brin. Dải Brin bao gồm ba đường: đường trung bình ((20 chu kỳ trung bình di chuyển đơn giản), đường trung bình trên ((trong trung bình cộng thêm hai lần chênh lệch tiêu chuẩn) và đường trung bình dưới ((trong trung bình trừ đi hai lần chênh lệch tiêu chuẩn).
Điều kiện tham gia:
Cài đặt dừng:
Cài đặt Stop Loss:
Các tín hiệu đầu vào của chiến lược này đại diện cho thị trường có thể bị bán quá mức và bắt đầu hồi phục, trong khi các điểm dừng được đặt ở quỹ đạo trung bình thể hiện triết lý của sự trở lại trung bình.
Điều kiện nhập cảnh và xuất cảnh rõ ràng: Chiến lược cung cấp điều kiện nhập cảnh chính xác (như hiệu suất cụ thể của hai đường dây) và mục tiêu lợi nhuận rõ ràng (như đường trung bình 20 chu kỳ), giảm sự phán đoán chủ quan trong quá trình giao dịch.
Dựa trên các nguyên tắc thống kê: Brinh dựa trên tính toán chênh lệch tiêu chuẩn, có cơ sở thống kê, khi giá lệch quá xa trung bình, có xác suất cao sẽ quay trở lại trung bình.
Kiểm soát rủi ro hợp lý: Đặt điểm dừng lỗ ở điểm thấp nhất của đường dây tín hiệu đầu vào, hạn chế tổn thất tối đa cho một giao dịch.
Quản lý tài sản rõ ràng: Chiến lược sử dụng tỷ lệ phần trăm của tổng tài sản của tài khoản (<100%) để quản lý vị trí, giúp đánh giá rủi ro.
Hỗ trợ hình ảnh: mã có hình ảnh của các tín hiệu Brin và nhập, giúp thương nhân hiểu trực quan tình trạng thị trường và điểm kích hoạt tín hiệu.
Tránh các giao dịch xấu liên tục: Chiến lược đặt giới hạn, chỉ xem xét tín hiệu nhập mới nếu không có vị trí mở.
Rủi ro thị trường xung đột: Trong thị trường xung đột ngang, giá có thể dao động nhiều lần giữa đường ray dưới và đường trung tâm của Bollinger Bands, dẫn đến giao dịch thường xuyên và không hiệu quả.
Rủi ro thị trường xu hướng: Trong một xu hướng giảm mạnh, giá có thể tiếp tục giảm sau khi hồi phục ngắn, phá vỡ mức thấp trước đó, dẫn đến việc dừng lỗ được kích hoạt.
Tỷ lệ sử dụng tiền quá cao: Chiến lược sử dụng 100% số tiền tài khoản để giao dịch, hoạt động đòn bẩy cao này có thể khiến tài khoản bị thu hẹp nhanh chóng trong trường hợp thua lỗ liên tục.
Rủi ro phá vỡ giả: Đôi khi giá có thể chỉ phá vỡ Bollinger Bands một thời gian ngắn và sau đó quay trở lại nhanh chóng, gây ra tín hiệu nhập cảnh sai.
Thiếu lọc môi trường thị trường: Chiến lược không xem xét môi trường thị trường tổng thể (như hướng xu hướng, tỷ lệ biến động) để lọc tín hiệu, có thể tạo ra tín hiệu giao dịch trong điều kiện thị trường không phù hợp.
Thêm bộ lọc xu hướng: Bạn có thể thêm trung bình di chuyển chu kỳ dài hoặc các chỉ số xu hướng khác, chỉ thực hiện nhiều tín hiệu trong môi trường xu hướng tăng hoặc trung tính, tránh giao dịch trong xu hướng giảm.
Quản lý quỹ tối ưu hóa: Điều chỉnh khối lượng giao dịch từ 100% cố định đến tỷ lệ động, có thể điều chỉnh kích thước vị trí dựa trên biến động thị trường hoặc tình trạng rút tiền của tài khoản, giảm rủi ro.
Thêm phân tích nhiều khung thời gian: xác định hướng thị trường trên khung thời gian lớn hơn, sau đó thực hiện tín hiệu giao dịch trên khung thời gian nhỏ hơn, tăng tỷ lệ thắng.
Thêm các điều kiện lọc giao dịch: các điều kiện bổ sung như xác nhận khối lượng giao dịch, xác nhận vùng bán vượt RSI, giảm tín hiệu giả.
Tiếp theo, các nhà đầu tư có thể đặt ra nhiều mục tiêu lợi nhuận, chẳng hạn như chỉ xóa một số vị trí khi đạt đến đường trung tâm của Brin, để các vị trí còn lại tiếp tục có lợi nhuận.
Điều chỉnh dừng động: giới thiệu chức năng theo dõi dừng, tự động điều chỉnh vị trí dừng khi giá di chuyển theo hướng thuận lợi, bảo vệ lợi nhuận đã có.
Thiết lập tham số tối ưu hóa: Tìm ra các tham số phù hợp hơn cho thị trường cụ thể bằng cách đo lại các chu kỳ băng tần Bryn khác nhau (không giới hạn 20) và số nhân chênh lệch tiêu chuẩn (không giới hạn 2.0).
Chiến lược giao dịch Bollinger Band Average Regression là một phương pháp giao dịch đơn giản và hiệu quả, nó sử dụng các đặc tính của thị trường để thu thập giá từ vùng bán tháo và trở lại mức trung bình. Chiến lược này có các điều kiện nhập, dừng và dừng rõ ràng, dễ thực hiện và đo lường. Tuy nhiên, để tăng cường sự ổn định của chiến lược, các biện pháp cải tiến như lọc xu hướng, phân tích nhiều khung thời gian và quản lý vốn tối ưu hóa được đề xuất.
/*backtest
start: 2024-07-09 00:00:00
end: 2025-07-04 08:00:00
period: 2d
basePeriod: 2d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("Bollinger Reversal | 100% Take at 20 MA", overlay=true,
default_qty_type=strategy.percent_of_equity, default_qty_value=100,
initial_capital=1000, currency=currency.EUR)
// === PARAMETERS ===
bb_length = 20
bb_mult = 2.0
// === BOLLINGER BANDS ===
basis = ta.sma(close, bb_length)
dev = bb_mult * ta.stdev(close, bb_length)
upper = basis + dev
lower = basis - dev
// === DETECTION OF 2 CANDLES ===
candle1 = close[1] < lower[1]
candle2 = close > lower
valid_entry = candle1 and candle2
entry_price = high
stop_price = math.min(low, low[1])
final_target = basis // Final take profit is the 20-period moving average
// === ENTRY SIGNAL ===
entry_condition = valid_entry and strategy.opentrades == 0
if entry_condition
strategy.entry("Bollinger Entry", strategy.long, stop=entry_price)
// === FULL EXIT AT 20 MA ===
if strategy.position_size > 0 and close >= final_target
strategy.close("Bollinger Entry", comment="🎯 Take at 20 MA")
// === STOP LOSS ===
if strategy.position_size > 0 and low <= stop_price
strategy.close("Bollinger Entry", comment="🛑 Initial Stop")
// === VISUALIZATION ===
plot(upper, title="Upper Band", color=color.red)
plot(lower, title="Lower Band", color=color.green)
plot(basis, title="20 MA", color=color.gray)
plotshape(valid_entry, location=location.belowbar, style=shape.arrowup, color=color.green, title="Bollinger Signal")