Estrategia de trading de inversión de varianza


Fecha de creación: 2023-10-31 14:42:13 Última modificación: 2023-10-31 14:42:13
Copiar: 0 Número de Visitas: 650
1
Seguir
1617
Seguidores

Estrategia de trading de inversión de varianza

Descripción general

La estrategia de inversión de diferencia generó una señal de negociación cuando se produjo una reversión en el ratio de las opciones a la baja y a la baja, también conocidas como opciones a la baja y opciones a la baja. La estrategia se combina con reglas simples de administración de fondos para obtener ganancias. Se aplica a los ciclos de 30 minutos de NDX y SPX.

Principio de estrategia

El indicador central de esta estrategia es la media de la tasa de opciones de compra y venta y su diferencia estándar. Primero se calcula la media de la tasa de opciones de compra y venta en los últimos 20 días, y luego la diferencia estándar de la tasa en los últimos 30 días.

Después de hacer más, si la proporción vuelve a caer por encima de la media, aplanar la posición en blanco. La línea de parada se establece como el 1% del precio de apertura. La línea de parada se establece como tres veces la distancia de parada del precio de apertura.

Análisis de las ventajas

La mayor ventaja de esta estrategia reside en capturar los puntos de inflexión de la emoción del mercado. Cuando el mercado es demasiado pesimista o demasiado optimista, el índice de opciones binarias se vuelve anormal, lo que permite capturar la oportunidad de una reversión local. Además, las reglas de gestión de fondos establecen un límite de pérdidas y un límite de distancia para controlar eficazmente el riesgo y los beneficios de una sola operación.

Análisis de riesgos

El principal riesgo de esta estrategia reside en el problema de la configuración de los parámetros. Si los parámetros se establecen incorrectamente, puede ocasionar que las señales de negociación sean demasiado frecuentes y, por lo tanto, no puedan capturar oportunidades de reversión más significativas. Además, las señales de reversión pueden ser falsamente rotadas, lo que provoca pérdidas. Se recomienda optimizar los parámetros para que la señal sea más estable y confiable.

Dirección de optimización

Se puede considerar la combinación de otros indicadores para verificar la señal de reversión, para evitar ser engañados por una falsa ruptura. Por ejemplo, se puede agregar un indicador de volumen de transacciones, solo se considera la señal de reversión cuando el volumen de transacciones aumenta. También se pueden agregar algunos indicadores de tendencia, para evitar operaciones de reversión. Se puede probar la configuración de los parámetros de diferentes mercados en diferentes períodos de tiempo.

Resumir

La estrategia trata de capturar los puntos de inflexión en el mercado mediante el cálculo de la tasa de opciones a la baja y a la baja, combinada con principios simples de administración de fondos. Su ventaja es que se puede aprovechar la oportunidad de una reversión local, pero también existe el riesgo de ser engañado por una falsa ruptura.

Código Fuente de la Estrategia
/*backtest
start: 2023-09-30 00:00:00
end: 2023-10-30 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © I11L

//@version=5
strategy("I11L Long Put/Call Ratio Inversion", overlay=false, pyramiding=1, default_qty_value=10000, initial_capital=10000, default_qty_type=strategy.cash)

SL = input.float(0.01,step=0.01)
CRV = input.float(3)
TP = SL * CRV

len = input.int(30,"Lookback period in Days",step=10)
ratio_sma_lookback_len = input.int(20,step=10)
mult = input.float(1.5,"Standard Deviation Multiple")

ratio_sma = ta.sma(request.security("USI:PCC","D",close),ratio_sma_lookback_len)

median = ta.sma(ratio_sma,len)
standartDeviation = ta.stdev(ratio_sma,len)
upperDeviation = median + mult*standartDeviation
lowerDeviation = median - mult*standartDeviation


isBuy = ta.crossunder(ratio_sma, upperDeviation)// and close < buyZone
isCloseShort = (ratio_sma > median and strategy.position_size < 0)
isSL = (strategy.position_avg_price * (1.0 - SL) > low and strategy.position_size > 0) or (strategy.position_avg_price * (1.0 + SL) < high and strategy.position_size < 0)
isSell = ta.crossover(ratio_sma,lowerDeviation) 
isTP = strategy.position_avg_price * (1 + TP) < high

if(isBuy)
    strategy.entry("Long", strategy.long)

if(isCloseShort)
    strategy.exit("Close Short",limit=close)

if(isSL)
    strategy.exit("SL",limit=close)

if(isTP)
    strategy.exit("TP",limit=close)
    
plot(ratio_sma,color=color.white)
plot(median,color=color.gray)
plot(upperDeviation,color=color.rgb(0,255,0,0))
plot(lowerDeviation,color=color.rgb(255,0,0,0))

bgcolor(isBuy?color.rgb(0,255,0,90):na)
bgcolor(isSell?color.rgb(255,0,0,90):na)