Chiến lược giao dịch định lượng bốn giờ kết hợp với sự phá vỡ dải Bollinger Band và sự đảo ngược trung bình

BBANDS SMA SD TP SL
Ngày tạo: 2024-12-12 11:24:28 sửa đổi lần cuối: 2024-12-12 11:24:28
sao chép: 0 Số nhấp chuột: 568
1
tập trung vào
1617
Người theo dõi

Chiến lược giao dịch định lượng bốn giờ kết hợp với sự phá vỡ dải Bollinger Band và sự đảo ngược trung bình

Tổng quan

Chiến lược này là một hệ thống giao dịch định lượng theo cấp độ bốn giờ dựa trên chỉ số Bollinger Bands, kết hợp với tư tưởng giao dịch của phá vỡ xu hướng và quay trở lại mức trung bình. Chiến lược này nắm bắt động lực thị trường bằng cách phá vỡ Bollinger Bands xuống đường, đồng thời tận dụng tính năng của giá quay trở lại mức trung bình để kiếm lợi nhuận và kiểm soát rủi ro bằng cách dừng lỗ. Chiến lược sử dụng đòn bẩy 3 lần, kiểm soát rủi ro cũng được xem xét đầy đủ trong khi đảm bảo lợi nhuận.

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

Logic cốt lõi của chiến lược này dựa trên các yếu tố chính sau:

  1. Sử dụng đường trung bình di chuyển 20 chu kỳ làm đường trung tâm của dải Brin và phân biệt chuẩn gấp 2 lần làm khoảng dao động
  2. Tín hiệu mở vị trí: khi thực thể K-line ((trung bình giá mở và giá đóng) mở nhiều khi phá vỡ đường ray trên, mở trống khi phá vỡ đường ray dưới
  3. Tín hiệu vị thế bằng phẳng: khi giữ vị thế nhiều đầu, nếu cả hai giá đóng cửa và giá mở cửa liên tiếp của K-line đều thấp hơn giá lên đường và giá đóng cửa thấp hơn giá mở cửa; giữ vị thế bằng phẳng sử dụng logic ngược lại
  4. Kiểm soát rủi ro: Đặt điểm dừng lỗ ở điểm cao nhất / thấp nhất của đường K hiện tại khi tạo vị trí để đảm bảo rằng lỗ đơn có thể kiểm soát được

Lợi thế chiến lược

  1. Logic giao dịch rõ ràng: kết hợp cả hai phương pháp giao dịch xu hướng và quay trở lại, có thể hoạt động tốt trong các môi trường thị trường khác nhau
  2. Kiểm soát rủi ro hoàn hảo: thiết lập dừng lỗ động dựa trên biến động K-line, có thể kiểm soát hiệu quả rút lui
  3. Bộ lọc tín hiệu giả: xác nhận đột phá bằng cách đánh giá vị trí của thực thể K-line thay vì chỉ dựa trên giá đóng cửa, giảm thiệt hại do đột phá giả
  4. Quản lý tài chính hợp lý: Điều chỉnh quy mô nắm giữ dựa trên động thái quyền lợi tài khoản, đảm bảo lợi nhuận và kiểm soát rủi ro

Rủi ro chiến lược

  1. Rủi ro thị trường chấn động: có thể kích hoạt các tín hiệu phá vỡ giả thường xuyên trong tình huống chấn động ngang, dẫn đến dừng liên tục
  2. Rủi ro đòn bẩy: Sử dụng đòn bẩy gấp 3 lần có thể dẫn đến tổn thất lớn khi biến động mạnh
  3. Rủi ro thiết lập dừng lỗ: thiết lập dừng lỗ ở điểm cao nhất / thấp nhất của đường K có thể quá thoải mái, làm tăng tổn thất đơn lẻ
  4. Dựa vào chu kỳ thời gian: cấp độ bốn giờ có thể phản ứng quá chậm và bỏ lỡ trong một số môi trường thị trường

Hướng tối ưu hóa chiến lược

  1. Thêm bộ lọc xu hướng: có thể thêm các chỉ số định xu hướng có chu kỳ dài hơn, giao dịch theo hướng xu hướng chính
  2. Lựa chọn tối ưu hóa dừng: xem xét sử dụng băng thông ATR hoặc Brin để điều chỉnh động khoảng cách dừng
  3. Tăng quản lý vị trí: điều chỉnh gia số đòn bẩy theo biến động hoặc cường độ xu hướng
  4. Thêm phán đoán về môi trường thị trường: giới thiệu các chỉ số giao dịch hoặc biến động để xác định tình trạng thị trường hiện tại, mở vị trí tùy chọn

Tóm tắt

Đây là một chiến lược kết hợp các đặc tính theo xu hướng và quay trở lại trung bình của chỉ số Brin, đạt được mục tiêu của thu nhập ổn định trong cả thị trường xu hướng và biến động thông qua các điều kiện mở lỗ nghiêm ngặt và các biện pháp kiểm soát rủi ro. Điểm mạnh cốt lõi của chiến lược là logic giao dịch rõ ràng và hệ thống kiểm soát rủi ro hoàn thiện, nhưng vẫn cần chú ý đến việc tối ưu hóa các khía cạnh như sử dụng đòn bẩy và phán đoán môi trường thị trường để nâng cao hơn nữa sự ổn định và khả năng thu nhập của chiến lược.

Mã nguồn chiến lược
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-10 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger 4H Follow", overlay=true, initial_capital=300, commission_type=strategy.commission.percent, commission_value=0.04)
// StartYear = input(2022,"Backtest Start Year") 
// StartMonth = input(1,"Backtest Start Month") 
// StartDay = input(1,"Backtest Start Day")

// testStart = timestamp(StartYear,StartMonth,StartDay,0,0)

// EndYear = input(2023,"Backtest End Year")
// EndMonth = input(12,"Backtest End Month")
// EndDay = input(31,"Backtest End Day")

// testEnd = timestamp(EndYear,EndMonth,EndDay,0,0)

lev = 3

// Input parameters
length = input.int(20, title="Bollinger Band Length")
mult = input.float(2.0, title="Bollinger Band Multiplier")

// Bollinger Bands calculation
basis = ta.sma(close, length)
upperBand = basis + mult * ta.stdev(close, length)
lowerBand = basis - mult * ta.stdev(close, length)

// Conditions for Open Long
openLongCondition = strategy.position_size == 0 and close > open and (close + open) / 2 > upperBand

// Conditions for Open Short
openShortCondition = strategy.position_size == 0 and close < open and (close + open) / 2 < lowerBand

// Conditions for Close Long
closeLongCondition = strategy.position_size > 0 and strategy.position_size > 0 and (close < upperBand and open < upperBand and close < open)

// Conditions for Close Short
closeShortCondition = strategy.position_size < 0 and strategy.position_size < 0 and (close > lowerBand and open > lowerBand and close > open)


// Long entry
if openLongCondition
    strategy.entry("Long", strategy.long, qty=strategy.equity * lev / close)
    strategy.exit("Long SL", from_entry="Long", stop=low)  // Set Stop-Loss

// Short entry
if openShortCondition
    strategy.entry("Short", strategy.short, qty=strategy.equity * lev / close)
    strategy.exit("Short SL", from_entry="Short", stop=high)  // Set Stop-Loss

// Long exit
if closeLongCondition
    strategy.close("Long", comment = "TP")

// Short exit
if closeShortCondition
    strategy.close("Short", comment = "TP")

// Plot Bollinger Bands
plot(upperBand, color=color.yellow, title="Upper Band")
plot(lowerBand, color=color.yellow, title="Lower Band")