Estrategia de seguimiento de tendencia de reversión con indicador dual


Fecha de creación: 2024-02-01 10:55:30 Última modificación: 2024-02-01 10:55:30
Copiar: 0 Número de Visitas: 743
1
Seguir
1664
Seguidores

Estrategia de seguimiento de tendencia de reversión con indicador dual

Descripción general

La estrategia utiliza una combinación de los indicadores de la media móvil y el índice de facilidad de negociación en el mercado, para comprar o vender cuando se determina que el precio se invierte, y se clasifica como una estrategia de negociación inversa.

Principio de estrategia

La estrategia utiliza dos indicadores para la determinación de la señal. El primero es el indicador de promedio móvil, específicamente una combinación de línea rápida y lenta de un indicador aleatorio. Se produce una señal de venta cuando el precio baja durante dos días consecutivos y la línea rápida está por encima de la línea lenta; se produce una señal de compra cuando el precio aumenta durante dos días consecutivos y la línea rápida está por debajo de la línea lenta.

El segundo indicador es el índice de facilidad de negociación en el mercado. El índice determina la liquidez del mercado y la eficiencia de la operación de los precios mediante el cálculo de la relación entre el alcance de la fluctuación de los precios y el volumen de transacciones. Un aumento en el índice indica que el mercado opera con fluidez y alta eficiencia, lo que puede considerarse una tendencia.

Esta estrategia combina la lógica de juicio de los dos indicadores para generar operaciones de compra y venta cuando ambos indicadores emiten señales de compra o venta al mismo tiempo.

Ventajas estratégicas

  • Con la confirmación de dos indicadores, se puede mejorar la precisión de la señal y evitar falsas señales
  • La combinación de indicadores de reversión y indicadores de tendencia permite determinar la tendencia general al mismo tiempo que se invierte, evitando la operación contraria
  • No es necesario cambiar de personal con frecuencia, lo que reduce la intervención humana.

Riesgos y soluciones

  • Si el mercado entra en un largo período de subida o bajada unilateral, será difícil capturar la oportunidad de reversión y no entrar en el campo.

  • Los parámetros del indicador de reversión se pueden flexibilizar adecuadamente para aumentar las oportunidades de compra y venta

  • También se puede aumentar el tamaño de las posiciones y obtener más ganancias siguiendo las tendencias.

  • Las señales de retorno pueden ser erróneas y hacer que la estrategia no funcione

  • Se puede reducir la falsa señal optimizando los parámetros del indicador o aumentando el ciclo de confirmación

Dirección de optimización

  • Se pueden probar más combinaciones de parámetros para encontrar los mejores parámetros indicadores
  • Puede agregar o cambiar el indicador de reversión para probar el efecto de reversión de diferentes indicadores
  • Se pueden aumentar las estrategias de stop loss para controlar las pérdidas individuales.
  • Se puede combinar con algoritmos de aprendizaje automático para entrenar modelos de inversión más precisos utilizando datos masivos.

Resumir

La estrategia combina un indicador de reversión y un indicador de juicio de tendencia, para entrar en juego cuando se produce una alerta de reversión de precios, al mismo tiempo que se juzga la tendencia general y se evita la operación contraria. Mediante la mutual verificación de los dos indicadores, se puede reducir eficazmente las falsas señales. Pero la estrategia también existe sin oportunidades de ganar y el riesgo de malinterpretar las señales de reversión cuando existe una situación unilateral de mercado. Se puede optimizar aún más a través de la optimización de parámetros, la estrategia de stop loss, la escalación del indicador y el aprendizaje automático.

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

//@version=4
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 02/02/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 Market Facilitation Index is an indicator that relates price range to 
// volume and measures the efficency of price movement. Use the indicator to 
// determine if the market is trending. If the Market Facilitation Index increased, 
// then the market is facilitating trade and is more efficient, implying that the 
// market is trending. If the Market Facilitation Index decreased, then the market 
// is becoming less efficient, which may indicate a trading range is developing that 
// may be a trend reversal.
//
// 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


MFI(BuyZone,SellZone) =>
    pos = 0.0
    xmyVol = volume
    xmyhigh = high
    xmylow = low
    nRes = (xmyhigh - xmylow) / xmyVol * 10000
    pos := iff(nRes > BuyZone, 1,
             iff(nRes < SellZone, -1, nz(pos[1], 0)))
    pos

strategy(title="Combo Backtest 123 Reversal & Market Facilitation 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, "---- MFI ----")
SellZone = input(6.2, minval=0.01, step = 0.01)
BuyZone = input(1, minval=0.01, step = 0.01)
reverse = input(false, title="Trade reverse")
posReversal123 = Reversal123(Length, KSmoothing, DLength, Level)
posMFI = MFI(BuyZone,SellZone)
pos = iff(posReversal123 == 1 and posMFI == 1 , 1,
	   iff(posReversal123 == -1 and posMFI == -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 )