Estrategia de fijación de Williams VIX

El autor:¿ Qué pasa?, fecha: 2023-10-25 12:03:08
Las etiquetas:

img

Resumen general

La estrategia Williams VIX Fix calcula el valor corregido del Índice de Volatilidad VIX de CBOE y combina múltiples indicadores técnicos como bandas de Bollinger, rangos de percentil y impulso de precios para determinar y generar señales de negociación para las reversiones del VIX. La estrategia tiene como objetivo capturar el fenómeno de reversión excesiva del índice VIX y realizar operaciones contra tendencia durante situaciones de sobrecompra y sobreventa.

Estrategia lógica

La lógica central de esta estrategia se basa en los siguientes puntos:

  1. Calcular el valor fijo de Williams VIX (wvf) mediante la fórmula para capturar las fluctuaciones del VIX.

  2. Establecer los parámetros de cálculo de la banda de Bollinger para obtener la línea media, la banda superior y la banda inferior del índice VIX.

  3. Establecer los parámetros del intervalo de percentil para obtener el intervalo de percentil histórico del índice VIX.

  4. Utilice la variable reparada para determinar si el VIX está en un punto de reversión.

  5. Además, combinar la naturaleza de la ruptura de precios (upRange, upRange_Aggr) para determinar las características de la tendencia.

  6. Finalmente, combine múltiples condiciones como bandas de Bollinger, rangos de percentil y características de precios para determinar y generar señales comerciales.

La estrategia aprovecha al máximo las características de reversión media del VIX y captura las oportunidades de reversión a través de múltiples configuraciones de parámetros.

Análisis de ventajas

La estrategia tiene las siguientes ventajas:

  1. Aprovechar las tendencias de reversión del VIX para obtener ganancias cuando la incertidumbre del mercado es muy alta.

  2. La combinación de múltiples indicadores técnicos para el filtrado puede identificar eficazmente las oportunidades de reversión.

  3. Los parámetros ajustables de la estrategia pueden optimizarse para diferentes entornos de mercado.

  4. Implementación sencilla, fácil de entender y modificar, adecuada para el comercio en vivo.

  5. Utiliza plenamente las ideas de código de código abierto y es fácil de combinar con otras estrategias.

  6. La estrategia muestra una correlación de mercado relativamente baja y puede servir como componente de cobertura en la cartera.

  7. Maximizar la eliminación de operaciones ineficaces y filtrar las oportunidades de no reversión.

  8. Frecuencia de negociación moderada, no entrará y saldrá con demasiada frecuencia.

Análisis de riesgos

La estrategia también tiene algunos riesgos:

  1. El propio índice VIX tiene problemas de datos que pueden afectar el rendimiento de la estrategia.

  2. El comercio de reversión conlleva el riesgo de pérdidas, las cuales pueden agravarse si no se alcanza la reversión.

  3. Las múltiples configuraciones de parámetros hacen la optimización de parámetros bastante compleja.

  4. La captura inexacta del tiempo de reversión puede conducir a operaciones fallidas.

  5. La reducción de la frecuencia de negociación también puede hacer que se pierdan algunas oportunidades.

  6. Tanto las bandas de Bollinger como los rangos de percentil son susceptibles a señales falsas.

  7. Los juicios inexactos sobre la ruptura de precios pueden hacer que la estrategia sea ineficaz.

Los principales riesgos pueden reducirse mediante:

  1. Optimización de los parámetros para hacer más precisa la identificación de la inversión.

  2. Aumentar adecuadamente el tiempo de retención para garantizar que se establezca la inversión.

  3. Añadir más indicadores para la verificación para evitar señales falsas.

  4. Ajuste de los criterios de posición abierta para reducir las operaciones ineficaces.

  5. Añadir paradas para controlar las pérdidas.

Direcciones de optimización

La estrategia se puede optimizar en los siguientes aspectos:

  1. Optimizar los parámetros de la banda de Bollinger y el rango de percentil para mejorar la precisión del reconocimiento de la inversión.

  2. Añadir más indicadores de impulso de precios para evitar la identificación errónea de la tendencia.

  3. Ajustar los criterios de apertura de posiciones para garantizar una mayor eficiencia comercial.

  4. Establecer diferentes métodos de stop loss para controlar los riesgos.

  5. Ahorro con contratos de futuros VIX.

  6. Ajustar los parámetros de acuerdo con los diferentes entornos del mercado para hacer que la estrategia sea más adaptable.

  7. Agregue modelos de aprendizaje automático para determinar el tiempo de inversión.

  8. Combinar con otros alfa para aumentar el rendimiento general.

  9. Incorporar métodos cuantitativos para la optimización automática de parámetros.

  10. Ponga paradas de alcance y paradas de retroceso.

Resumen de las actividades

La estrategia Williams VIX Fix captura las características de reversión del índice VIX y toma operaciones contra tendencia durante el pánico del mercado. Es una estrategia de cobertura típica. La estrategia combina las ventajas de varios indicadores y los parámetros pueden controlar los riesgos. Con la optimización adecuada de los parámetros, puede lograr buenos rendimientos ajustados al riesgo. Sin embargo, la frecuencia de negociación no debe ser demasiado alta y los riesgos deben controlarse. En general, la lógica de la estrategia es clara, utiliza ideas de estrategia de código abierto y es una estrategia de negociación VIX que se puede usar en el comercio en vivo.


/*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")
    


Más.