Estrategia de reversión de la ruptura de impulso binomial

El autor:¿ Qué pasa?, Fecha: 2024-02-28 17:20:02
Las etiquetas:

img

Resumen general

La estrategia binomial de reversión de la ruptura del impulso combina el indicador estocástico y el indicador Bull Power para implementar un doble filtrado de señales y una negociación de reversión en los puntos de inflexión del mercado para perseguir situaciones de sobreventa y sobrecompra.

Estrategia lógica

La estrategia consta de dos partes:

  1. 123 Estrategia de reversión

    Utiliza la estrategia de reversión propuesta por Ulf Jensen en su libro Cómo triplicé mi dinero en el mercado de futuros. Se hace largo cuando el precio de cierre es mayor que el cierre anterior durante 2 días consecutivos y el estocástico lento de 9 días está por debajo de 50; se hace corto cuando el precio de cierre es menor que el cierre anterior durante 2 días consecutivos y el estocástico rápido de 9 días está por encima de 50.

  2. Indicador de potencia de los toros

    Utiliza el indicador de impulso propuesto por Vadim Gimelfarb en su libro Bull and Bear Balance Indicator. Juzga el poder alcista / bajista calculando la relación entre la línea K actual y la línea K anterior y genera señales comerciales.

La estrategia combina las dos estrategias de señal única anteriores.

Análisis de ventajas

La estrategia combina las ventajas de las estrategias de reversión y las estrategias de seguimiento. Puede capturar señales de reversión oportunamente cuando el mercado muestra signos de reversión, al tiempo que reduce las señales falsas a través de un filtro de señal dual para evitar perseguir máximos y vender mínimos. Las principales ventajas son:

  1. Utilizando el patrón 123 para determinar los puntos de inflexión del mercado e identificar situaciones de sobreventa y sobrecompra.
  2. El mecanismo de filtro dual de señales evita señales falsas generadas por indicadores únicos y mejora la calidad de las señales de negociación.
  3. Comercio de reversión para aprovechar las oportunidades de tendencia traídas por las inversiones del mercado.
  4. Gran espacio de optimización de parámetros para adaptarse a diferentes entornos de mercado mediante el ajuste de parámetros de indicadores.

Análisis de riesgos

La estrategia también tiene algunos riesgos:

  1. El riesgo de fallo de la inversión. Identificar señales de reversión tiene cierta dificultad. La probabilidad de que los precios continúen la tendencia original después de dar señales de reversión también es muy alta.
  2. Pérdida de oportunidad cuando hay señales inconsistentes entre dos indicadores.
  3. Identificación inexacta de las señales de reversión debido a parámetros inadecuados.
  4. La estrategia es más adecuada para el comercio a medio y largo plazo.

Las contramedidas:

  1. Adopte estrategias de stop loss para controlar las pérdidas individuales.
  2. Optimización de los parámetros. Se pueden seleccionar diferentes combinaciones para diferentes variedades.
  3. Combinar otros indicadores como juicio auxiliar.

Direcciones de optimización

La estrategia se puede optimizar aún más en los siguientes aspectos:

  1. Prueba el impacto de diferentes parámetros en el rendimiento de la estrategia para encontrar la combinación óptima de parámetros. Por ejemplo, ajusta los parámetros del ciclo del indicador estocástico, los parámetros de suavizado del indicador KDJ, etc.
  2. Puede establecer puntos de stop loss combinados con el indicador ATR.
  3. Combinar otros indicadores para la verificación de señales. Por ejemplo, MACD, KD, RSI y otros indicadores pueden considerarse al generar señales de negociación.
  4. Utilice algoritmos de aprendizaje automático para optimizar los parámetros y lograr un ajuste dinámico de los parámetros.

Resumen de las actividades

La estrategia binomial de reversión de impulso combina el indicador estocástico y el indicador Bull Power para lograr el filtrado de señales duales y la negociación de reversión. Puede aprovechar las oportunidades de reversión del mercado y evitar el ruido generado por señales individuales. Es una estrategia cuantitativa estable y efectiva. La estrategia se puede mejorar a través de la optimización de parámetros, estrategias de stop loss, verificación de señales, etc., lo que la hace adecuada para más variedades y entornos de mercado. Tiene un gran potencial de optimización y aplicación.


/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 05/07/2019
// 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
//  Bull Power Indicator
//  To get more information please see "Bull And Bear Balance Indicator" 
//  by Vadim Gimelfarb. 
//
// 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

BullPower(SellLevel, BuyLevel) =>
    pos = 0
    value = iff (close < open ,  
             iff (close[1] < open ,  max(high - close[1], close - low), max(high - open, close - low)),
              iff (close > open, 
               iff(close[1] > open,  high - low, max(open - close[1], high - low)), 
                 iff(high - close > close - low, 
                  iff (close[1] < open, max(high - close[1], close - low), high - open), 
                   iff (high - close < close - low, 
                     iff(close[1] > open,  high - low, max(open - close, high - low)), 
                      iff (close[1] > open, max(high - open, close - low),
                       iff(close[1] < open, max(open - close, high - low), high - low))))))
    pos := iff(value > SellLevel, -1,
	         iff(value <= BuyLevel, 1, nz(pos[1], 0)))
    pos

strategy(title="Combo Backtest 123 Reversal & Bull Power", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
SellLevel = input(15, step=1)
BuyLevel = input(3, step=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posBullPower = BullPower(SellLevel, BuyLevel)
pos = iff(posReversal123 == 1 and posBullPower == 1 , 1,
	   iff(posReversal123 == -1 and posBullPower == -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 )

Más.