En la carga de los recursos... Cargando...

Una estrategia de negociación de índices de impulso de inversión doble

El autor:¿ Qué pasa?, Fecha: 2024-02-06 09:29:34
Las etiquetas:

img

Resumen general

La estrategia del Índice de Momentum de Reversión Doble combina una estrategia de Reversión 123 y una estrategia de Índice de Momentum Relativo (RMI).

Principio de la estrategia

La estrategia consta de dos partes:

  1. 123 Estrategia de reversión

    • Largo cuando el cierre de ayer es menor que el de los días anteriores y el cierre de hoy es mayor que el de los días anteriores, y el de 9 días Slow K es inferior a 50
    • Corto cuando el cierre de ayer es mayor que el de los días anteriores y el cierre de hoy es menor que el de los días anteriores, y el de 9 días Fast K es mayor que 50
  2. Estrategia del índice de impulso relativo (RMI)

    • RMI es una variación del RSI con un componente de impulso añadido.
    • Long cuando el RMI es inferior a la línea de sobrecompra; Short cuando el RMI es superior a la línea de sobreventa

La estrategia sólo genera señales de negociación cuando el 123 Reversión y el RMI dan señales dobles alineadas.

Análisis de ventajas

Las ventajas de esta estrategia incluyen:

  1. Mejora de la precisión de la señal con dos indicadores
  2. Técnicas de reversión adecuadas para mercados de rango limitado
  3. RMI sensible para identificar los puntos de inflexión de las tendencias fuertes

Análisis de riesgos

También hay algunos riesgos:

  1. Los filtros dobles pueden perder algunas oportunidades comerciales
  2. Las señales de reversión podrían tener errores de juicio
  3. La configuración incorrecta de los parámetros RMI puede afectar a la eficiencia

Estos riesgos podrían reducirse ajustando los parámetros y optimizando los cálculos de los indicadores.

Direcciones de optimización

La estrategia se puede optimizar aún más mediante:

  1. Prueba de diferentes combinaciones de parámetros para encontrar el óptimo
  2. Prueba de diferentes combinaciones de indicadores de reversión, por ejemplo, KDJ, MACD
  3. Ajuste de la fórmula del IMR para hacerla más sensible
  4. Mecanismos de stop loss para controlar pérdidas individuales
  5. Combinar el volumen de operaciones para evitar señales falsas

Conclusión

La estrategia del Índice de Momentum de Reversión Doble puede mejorar efectivamente la precisión de las decisiones comerciales y reducir la probabilidad de señales erróneas a través del filtrado de señales dobles y la optimización de parámetros. Es adecuado para los mercados de rango para descubrir oportunidades de reversión.


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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 07/06/2021
// 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
// The Relative Momentum Index (RMI) was developed by Roger Altman. Impressed 
// with the Relative Strength Index's sensitivity to the number of look-back 
// periods, yet frustrated with it's inconsistent oscillation between defined 
// overbought and oversold levels, Mr. Altman added a momentum component to the RSI.
// As mentioned, the RMI is a variation of the RSI indicator. Instead of counting 
// up and down days from close to close as the RSI does, the RMI counts up and down 
// days from the close relative to the close x-days ago where x is not necessarily 
// 1 as required by the RSI). So as the name of the indicator reflects, "momentum" is 
// substituted for "strength". 
//
// 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


RMI(Length,BuyZone, SellZone) =>
    pos = 0.0
    xMU = 0.0
    xMD = 0.0
    xPrice = close
    xMom = xPrice - xPrice[Length]
    xMU := iff(xMom >= 0, nz(xMU[1], 1) - (nz(xMU[1],1) / Length) + xMom, nz(xMU[1], 1))
    xMD := iff(xMom <= 0, nz(xMD[1], 1) - (nz(xMD[1],1) / Length) + abs(xMom), nz(xMD[1], 0))
    RM = xMU / xMD
    nRes = 100 * (RM / (1+RM))
    pos:= iff(nRes < BuyZone, 1,
    	   iff(nRes > SellZone, -1, nz(pos[1], 0))) 
    pos

strategy(title="Combo Backtest 123 Reversal & Relative Momentum Index", shorttitle="Combo", overlay = true)
line1 = input(true, "---- 123 Reversal ----")
Length = input(14, minval=1)
KSmoothing = input(1, minval=1)
DLength = input(3, minval=1)
Level = input(50, minval=1)
//-------------------------
line2 = input(true, "---- Relative Momentum Index ----")
LengthRMI = input(20, minval=1)
BuyZone = input(40, minval=1)
SellZone = input(70, minval=1)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posRMI = RMI(LengthRMI,BuyZone, SellZone)
pos = iff(posReversal123 == 1 and posRMI == 1 , 1,
	   iff(posReversal123 == -1 and posRMI == -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.