Chiến lược giao dịch trung bình động dao động khối lượng Bollinger Band đệm


Ngày tạo: 2024-01-05 12:27:02 sửa đổi lần cuối: 2024-01-05 12:27:02
sao chép: 1 Số nhấp chuột: 566
1
tập trung vào
1621
Người theo dõi

Chiến lược giao dịch trung bình động dao động khối lượng Bollinger Band đệm

Tổng quan

Chiến lược này dựa trên chỉ số Brin Belt và chỉ số Moving Average, xây dựng một kênh giá để phát tín hiệu giao dịch bằng cách phá vỡ biên giới trên và dưới của kênh. Nó kết hợp khả năng tự điều chỉnh của Brin Belt và tính linh hoạt của chỉ số biến động, có thể bắt kịp sự thay đổi của xu hướng thị trường.

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

Chiến lược này sử dụng đường trục trung tâm và đường trung bình chuyển động động để xây dựng một kênh giá. Đường trung tâm sử dụng đường trục trung tâm, đường trục trên và đường trục dưới kéo dài một phần trăm lần lượt lên và xuống trong vòng 21 chu kỳ.

Cụ thể, công thức tính toán quỹ đạo trung tâm của Brin là:

中轨 = N日收盘价的移动平均线 

Công thức tính trên và dưới đường ray là:

上轨 = 中轨 + WidthDev * 布林带N日标准差  
下轨 = 中轨 - WidthDev * 布林带N日标准差  

Trong đó WidthDev đại diện cho khoảng phần trăm mở rộng lên và xuống.

Đường trung bình di chuyển dao động dựa trên đường trung bình, kéo dài hoặc thu hẹp theo một số quy tắc. Khi thị trường đi vào trạng thái quá mua hoặc quá bán, nó sẽ kéo dài xa đường trung bình hơn, do đó mở rộng cơ hội để làm nhiều giao dịch ngắn; Khi thị trường trở nên yên tĩnh, nó sẽ thu hẹp về đường trung bình.

Tóm lại, chiến lược này mô tả các kênh giá thông qua dải Brin, sau đó sử dụng các chỉ số trung bình di chuyển xung động để xác định thời gian vào thị trường, để thực hiện giao dịch phá vỡ. Khi giá từ dưới lên phá vỡ đường đua Brin lên, làm nhiều; Khi giá từ trên xuống phá vỡ đường đua Brin, làm trống.

Phân tích lợi thế

  1. Phản ánh biến động thị trường Brinband có thể phản ánh sự biến động và thay đổi xu hướng của thị trường trong thời gian thực, và đường ray sẽ tự điều chỉnh tùy theo sự thay đổi của tỷ lệ biến động.

  2. Giảm tín hiệu sai Chỉ số trung bình di chuyển dao động có thể giảm hiệu quả tín hiệu giả tạo bởi băng tần Brin. Nó làm cho băng tần Brin rộng hơn, kéo dài thời gian giữ vị trí, do đó thu được nhiều tiền hơn.

  3. Bắt kịp sự thay đổi Sự giao thoa giữa các đường đi trên và đường đi xuống của Brin và đường trung bình di chuyển dao động cung cấp thời gian và lợi thế về giá cho tín hiệu giao dịch, điều này có thể nắm bắt hiệu quả các điều chỉnh đa đầu và vô đầu quan trọng, kịp thời nắm bắt xu hướng thị trường.

Phân tích rủi ro

  1. Cài đặt tham số của Brin Thiết lập không đúng các tham số của băng Bryn như chu kỳ tính toán và số lần chênh lệch tiêu chuẩn, có thể dẫn đến khoảng cách lên xuống quá lớn hoặc quá nhỏ, tạo ra một lượng lớn tín hiệu giả, ảnh hưởng đến sự ổn định của chiến lược.

  2. Trận động đất mạnh Cung cấp cho các nhà đầu tư một số thông tin về giá trị giao dịch của các giao dịch.

  3. Không quay lại kịp thời Khi thị trường đang trong tình trạng biến động hoặc không có xu hướng rõ ràng, các tín hiệu giao dịch của các chỉ số moving average có thể bị chậm trễ và không thể phản ánh các thay đổi giá trong thời gian kịp thời, dẫn đến nguy cơ không đảo ngược kịp thời.

Hướng tối ưu hóa

  1. Tối ưu hóa tham số Brin
    Có thể thử nghiệm các tham số chu kỳ khác nhau, số nhân chênh lệch tiêu chuẩn, chọn kết hợp các tham số tạo ra tần số tín hiệu tối ưu và ít tín hiệu giả hơn.

  2. Tối ưu hóa tham số trung bình di chuyển dao động Có thể thử nghiệm các cường độ rung và chu kỳ rung khác nhau, chọn các tham số có thể nắm bắt xu hướng và giảm độ trễ tín hiệu.

  3. Thêm điều kiện lọc Có thể dựa trên tín hiệu giao dịch chéo của các đường dây Brin và các đường trung bình di chuyển dao động, thêm các bộ lọc cho các chỉ số phụ trợ như khối lượng giao dịch, loại bỏ một số tín hiệu giao dịch kém hiệu quả.

  4. Gói chiến lược Chiến lược này có thể được sử dụng với các chiến lược theo dõi dừng lỗ hoặc chiến lược học máy khác để kiểm soát rủi ro hơn nữa và tăng sự ổn định.

Tóm tắt

Chiến lược này dựa trên các chỉ số đường tự điều chỉnh và đường trung bình di chuyển xung động của Brin, thực hiện sự kết hợp hữu cơ giữa theo dõi xu hướng và nắm bắt xu hướng. Nó kết hợp lợi thế của cả hai chỉ số, xem xét cả biến động của thị trường và tính đến sự linh hoạt của tín hiệu giao dịch, để đạt được giao dịch đột phá ổn định và hiệu quả.

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

//@version=3
//                               Hull Cloud v2 by SEASIDE420
strategy("Hull Moving Average Cloud v2", shorttitle="hull_cloud_v2", overlay=true, commission_type=strategy.commission.percent, commission_value=0.075, default_qty_type=strategy.percent_of_equity, max_bars_back=200, default_qty_value=100, calc_on_order_fills= true, calc_on_every_tick=true, pyramiding=0)
hullperiod=input(title="HullMA Period",defval=210, minval=1)
Width=input(title="Cloud Width",defval=200, minval=2)
price=input(ohlc4,title="Price data")
FromMonth = input(defval = 1, title = "From Month", minval = 1, maxval = 12) 
FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31) 
FromYear = input(defval = 2017, title = "From Year", minval = 2017) 
ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12) 
ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31) 
ToYear = input(defval = 9999, title = "To Year", minval = 2017)
start = timestamp(FromYear, FromMonth, FromDay, 00, 00) 
finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) 
window() => true
n2ma=2*wma(price,round(hullperiod/2))
nma=wma(price,hullperiod)
diff=n2ma-nma
sqn=round(sqrt(hullperiod))
n2ma1=2*wma(price[1],round(hullperiod/2))
nma1=wma(price[1],hullperiod)
diff1=n2ma1-nma1
n1=wma(diff,sqn)
n2=wma(diff1,sqn)
Hull_Line=n1-n1[1]/n2[1]
Hull_retracted=if(n1>n2)
    Hull_retracted=Hull_Line-Width
else
    Hull_retracted=Hull_Line+Width
c1=(Hull_retracted*n1)/price[1] 
c2=(Hull_retracted*n2)/price[1]
c4=c1>c2?green:red
c2p=plot(c2, color=black, linewidth=1)
c3p=plot(price, color=black, linewidth=1)
fill(c3p, c2p, color=c4, transp=75)
plot(cross(c1, c2) ? c1 : na, style = circles,color=c4, linewidth = 4) 
if (price<c2)
    strategy.close("BUY", when=window())
if (price>c2)                       
    strategy.close("SELL", when=window())
if (price[1]>c2 and price[1]>c1)             
    strategy.entry("BUY",strategy.long, when=window())
if (price[1]<c1 and price[1]<c2)            
    strategy.entry("SELL",strategy.short, when=window())//           /L'-, 
//                               ,'-.      `   ````                 /  L '-, 
//     .                    _,--dMMMM\        `   ` ` '`..         /       '-, 
//     :             _,--,  )MMMMMMMMM),.      `     ,<>          /_      '-,' 
//     ;     ___,--. \MM(    `-'   )M//MM\          ,',.;      .-'* ;     .' 
//     |     \MMMMMM) \MM\       ,dM//MMM/     ___ < ,; `.      )`--'    / 
//     |      \MM()M   MMM)__   /MM(/MP'  ___, \  \ `  `. `.   /__,    ,' 
//     |       MMMM/   MMMMMM( /MMMMP'__, \     | /      `. `-,_\     / 
//     |       MM     /MMM---' `--'_ \     |-'  |/         `./ .\----.___ 
//     |      /MM'   `--' __,-  \""   |-'  |_,               `.__) . .F. )-. 
//     |     `--'       \   \    |-'  |_,     _,-/            J . . . J-'-. `-., 
//     |         __  \`. |   |   |         \    / _           |. . . . \   `-.  F 
//     |   ___  /  \  | `|   '      __  \   |  /-'            F . . . . \     '` 
//     |   \  \ \  /  |        __  /  \  |  |,-'        __,- J . . . . . \ 
//     |    | /  |/     __,-  \  ) \  /  |_,-     __,--'     |. .__.----,' 
//     |    |/    ___     \    |'.  |/      __,--'           `.-;;;;;;;;;\ 
//     |     ___  \  \     |   |  `   __,--'                  /;;;;;;;;;;;;. 
//     |     \  \  |-'\    '    __,--'                       /;;;;;;;;;;;;;;\ 
// \   |      | /  |      __,--'                             `--;;/     \;-'\ 
//  \  |      |/    __,--'                                   /  /         \  \ 
//   \ |      __,--'                                        /  /           \  \ 
//    \|__,--'                                          _,-;M-K,           ,;-;\ 
//                                                     <;;;;;;;;           '-;;;; 
//                                                                                  :D