Estrategia cuantitativa de ruptura alta y baja


Fecha de creación: 2023-11-10 11:09:28 Última modificación: 2023-11-10 11:09:28
Copiar: 0 Número de Visitas: 589
1
Seguir
1617
Seguidores

Estrategia cuantitativa de ruptura alta y baja

Descripción general

La estrategia de fusión es una estrategia de negociación cuantitativa que combina la estrategia de inversión de la forma 123 con la estrategia de ruptura de los niveles altos y bajos. La estrategia, a través de un juicio integral de las señales de indicadores en diferentes períodos de tiempo, logra una combinación de ventajas de fondos de varios períodos de tiempo, con el objetivo de obtener ganancias excedentarias en la línea media y larga.

Principio de estrategia

La estrategia de fusión tiene dos partes:

  1. 123 estrategias de reversión
    La estrategia proviene de la idea de P183 en el libro de Ulf Jensen, How to get three times as much in the futures market. La estrategia genera señales de compra y venta al determinar la relación entre el precio de cierre de 2 días consecutivos y el precio de cierre del día anterior, en combinación con el indicador estocástico para determinar la situación de sobreventa y sobreventa en el mercado. En concreto, se produce una señal de compra cuando el precio de cierre de 2 días consecutivos sube por encima del cierre del día anterior y el indicador estocástico lento baja por debajo de 50; se produce una señal de venta cuando el precio de cierre de 2 días consecutivos baja por encima del cierre del día anterior y el indicador estocástico rápido es superior a 50.

  2. Estrategias de ruptura de alto y bajo nivel
    Esta estrategia determina las señales de negociación al determinar si los precios han roto los altos y bajos de los diferentes períodos. Calcula los precios más altos y más bajos del ciclo actual y del ciclo anterior, y genera una señal de compra cuando el precio supera el precio más alto y una señal de venta cuando supera el precio más bajo. La ventaja de esta estrategia es que puede identificar las características de la forma de la línea de los diferentes períodos y entrar en el mercado antes de que se forme una tendencia.

Las estrategias de fusión combinan las dos estrategias mencionadas anteriormente y generan una señal de negociación real cuando la dirección de la señal de las dos estrategias coincide. De esta manera, se pueden filtrar algunas señales no válidas generadas por errores de juicio de una sola estrategia y mejorar la fiabilidad de la señal.

Ventajas estratégicas

  1. El análisis de múltiples períodos de tiempo mejora la precisión de la señal.
    La estrategia combina las características morfológicas de la línea solar y los períodos de tiempo más altos, lo que permite una mayor precisión en el juicio de las señales de negociación y evitar ser engañados por las fluctuaciones a corto plazo del mercado.

  2. Aprovechar al máximo el criterio de sobrecompra y sobreventa del indicador estocástico
    La aplicación del indicador StochasticSlow evita compras apresuradas en zonas de sobrecompra y la aplicación del indicador StochasticFast evita ventas apresuradas en zonas de sobreventa, reduciendo las pérdidas innecesarias.

  3. Capturar las características de las tendencias a tiempo para reducir la probabilidad de oportunidades perdidas
    Las estrategias de breakouts altos y bajos permiten identificar las áreas clave de breakouts de precios en períodos de línea más largos, para entrar en la tendencia antes y reducir la probabilidad de oportunidades perdidas.

  4. La combinación de varias estrategias, con flexibilidad y optimización
    La estrategia se compone de varias subestrategias, con un gran espacio de optimización, que se puede optimizar mediante el ajuste de los parámetros de la subestrategia o la introducción de nuevas subestrategias, para que la estrategia sea más estable y confiable.

  5. La lógica de la estrategia es clara y fácil de entender
    La estructura de la política es simple y clara, fácil de entender y modificar, y fácil de mantener en el futuro.

Riesgo estratégico

  1. El aumento de la señal de retraso en la síntesis de múltiples períodos de tiempo
    Si bien la integración de múltiples períodos de tiempo puede mejorar la precisión de la señal, también puede aumentar el retraso de la señal y perder oportunidades de negociación en líneas cortas.

  2. 123 formas no reconocen tendencias más largas
    La estrategia de reversión de 123 no puede identificar los puntos clave de reversión de tendencias en un período de tiempo más largo, a juzgar sólo por los acontecimientos de los últimos días.

  3. La configuración incorrecta de los parámetros de ciclo puede causar falsas señales
    La configuración incorrecta de los parámetros de los indicadores estocásticos y de los periodos de ruptura alta y baja puede generar demasiadas señales de negociación falsas.

  4. La adaptabilidad a situaciones particulares es más escasa en base a indicadores técnicos
    La estrategia se basa en indicadores técnicos y no tiene en cuenta la información básica, por lo que es poco adaptable en caso de un gran evento de cisne negro.

Resolvemos el riesgo:

  1. Reducir adecuadamente el ciclo de cálculo y reducir el retraso de la señal.

  2. Intentar introducir indicadores de ciclo más largo o formas como filtros.

  3. Optimización de la configuración de los parámetros, para probar la estabilidad de los parámetros en la retroalimentación.

  4. Considere la combinación de los factores básicos para filtrar las señales.

Dirección de optimización de la estrategia

  1. Prueba y optimiza los parámetros de las subestrategias para que sean más robustas.

  2. Aumentar la combinación de otros indicadores para la toma de decisiones auxiliares, como los fundamentos, el flujo de fondos, etc.

  3. Introducir estrategias de stop loss para controlar las pérdidas máximas en una sola operación.

  4. Para mejorar la adaptabilidad de las estrategias a una variedad específica, los parámetros son refinados.

  5. Aumentar el modelo de aprendizaje automático para la toma de decisiones.

Resumir

En resumen, la estrategia de fusión integra las ventajas de los indicadores técnicos de múltiples escalas de tiempo, con el objetivo de mejorar la precisión y la puntualidad de la evaluación de la señal. En comparación con la estrategia de indicadores técnicos individuales, tiene una capacidad de evaluación de tendencias más aguda y una generación de señales más sólida.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 25/11/2020
// This is combo strategies for get a cumulative signal. 
//
// First strategy
// This System was created from the Book "How I Tripled My Money In The 
// Futures Market" by Ulf Jensen, Page 183. This is reverse type of strategies.
// The strategy buys at market, if close price is higher than the previous close 
// during 2 days and the meaning of 9-days Stochastic Slow Oscillator is lower than 50. 
// The strategy sells at market, if close price is lower than the previous close price 
// during 2 days and the meaning of 9-days Stochastic Fast Oscillator is higher than 50.
//
// Second strategy
// This script shows a high and low period value.
//    Width - width of lines
//    SelectPeriod - Day or Week or Month and etc.
//    LookBack - Shift levels 0 - current period, 1 - previous and etc. 
//
// WARNING:
// - For purpose educate only
// - This script to change bars colors.
////////////////////////////////////////////////////////////
Reversal123(Length, KSmoothing, DLength, Level) =>
    vFast = sma(stoch(close, high, low, Length), KSmoothing) 
    vSlow = sma(vFast, DLength)
    pos = 0.0
    pos := iff(close[2] < close[1] and close > close[1] and vFast < vSlow and vFast > Level, 1,
	         iff(close[2] > close[1] and close < close[1] and vFast > vSlow and vFast < Level, -1, nz(pos[1], 0))) 
	pos

    
HLL(LookBack, SelectPeriod) =>
    pos = 0.0
    xHigh  = security(syminfo.tickerid, SelectPeriod, high[LookBack])
    xLow   = security(syminfo.tickerid, SelectPeriod, low[LookBack])
    vS1 = xHigh
    vR1 = xLow
    pos := iff(close > vR1, 1,
             iff(close < vS1, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & High and Low Levels", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SelectPeriod = input(title="Resolution", type=input.resolution, defval="D")
LookBack = input(1,  minval=0)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posHLL = HLL(LookBack, SelectPeriod)
pos = iff(posReversal123 == 1 and posHLL == 1 , 1,
	   iff(posReversal123 == -1 and posHLL == -1, -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)	 
if (possig == 0) 
    strategy.close_all()
barcolor(possig == -1 ? #b50404: possig == 1 ? #079605 : #0536b3 )