Chiến lược theo dõi xu hướng đường dây Brin

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

动量交叉布林带趋势跟踪策略

Thông tin chi tiết

Chiến lược này sử dụng các chỉ số Brainstorm để xác định hướng xu hướng của thị trường và kết hợp với các chỉ số động lượng để thực hiện các giao dịch theo xu hướng. Trong tên chiến lược, các động lượng được đại diện cho các chỉ số động lực, các chỉ số giao dịch được đại diện cho các chỉ số giao dịch, các chỉ số giao dịch được đại diện cho các chỉ số giao dịch.

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

Chiến lược này được chia thành ba phần:

  1. Xác định hướng của dây chuyền Brinh. Đường dây chuyền Brinh đại diện cho đường trung bình, đường dây chuyền Brinh dưới đường biểu thị phạm vi biến động. Đường dây chuyền Brinh đại diện cho hướng xu hướng giá.

  2. Tính toán động lượng. Chiến lược này chọn động lượng Hull. Hull được tính từ đường trung bình di chuyển nhanh trừ đường trung bình di chuyển chậm.

  3. Tín hiệu chéo. Khi đường trung bình di chuyển nhanh đi qua đường trung bình di chuyển chậm ở phía dưới tạo ra tín hiệu làm nhiều; khi đường trung bình di chuyển chậm đi qua đường trung bình di chuyển chậm ở phía trên tạo ra tín hiệu làm trống.

Các quy tắc giao dịch là: hướng đai Brin đại diện cho xu hướng lớn, chỉ số động lực giao nhau đại diện cho thời gian vào cuộc. Khi giao dịch giao nhau với hướng đai Brin, tín hiệu giao dịch được tạo ra.

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

  1. Kết hợp xu hướng và động lượng, tránh đột phá giả. Sử dụng dây đai Brin để xác định xu hướng cấp cao, và sử dụng chỉ số động lực để xác định thời gian vào vào cụ thể, tránh việc theo đuổi rủi ro formset do đột phá địa phương.

  2. Kiểm soát rủi ro tốt hơn. Vòng đai cung cấp mức dừng lỗ hiệu quả hơn so với đường trung bình di chuyển đơn giản.

  3. Theo dõi xu hướng hiệu quả hơn. Các chỉ số động lực đảm bảo có đủ sức mạnh để tiếp tục thúc đẩy giá đi theo hướng ban đầu sau khi bước vào, theo dõi xu hướng mượt mà hơn.

Rủi ro chiến lược

  1. Vòng tròn xác định nguy cơ thất bại. Vòng tròn không phải lúc nào cũng xác định hoàn toàn chính xác xu hướng, có thể cung cấp tín hiệu hướng sai và làm tăng tỷ lệ mất mát.

  2. Rủi ro đảo ngược xu hướng. Ngay cả khi các dây chuyền Brin phản ánh đúng xu hướng ở mức độ lớn, giá cũng có thể đảo ngược trong thời gian ngắn và trung bình, nên nên xem xét kỹ khi giao dịch.

  3. Các tham số tối ưu hóa rủi ro. Các tham số chiến lược như chu kỳ tính toán cần được tối ưu hóa cho các dữ liệu thị trường khác nhau để đạt được hiệu quả giao dịch tốt nhất.

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

  1. Kết hợp với nhiều chỉ số FILTER. Ngoài dây chuyền và động lực Hull, các chỉ số khác như MACD, KDJ có thể được thêm vào để tạo ra chỉ số FILTER, cải thiện độ chính xác phán đoán.

  2. Tối ưu hóa các tham số thích nghi. Thêm các thuật toán học máy, tối ưu hóa các tham số trong thời gian thực theo các giống và môi trường thị trường khác nhau, cải thiện tính ổn định chiến lược.

3. Chiến lược dừng lỗ tối ưu hóa. Chiến lược dừng lỗ tối ưu hóa, khóa lợi nhuận càng nhiều càng tốt trước khi xu hướng lớn không thay đổi và dừng lỗ càng nhanh càng tốt khi xu hướng đảo ngược.

Tóm lại

Chiến lược này tích hợp các dây chuyền xác định xu hướng cấp cao và các chỉ số động lực Hull xác định thời điểm vào cụ thể, để thực hiện theo dõi hiệu quả xu hướng. Trong khi đó, cũng có một số chỗ để cải thiện, từ việc thêm nhiều bộ lọc chỉ số, tối ưu hóa các tham số tự điều chỉnh và tối ưu hóa chiến lược dừng lỗ để tăng sự ổn định và tỷ lệ lợi nhuận.


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

//@version=4 
//                                                Hull Moving Average Crossover by SeaSide420
strategy("Hull Moving Average Crossover Strategy", overlay=true)
keh=input(title="HullMA cross",defval=10)
p=input(ohlc4)
n2ma=2*ta.wma(p,math.round(keh/2))
nma=ta.wma(p,keh)
diff=n2ma-nma
sqn=math.round(math.sqrt(keh))
n2ma1=2*ta.wma(p[1],math.round(keh/2))
nma1=ta.wma(p[1],keh)
diff1=n2ma1-nma1
sqn1=math.round(math.sqrt(keh))
n1=ta.wma(diff,sqn)
n2=ta.wma(diff1,sqn)
hullcross1 = n1
hullcross2 = n2
longcross1=(n1[0]-n1[3])+(n1[0]-n2[4])*100
longcross2=(n2[0]-n2[3])+(n2[0]-n1[4])*100
closelong = n1<n2 and longcross1<longcross2
if (closelong)
    strategy.close("Long")
closeshort = n1>n2 and longcross1>longcross2
if (closeshort)
    strategy.close("Short") 
longCondition = n1>n2 and longcross1>longcross2 and strategy.opentrades<1
if (longCondition)
    strategy.entry("Long",strategy.long)
shortCondition = n1<n2 and longcross1<longcross2 and strategy.opentrades<1
if (shortCondition)
    strategy.entry("Short",strategy.short)
b=hullcross1>hullcross2?color.green:color.red
c=hullcross2>hullcross1?color.green:color.red
plot(ta.cross(hullcross1, hullcross2) ? hullcross1 : na,color=c, linewidth = 5, offset=3)
barcolor(longcross1 < longcross2 ? color.black : color.white)
bgcolor(longcross2 < longcross1 ? color.green : color.black, transp=85)
plotshape(ta.cross(longcross2, longcross1) ? longcross2 : na,   text="X", style=shape.labeldown, location=location.bottom)

Nhiều hơn nữa