Estrategia de inversión del impulso


Fecha de creación: 2023-12-12 17:25:08 Última modificación: 2023-12-12 17:25:08
Copiar: 1 Número de Visitas: 639
1
Seguir
1621
Seguidores

Estrategia de inversión del impulso

Descripción general

La estrategia utiliza el indicador de movimiento del precio para determinar si la tendencia de movimiento del precio se ha invertido para capturar la oportunidad de una reversión. Cuando la tendencia de aumento del precio se desacelera o la tendencia de disminución se desacelera, lo que indica que el movimiento del precio se ha invertido, la estrategia abre una posición de ventaja o pérdida.

Principio de estrategia

La estrategia se basa principalmente en el cálculo de los indicadores de dinámica. El indicador de dinámica refleja la velocidad y la intensidad de los cambios en los precios. La estrategia calcula dos indicadores de dinámica: MOM y MOM1.

La fórmula para calcular el MOM:

MOM = precio de cierre del día - precio de cierre del día anterior a N

La fórmula para calcular el MOM1 es:

MOM1 = MOM hoy - MOM ayer

En función de los valores de MOM y MOM1 para determinar si el precio se revirtió. Si MOM > 0 y MOM1 < 0, indica que la tendencia al alza se ha ralentizado, aparece una señal de reversión, haga más; si MOM < 0 y MOM1 > 0, indica que la tendencia a la baja se ha ralentizado, aparece una señal de reversión, haga hueco.

Ventajas estratégicas

  1. Capturar el punto de inflexión de los precios y entrar en el mercado a tiempo
  2. El gobierno de la República Democrática del Congo ha anunciado el retiro de la fuerza aérea.
  3. Hacer que el stop loss automático reduzca el riesgo

Riesgo estratégico

  1. Las posiciones abiertas y cerradas pueden ser frecuentes cuando los precios fluctúan.
  2. Los parámetros no están configurados para determinar con precisión el punto de inflexión del precio
  3. Un incidente en el mercado produce señales erróneas

Los principales métodos de mitigación de riesgos:

  1. Optimización de parámetros para mejorar la precisión de los juicios
  2. Combinación con otros indicadores para filtrar señales
  3. Intervención humana para evitar pérdidas en casos de anomalías en el mercado

Dirección de optimización de la estrategia

  1. Optimización de los parámetros del indicador de la dinámica para mejorar la captura del tiempo de inversión
  2. Filtración de indicadores como el aumento de la transacción para evitar señales erróneas
  3. Acompañar a las estrategias de stop loss para reducir las pérdidas individuales

Resumir

Esta estrategia calcula el indicador de movimiento de precios para determinar si la tendencia de movimiento de precios se invierte. La retroalimentación muestra que la estrategia en general funciona sin problemas y capta eficazmente los puntos de reversión de precios.

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

//@version=4
strategy("Momentum - Strategy", overlay = false, precision = 2, initial_capital = 10000, default_qty_value = 100, default_qty_type = strategy.percent_of_equity, commission_type = strategy.commission.percent, commission_value = 0.2 )

i_len           =       input(defval = 12,      title = "Length",       minval = 1)
i_src           =       input(defval = close,   title = "Source")
i_percent       =       input(defval = true,    title = "Percent?")
i_mom           =       input(defval = "MOM2",  title = "MOM Choice",   options = ["MOM1", "MOM2"])

momentum(seria, length, percent) =>
	_mom        =       percent ? ( (seria / seria[length]) - 1) * 100 : seria - seria[length]
	_mom

mom0        =       momentum(i_src, i_len, i_percent)
mom1        =       momentum(mom0, 1, i_percent)
mom2        =       momentum(i_src, 1, i_percent)

momX        =       mom1

if i_mom == "MOM2"
    momX    :=     mom2

if (mom0 > 0 and momX > 0)
    strategy.entry("MomLE", strategy.long, stop = high + syminfo.mintick, comment = "MomLE")
else
	strategy.cancel("MomLE")
if (mom0 < 0 and momX < 0)
	strategy.entry("MomSE", strategy.short, stop = low - syminfo.mintick, comment = "MomSE")
else
	strategy.cancel("MomSE")

plot(mom0, color = #0000FF, title = "MOM")
plot(mom1, color = #00FF00, title = "MOM1", display = display.none)
plot(mom2, color = #00FF00, title = "MOM2")