
Chiến lược này là một hệ thống giao dịch định lượng dựa trên chỉ số biến động ((VIX) so với hoạt động của đường trung bình di chuyển 10 ngày của nó. Chiến lược này sử dụng mức độ lệch giữa VIX và đường trung bình di chuyển của nó như một tín hiệu giao dịch, kết hợp với các lý thuyết phân tích kỹ thuật và đánh giá thống kê. Ý tưởng cốt lõi của chiến lược là để nắm bắt những thay đổi cực đoan trong tâm trạng thị trường, giao dịch khi VIX có sự lệch đáng kể và chờ đợi nó quay trở lại trung bình.
Chiến lược này sử dụng cơ chế giao dịch hai chiều, bao gồm hai chiều: Các điều kiện khác nhau yêu cầu giá tối thiểu của VIX phải cao hơn trung bình di chuyển 10 ngày của nó và giá đóng cửa phải cao hơn trung bình di chuyển ít nhất 10%. Khi cả hai điều kiện này được đáp ứng cùng nhau, hệ thống sẽ tạo ra tín hiệu khác nhau khi đóng cửa. Điều kiện mở cửa yêu cầu giá cao nhất của VIX phải thấp hơn trung bình di chuyển 10 ngày của nó và giá đóng cửa phải ít nhất 10% thấp hơn trung bình di chuyển. Khi cả hai điều kiện này được đáp ứng cùng lúc, hệ thống sẽ tạo ra tín hiệu mở cửa khi đóng cửa. Quy tắc ngang hàng cũng dựa trên mối quan hệ của VIX với đường trung bình di chuyển: Đối với các vị trí đa đầu, khi VIX giao dịch trong ngày thấp hơn đường trung bình di chuyển 10 ngày trước; Đối với các vị trí trống, khi VIX giao dịch trong ngày cao hơn đường trung bình di chuyển 10 ngày trước.
Chiến lược này là một chiến lược quay trở lại giá trị trung bình dựa trên sự biến động của thị trường, nắm bắt những thay đổi cực đoan trong tâm trạng thị trường thông qua phương pháp định lượng. Chiến lược có các quy tắc giao dịch rõ ràng và cơ chế kiểm soát rủi ro, nhưng cần chú ý đến tác động của sự thay đổi môi trường thị trường đối với hiệu quả của chiến lược.
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-09 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © EdgeTools
//@version=5
strategy("Connors VIX Reversal III invented by Dave Landry", overlay=true)
// Inputs
vixSymbol = input("swap", "VIX Symbol")
lengthMA = input(10, title="Length of Moving Average")
percentThreshold = input(10, title="Percentage Threshold")
buyColor = input(color.rgb(0, 255, 0,90), title="Buy Signal Color")
sellColor = input(color.rgb(255, 0, 0,90), title="Sell Signal Color")
exitColor = input(color.rgb(0, 0, 255,90), title="Exit Signal Color")
// Fetch VIX data
vixClose = request.security(vixSymbol, "D", close)
vixHigh = request.security(vixSymbol, "D", high)
vixLow = request.security(vixSymbol, "D", low)
// Calculate 10-day Moving Average of VIX
vixMA = ta.sma(vixClose, lengthMA)
// Calculate yesterday's 10-day Moving Average
vixMA_yesterday = ta.sma(vixClose[1], lengthMA)
// Buy Rules
buyCondition1 = vixLow > vixMA
buyCondition2 = vixClose > vixMA * (1 + percentThreshold / 100)
buySignal = buyCondition1 and buyCondition2
// Sell Rules
sellCondition1 = vixHigh < vixMA
sellCondition2 = vixClose < vixMA * (1 - percentThreshold / 100)
sellSignal = sellCondition1 and sellCondition2
// Exit Rules
buyExit = vixLow < vixMA_yesterday
sellExit = vixHigh > vixMA_yesterday
// Plot Buy/Sell Signals
bgcolor(buySignal ? buyColor : na)
bgcolor(sellSignal ? sellColor : na)
// Exit Signals
bgcolor(buyExit ? exitColor : na)
bgcolor(sellExit ? exitColor : na)
// Strategy
if (buySignal)
strategy.entry("Buy", strategy.long)
if (sellSignal)
strategy.entry("Sell", strategy.short)
if (buyExit)
strategy.close("Buy")
if (sellExit)
strategy.close("Sell")