
この戦略は,波動率指数 ((VIX) の10日移動平均に対する行動に基づく定量化取引システムである.この戦略は,VIXとその移動平均の間の偏差の程度を取引信号として利用し,技術分析と統計的なブレイジングの理念を組み合わせている.戦略の核心思想は,市場情緒の極端な変化を捕捉し,VIXが顕著な偏差を示すときに取引し,その平均値に戻ることを待つことである.
戦略は二方向取引の仕組みを採用し,多額の取引と空白の取引の2つの次元を含んでいます. 多項条件は,VIXの最低価格が10日移動平均より高く,閉盘価格が移動平均より少なくとも10%高くなければならないことを要求する.この2つの条件が同時に満たされると,システムは閉盘時に多項信号を生成する. 空白条件は,VIXの最高価格が10日移動平均より低く,閉店価格が移動平均より少なくとも10%低いことを要求する.この2つの条件が同時に満たされると,システムは閉店時に空白信号を生成する. 平仓規則はまた,VIXと移動平均の関係に基づいています.多頭ポジションの場合,VIXが前日の10日移動平均より低い取引時,平仓;空頭ポジションの場合,VIXが前日の10日移動平均より高い取引時,平仓.
この戦略は,市場の変動率に基づいた平均回帰戦略であり,市場情緒の極端な変化を定量的な方法によって捉えます.この戦略には,明確な取引規則とリスク管理機構がありますが,戦略の効果に対する市場の環境の変化の影響に注意する必要があります.この戦略は,継続的な最適化と改善により,異なる市場環境で安定したパフォーマンスを保持することが期待されています.
/*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")