Estrategia combinada de doble inversión de la media móvil y de ATR Trailing Stop

El autor:¿ Qué pasa?, Fecha: 2024-01-26 11:26:40
Las etiquetas:

img

Resumen general

La estrategia de combinación de la inversión de promedios móviles dobles y la parada de seguimiento de ATR es una estrategia de negociación cuantitativa muy práctica. La estrategia utiliza primero la cruz de la muerte y la cruz de oro formadas por los promedios móviles dobles para determinar las tendencias del mercado y los puntos de inversión. Al mismo tiempo, la estrategia también combina el rango promedio verdadero para establecer paradas de seguimiento para garantizar la ganancia mientras se controlan los riesgos.

Principio de la estrategia

Estrategia de inversión de la media móvil doble

La estrategia de reversión de la media móvil dual utiliza el cruce de líneas rápidas y lentas para determinar las tendencias del mercado. Cuando la línea rápida cruza por debajo de la línea lenta de arriba a abajo, forma una cruz de muerte, lo que indica que la tendencia del mercado está cambiando de alza a baja. Cuando la línea rápida cruza por encima de la línea lenta de abajo a arriba, forma una cruz de oro, lo que indica que la tendencia del mercado está cambiando de caída a alza.

Específicamente, la estrategia utiliza la línea rápida STOCH de 9 días como la línea rápida y la EMA de 3 días como la línea lenta. Cuando el cierre es menor que el cierre anterior y la línea rápida cruza por encima de 50 para cruzar por encima de la línea lenta, se despeja la posición para ir corto. Cuando el cierre es mayor que el cierre anterior y la línea rápida cruza por debajo de 50 para cruzar por debajo de la línea lenta, se despeja la posición para ir largo.

Estrategia de detención trasera de ATR

La estrategia ATR trailing stop utiliza el rango verdadero promedio para establecer puntos de stop loss. El indicador ATR puede reflejar efectivamente la volatilidad a corto plazo del mercado. La estrategia establece el trail stop basado en el valor de ATR para salir cuando la tendencia de precios se invierte.

Específicamente, la estrategia utiliza ATR de 5 días y establece el punto de stop loss en cerrar menos 3,5 veces ATR. Cuando el precio alcanza el punto de stop loss, cierra la posición para stop loss.

Análisis de ventajas

La estrategia combinada de doble inversión de la media móvil y de parada trasera ATR combina la ventaja de la estrategia de media móvil para determinar tendencias e inversiones y la ventaja de la estrategia de parada trasera ATR para controlar riesgos, por lo que es una estrategia muy práctica.

En concreto, la estrategia presenta las siguientes ventajas:

  1. Utilice la cruz de la muerte y la cruz de oro formadas por dos medias móviles para determinar los puntos de inversión de la tendencia del mercado e identificar con precisión las señales de inversión.

  2. Combinar el indicador STOCH para confirmar las señales de inversión y evitar las falsas señales.

  3. El ATR trailing stop establece puntos de stop loss con flexibilidad basados en la volatilidad del mercado para maximizar el bloqueo de ganancias.

  4. La estrategia integra múltiples indicadores y métodos de análisis técnico para hacerla más sólida.

  5. La idea de la estrategia es clara y fácil de entender, los parámetros son flexibles para el ajuste, y es fácil de operar en el comercio en vivo.

Análisis de riesgos

Aunque la estrategia tiene muchas ventajas, todavía hay algunos riesgos a tener en cuenta:

  1. Las señales generadas por las medias móviles duales pueden retrasarse y no poder comprar y vender con precisión en los puntos de inversión.

  2. El indicador ATR no es sensible a las grandes fluctuaciones del mercado y no puede actualizar el stop loss a tiempo.

  3. La combinación de múltiples parámetros y condiciones aumenta la complejidad de la estrategia. Los parámetros inadecuados pueden causar una negociación demasiado agresiva y aumentar los riesgos. Los parámetros deben evaluarse cuidadosamente y ajustarse gradualmente.

Direcciones de optimización

De acuerdo con el análisis de riesgos anterior, la estrategia puede optimizarse en los siguientes aspectos:

  1. Ajustar los parámetros de la media móvil del período para acortar los períodos para capturar las oportunidades de reversión de forma temprana.

  2. Añadir otros indicadores para determinar las señales de reversión, tales como MACD, KD, etc. para formar confirmaciones múltiples.

  3. Los periodos de ATR se ajustan dinámicamente o introducen volatilidad del mercado para actualizar el stop loss en tiempo real.

  4. Evaluar las diferencias entre los mercados de valores y de futuros y ajustar los parámetros respectivamente para que sean más adecuados para ambos mercados.

  5. Añadir los costos de negociación y el deslizamiento en backtesting para hacer que la estrategia más cerca del entorno de negociación en vivo.

  6. Considere agregar modelos de aprendizaje automático para optimizar dinámicamente múltiples parámetros.

Resumen de las actividades

La estrategia combinada de doble inversión de promedio móvil y parada de seguimiento de ATR es una estrategia cuantitativa eficiente y práctica. Combina las dos ventajas de determinar la inversión del mercado con promedios móviles y controlar los riesgos estableciendo paradas de rastro de ATR. Asegura ganancias al tiempo que reduce pérdidas innecesarias. La estrategia tiene ajuste de parámetros flexible y es fácil de operar en el comercio en vivo. Al mismo tiempo, también se puede ampliar y optimizar en múltiples aspectos para adaptarse a entornos de mercado más extensos. En general, la estrategia proporciona un excelente marco estratégico para el comercio cuantitativo.


/*backtest
start: 2023-12-26 00:00:00
end: 2024-01-25 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 17/05/2019
// This is combo strategies for get 
// a cumulative signal. Result signal will return 1 if two strategies 
// is long, -1 if all strategies is short and 0 if signals of strategies is not equal.
//
// 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.
//
// Secon strategy
// Average True Range Trailing Stops Strategy, by Sylvain Vervoort 
// The related article is copyrighted material from Stocks & Commodities Jun 2009 
//
// 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


ATR_TrailingStop(nATRPeriod, nATRMultip) =>
    xATR = atr(nATRPeriod)
    nLoss = nATRMultip * xATR
    pos = 0.0
    xATRTrailingStop = 0.0
    xATRTrailingStop := iff(close > nz(xATRTrailingStop[1], 0) and close[1] > nz(xATRTrailingStop[1], 0), max(nz(xATRTrailingStop[1]), close - nLoss),
                         iff(close < nz(xATRTrailingStop[1], 0) and close[1] < nz(xATRTrailingStop[1], 0), min(nz(xATRTrailingStop[1]), close + nLoss), 
                           iff(close > nz(xATRTrailingStop[1], 0), close - nLoss, close + nLoss)))
    pos := iff(close[1] < nz(xATRTrailingStop[1], 0) and close > nz(xATRTrailingStop[1], 0), 1,
    	     iff(close[1] > nz(xATRTrailingStop[1], 0) and close < nz(xATRTrailingStop[1], 0), -1, nz(pos[1], 0))) 

    pos

strategy(title="Combo Backtest 123 Reversal & Average True Range Trailing Stops", shorttitle="Combo", overlay = true)
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
nATRPeriod = input(5)
nATRMultip = input(3.5)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posATR_TrailingStop = ATR_TrailingStop(nATRPeriod, nATRMultip)
pos = iff(posReversal123 == 1 and posATR_TrailingStop == 1 , 1,
	   iff(posReversal123 == -1 and posATR_TrailingStop == -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 ? red: possig == 1 ? green : blue ) 

Más.