Chiến lược sửa chữa Williams VIX

Tác giả:ChaoZhang, Ngày: 2023-10-25 12:03:08
Tags:

img

Tổng quan

Chiến lược Williams VIX Fix tính toán giá trị điều chỉnh của Chỉ số biến động CBOE VIX và kết hợp nhiều chỉ số kỹ thuật như Bollinger Bands, phạm vi phần trăm và đà giá để xác định và tạo ra các tín hiệu giao dịch cho sự đảo ngược VIX. Chiến lược nhằm mục đích nắm bắt hiện tượng đảo ngược quá mức của chỉ số VIX và thực hiện các giao dịch chống xu hướng trong các tình huống mua quá mức và bán quá mức.

Chiến lược logic

Logic cốt lõi của chiến lược này dựa trên các điểm sau:

  1. Tính toán giá trị cố định Williams VIX (wvf) thông qua công thức để nắm bắt biến động trong VIX.

  2. Đặt các tham số tính toán Bollinger Band để có được đường giữa, đường trên và đường dưới của chỉ số VIX.

  3. Đặt các thông số phạm vi phần trăm để có được phạm vi phần trăm lịch sử của chỉ số VIX.

  4. Sử dụng biến sửa chữa để xác định xem VIX có ở điểm đảo ngược hay không. Khi sửa chữa là đúng, điều đó có nghĩa là VIX trước đây đã ở trạng thái mua quá mức hoặc bán quá mức và hiện đang ở điểm đảo ngược.

  5. Tiếp tục kết hợp bản chất của giá đột phá (upRange, upRange_Aggr) để xác định các đặc điểm xu hướng.

  6. Cuối cùng, kết hợp nhiều điều kiện như Bollinger Bands, phạm vi phần trăm và các tính năng giá để xác định và tạo ra tín hiệu giao dịch.

Chiến lược tận dụng tối đa các đặc điểm đảo ngược trung bình của VIX và nắm bắt các cơ hội đảo ngược thông qua nhiều cài đặt tham số.

Phân tích lợi thế

Chiến lược có những lợi thế sau:

  1. Tận dụng xu hướng đảo ngược của VIX để kiếm lợi nhuận khi sự không chắc chắn của thị trường rất cao.

  2. Sự kết hợp của nhiều chỉ số kỹ thuật để lọc có thể xác định hiệu quả các cơ hội đảo ngược.

  3. Các thông số điều chỉnh của chiến lược có thể được tối ưu hóa cho các môi trường thị trường khác nhau.

  4. Thực hiện đơn giản, dễ hiểu và sửa đổi, phù hợp với giao dịch trực tiếp.

  5. Sử dụng đầy đủ các ý tưởng mã nguồn mở và dễ dàng kết hợp với các chiến lược khác.

  6. Chiến lược này cho thấy sự tương quan thị trường tương đối thấp và có thể phục vụ như một thành phần bảo hiểm trong danh mục đầu tư.

  7. Tối đa hóa việc loại bỏ các giao dịch không hiệu quả và lọc các cơ hội không đảo ngược.

  8. Tần suất giao dịch vừa phải, sẽ không vào và ra quá thường xuyên.

Phân tích rủi ro

Chiến lược cũng có một số rủi ro cần lưu ý:

  1. Chỉ số VIX có các vấn đề dữ liệu có thể ảnh hưởng đến hiệu suất chiến lược.

  2. Giao dịch đảo ngược mang lại rủi ro mất mát. Mất mát có thể trở nên trầm trọng hơn nếu đảo ngược không đạt được.

  3. Các cài đặt tham số đa làm cho tối ưu hóa tham số khá phức tạp.

  4. Việc nắm bắt thời gian đảo ngược không chính xác có thể dẫn đến các giao dịch thất bại.

  5. Tỷ lệ giao dịch giảm cũng có thể bỏ lỡ một số cơ hội.

  6. Cả Bollinger Bands và phạm vi phần trăm đều dễ bị tín hiệu sai.

  7. Phán quyết giá không chính xác có thể làm cho chiến lược không hiệu quả.

Các rủi ro chính có thể được giảm bằng cách:

  1. Tối ưu hóa các tham số để làm cho nhận dạng đảo ngược chính xác hơn.

  2. Tăng thời gian giữ phù hợp để đảm bảo việc đảo ngược được thiết lập.

  3. Thêm nhiều chỉ số để xác minh để tránh tín hiệu sai.

  4. Điều chỉnh các tiêu chí vị trí mở để giảm các giao dịch không hiệu quả.

  5. Thêm dừng lại để kiểm soát tổn thất.

Hướng dẫn tối ưu hóa

Chiến lược có thể được tối ưu hóa trong các khía cạnh sau:

  1. Tối ưu hóa Bollinger Band và các thông số phạm vi phần trăm để cải thiện độ chính xác nhận dạng đảo ngược.

  2. Thêm thêm các chỉ số động lực giá để tránh xác định sai xu hướng.

  3. Điều chỉnh các tiêu chí mở vị trí để đảm bảo hiệu quả giao dịch cao hơn.

  4. Thiết lập các phương pháp dừng lỗ khác nhau để kiểm soát rủi ro.

  5. Bảo hiểm bằng các hợp đồng tương lai VIX.

  6. Điều chỉnh các tham số theo môi trường thị trường khác nhau để làm cho chiến lược thích nghi hơn.

  7. Thêm các mô hình máy học để xác định thời gian đảo ngược.

  8. Kết hợp với các alpha khác để tăng lợi nhuận tổng thể.

  9. Kết hợp các phương pháp định lượng để tối ưu hóa tham số tự động.

  10. Thiết lập các điểm dừng và các điểm dừng.

Tóm lại

Chiến lược Williams VIX Fix nắm bắt các đặc điểm đảo ngược của chỉ số VIX và thực hiện các giao dịch chống xu hướng trong thời điểm hoảng loạn thị trường. Đây là một chiến lược phòng ngừa rủi ro điển hình. Chiến lược kết hợp các lợi thế của các chỉ số khác nhau và các tham số có thể kiểm soát rủi ro. Với tối ưu hóa tham số thích hợp, nó có thể đạt được lợi nhuận điều chỉnh rủi ro tốt. Tuy nhiên, tần suất giao dịch không nên quá cao và rủi ro phải được kiểm soát. Nhìn chung, logic chiến lược rõ ràng, sử dụng các ý tưởng chiến lược mã nguồn mở và là một chiến lược giao dịch VIX có thể được sử dụng trong giao dịch trực tiếp.


/*backtest
start: 2023-09-24 00:00:00
end: 2023-10-13 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
strategy(title = "CM Vix V3 Strategy ",shorttitle="Vix3", overlay = true,default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=100000)



pd = input(22, title="LookBack Period Standard Deviation High")
bbl = input(20, title="Bolinger Band Length")
mult = input(2.0    , minval=1, maxval=5, title="Bollinger Band Standard Devaition Up")
lb = input(50  , title="Look Back Period Percentile High")
ph = input(.85, title="Highest Percentile - 0.90=90%, 0.95=95%, 0.99=99%")

ltLB = input(40, minval=25, maxval=99, title="Long-Term Look Back Current Bar Has To Close Below This Value OR Medium Term--Default=40")
mtLB = input(14, minval=10, maxval=20, title="Medium-Term Look Back Current Bar Has To Close Below This Value OR Long Term--Default=14")
str = input(3, minval=1, maxval=9, title="Entry Price Action Strength--Close > X Bars Back---Default=3")



//Williams Vix Fix Formula
wvf = ((highest(close, pd)-low)/(highest(close, pd)))*100
sDev = mult * stdev(wvf, bbl)
midLine = sma(wvf, bbl)
lowerBand = midLine - sDev
upperBand = midLine + sDev
rangeHigh = (highest(wvf, lb)) * ph

//Filtered Bar Criteria
upRange = low > low[1] and close > high[1]
upRange_Aggr = close > close[1] and close > open[1]
//Filtered Criteria
filtered = ((wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and (wvf < upperBand and wvf < rangeHigh))
filtered_Aggr = (wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and not (wvf < upperBand and wvf < rangeHigh)

//Alerts Criteria
alert1 = wvf >= upperBand or wvf >= rangeHigh ? 1 : 0
alert2 = (wvf[1] >= upperBand[1] or wvf[1] >= rangeHigh[1]) and (wvf < upperBand and wvf < rangeHigh) ? 1 : 0
alert3 = upRange and close > close[str] and (close < close[ltLB] or close < close[mtLB]) and filtered ? 1 : 0
alert4 = upRange_Aggr and close > close[str] and (close < close[ltLB] or close < close[mtLB]) and filtered_Aggr ? 1 : 0


//Coloring Criteria of Williams Vix Fix
col = wvf >= upperBand or wvf >= rangeHigh ? lime : gray

//Plots for Williams Vix Fix Histogram and Alerts

longCond=alert3

shortCond = alert2



monthfrom =input(8)
monthuntil =input(12)
dayfrom=input(1)
dayuntil=input(31)

if (  longCond    and  month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil) 
    strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND",  comment="LONG")
    
else
    strategy.cancel(id="LONG")
    



if ( shortCond   and month>=monthfrom and month <=monthuntil and dayofmonth>=dayfrom and dayofmonth < dayuntil ) 

    strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND",  comment="SHORT")
else
    strategy.cancel(id="SHORT")
    


Thêm nữa