
Chiến lược này được gọi là chiến lược xác nhận khối lượng Bollinger Bands, và ý tưởng cốt lõi của nó là kết hợp chỉ số Bollinger Bands với chỉ số khối lượng giao dịch để thực hiện xác nhận kép về hành động giá và khối lượng giao dịch, do đó tạo ra tín hiệu mua và bán đáng tin cậy hơn.
Chiến lược này bao gồm hai phần chính:
Phần chỉ số của Brin. Phần này tính toán các đường trung bình di chuyển đơn giản của giá đóng cửa trong một chu kỳ nhất định (như 20 ngày) và tính toán chênh lệch chuẩn của các giá đóng cửa so với đường trung bình di chuyển của chúng. Sau đó, dựa trên giá trị chênh lệch chuẩn, tính toán các vùng có hình dải tương ứng trên đường trung bình di chuyển và dưới mỗi phạm vi chênh lệch chuẩn, được gọi là Brin.
Phần khối lượng giao dịch. Phần này tính trung bình di chuyển của khối lượng giao dịch trong cùng một chu kỳ (ví dụ 20 ngày) và sau đó sử dụng một nhân số (ví dụ 2.0) để thiết lập ngưỡng giao dịch. Chỉ khi khối lượng giao dịch vượt quá ngưỡng này, khối lượng giao dịch lớn sẽ được coi là có hiệu lực.
Khi giá trên đi qua đường viền và khối lượng giao dịch vượt quá mức giảm giá, tạo ra tín hiệu mua; khi giá dưới đi qua đường viền và khối lượng giao dịch vượt quá mức giảm giá, tạo ra tín hiệu bán.
Với sự xác nhận kép giữa giá và khối lượng giao dịch, bạn có thể lọc ra một số tín hiệu giả và làm cho chiến lược giao dịch trở nên đáng tin cậy hơn.
Cơ chế xác nhận kép, tránh phá vỡ giả, lọc tiếng ồn. Kết hợp chỉ số giá và khối lượng giao dịch, chỉ tạo ra tín hiệu khi cả hai đều được xác nhận đồng thời, có thể tránh hiệu quả một số tín hiệu sai do phá vỡ giá trong trường hợp trống.
Các tham số có thể điều chỉnh được. Người dùng có thể tự thiết lập tham số chu kỳ của Binance và tham số nhân của giá trị giảm của khối lượng giao dịch, để thích ứng với các môi trường thị trường khác nhau.
Hình biểu đồ trực quan. Các đường viền trên và dưới, khối lượng giao dịch và các chỉ số trực quan về giá trị giảm của khối lượng giao dịch, làm cho tín hiệu chiến lược trở nên trực quan hơn.
Brin-band không thể tự mình xác định được điểm đảo ngược xu hướng một cách hoàn hảo. Brin-band chỉ có thể hiển thị rõ ràng các trạng thái bất thường của giá, nhưng không thể dự đoán sự đảo ngược giá. Do đó, vẫn cần kết hợp với các chỉ số khác để đánh giá.
Tín hiệu khối lượng giao dịch có thể bị chậm trễ. Khi đột phá nhanh chóng vào vùng bạch cầu trên và dưới, phản ứng khối lượng giao dịch có thể bị chậm trễ, dẫn đến tín hiệu cũng bị chậm trễ, không thể nắm bắt hoàn hảo điểm biến đổi.
Bạn có thể thử kết hợp các chỉ số khác như KDJ, MACD, để giới thiệu nhiều biến hơn, tạo ra chiến lược giao dịch đa dạng phức tạp hơn, do đó cải thiện tính thực tế của chiến lược.
Chiến lược này đã lọc ra một số tiếng ồn quá mức bằng cách xác nhận kép và điều chỉnh tham số, làm cho quyết định giao dịch trở nên đáng tin cậy hơn. Tuy nhiên, cần cảnh giác với những hạn chế của Brin Belt, sau này có thể thử giới thiệu các chỉ số khác để tối ưu hóa và xây dựng chiến lược định lượng đa dạng.
/*backtest
start: 2022-12-26 00:00:00
end: 2024-01-01 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Volume + Bollinger Bands Strategy", overlay = true, shorttitle="Vol BB Strategy")
// Bollinger Bands Parameters
length = input(20, title="BB Length")
src = close
mult = input(2.0, title="Multiplier")
basis = ta.sma(src, length)
upper = basis + mult * ta.stdev(src, length)
lower = basis - mult * ta.stdev(src, length)
// Volume Parameters
volMultiplier = input(2.0, title="Volume Multiplier")
avgVolume = ta.sma(volume, length)
// Strategy Logic
buyCondition = close > upper and volume > volMultiplier * avgVolume
sellCondition = close < lower and volume > volMultiplier * avgVolume
// Plotting
plot(upper, color=color.red, title="Upper Band")
plot(lower, color=color.green, title="Lower Band")
plot(volume, color=color.blue, style=plot.style_columns, title="Volume", transp=85)
plot(avgVolume * volMultiplier, color=color.orange, title="Avg Volume x Multiplier")
// Strategy Execution
strategy.entry("Buy", strategy.long, when=buyCondition)
strategy.close("Buy", when=sellCondition)
bgcolor(buyCondition ? color.new(color.green, 90) : sellCondition ? color.new(color.red, 90) : na)