Estrategia de retroexamen de la volatilidad estadística basada en el método de valor extremo

El autor:¿ Qué pasa?, Fecha: 2023-12-26 10:24:53
Las etiquetas:

img

Resumen general

Esta estrategia utiliza el método de valor extremo para calcular la volatilidad estadística, también conocida como volatilidad histórica. Mide la volatilidad en función de los valores extremos del precio más alto, el precio más bajo y el precio de cierre, combinados con el factor de tiempo. La volatilidad refleja la fluctuación del precio del activo. La estrategia realizará operaciones largas o cortas correspondientes cuando la volatilidad sea superior o inferior al umbral.

Principio de la estrategia

  1. Calcular los valores extremos del precio más alto, precio más bajo y precio de cierre en un determinado período de tiempo
  2. Aplicar la fórmula del método del valor extremo para calcular la volatilidad estadística
    SqrTime = sqrt(253 / Length)
    Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5
    
  3. Comparar la volatilidad con los umbrales superior e inferior para generar señales comerciales
    pos = iff(nRes > TopBand, 1,  
              iff(nRes < LowBand, -1, nz(pos[1], 0)))
    
  4. Realizar operaciones largas o cortas basadas en las señales comerciales

Análisis de ventajas

Las principales ventajas de esta estrategia son las siguientes:

  1. El uso del indicador de volatilidad estadística puede captar eficazmente los puntos calientes del mercado y las oportunidades de reversión
  2. El método del valor extremo para calcular la volatilidad no es sensible a los precios extremos, lo que resulta en resultados más estables y fiables
  3. Los parámetros se pueden ajustar para adaptarse a la negociación en diferentes entornos de volatilidad

Análisis de riesgos

Los principales riesgos de esta estrategia son:

  1. La volatilidad estadística en sí tiene cierto retraso y no puede captar con precisión los puntos de inflexión del mercado.
  2. El indicador de volatilidad reacciona lentamente a eventos repentinos, posiblemente perdiendo oportunidades de negociación a corto plazo
  3. Hay algunos riesgos de operaciones equivocadas y stop loss

Contramedidas y soluciones:

  1. Acortar adecuadamente el ciclo estadístico para aumentar la sensibilidad a los cambios del mercado
  2. Utilizar otros indicadores como ayuda para mejorar la precisión de la señal
  3. Establecer puntos de parada de pérdida para controlar pérdidas individuales

Direcciones de optimización

Las direcciones de optimización para esta estrategia:

  1. Prueba de diferentes parámetros del período estadístico para encontrar los parámetros óptimos
  2. Añadir un módulo de gestión de posiciones para ajustar las posiciones en función de la volatilidad
  3. Añadir condiciones de filtro como líneas de media móvil para reducir las operaciones incorrectas

Resumen de las actividades

Esta estrategia utiliza el método de valor extremo para calcular la volatilidad estadística, y genera señales de negociación al capturar anomalías de volatilidad. En comparación con indicadores simples como líneas de promedio móvil, refleja mejor la volatilidad del mercado y captura reversiones. Mientras tanto, el algoritmo del método de valor extremo también hace que los resultados sean más estables y confiables. A través del ajuste y optimización de parámetros, esta estrategia puede adaptarse a diferentes condiciones del mercado, y su lógica de negociación y indicador de volatilidad estadística merecen más investigación y aplicación.


/*backtest
start: 2022-12-19 00:00:00
end: 2023-12-25 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 22/11/2014
// This indicator used to calculate the statistical volatility, sometime 
// called historical volatility, based on the Extreme Value Method.
// Please use this link to get more information about Volatility. 
//
// You can change long to short in the Input Settings
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
strategy(title="Statistical Volatility - Extreme Value Method ", shorttitle="Statistical Volatility Backtest")
Length = input(30, minval=1)
TopBand = input(0.005, step=0.001)
LowBand = input(0.0016, step=0.001)
reverse = input(false, title="Trade reverse")
hline(TopBand, color=red, linestyle=line)
hline(LowBand, color=green, linestyle=line)
xMaxC = highest(close, Length)
xMaxH = highest(high, Length)
xMinC = lowest(close, Length)
xMinL = lowest(low, Length)
SqrTime = sqrt(253 / Length)
Vol = ((0.6 * log(xMaxC / xMinC) * SqrTime) + (0.6 * log(xMaxH / xMinL) * SqrTime)) * 0.5
nRes = iff(Vol < 0,  0, iff(Vol > 2.99, 2.99, Vol))
pos = iff(nRes > TopBand, 1,
	   iff(nRes < LowBand, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue )  
plot(nRes, color=blue, title="Statistical Volatility")


Más.