Estrategia de seguimiento de tendencia de doble media móvil


Fecha de creación: 2023-12-19 14:49:52 Última modificación: 2023-12-19 14:49:52
Copiar: 0 Número de Visitas: 580
1
Seguir
1621
Seguidores

Estrategia de seguimiento de tendencia de doble media móvil

Descripción general

La estrategia de seguimiento de tendencias de media móvil dual es una estrategia de negociación cuantitativa para determinar la dirección de la tendencia del mercado en función de las medias móviles de dos períodos diferentes. La estrategia utiliza un promedio móvil rápido y un promedio móvil lento para determinar la dirección de la tendencia y negociar en la dirección de la tendencia.

Principio de estrategia

La estrategia utiliza dos medias móviles, una media móvil rápida (por ejemplo, 10 periodos) y una media móvil lenta (por ejemplo, 30 periodos). Si ambas medias móviles suben, se considera una tendencia múltiple; si ambas medias móviles bajan, se considera una tendencia horizontal.

Concretamente, la estrategia primero calcula las medias móviles rápidas y las medias móviles lentas. Luego compara la relación de tamaño de las medias móviles rápidas actuales con las del ciclo anterior, y si la media actual es mayor que la del ciclo anterior, se asigna un valor de 1, que significa hacia arriba; de lo contrario, se asigna un valor de -1, que significa hacia abajo.

Finalmente, juzgue rápidamente los valores de los dos promedios móviles. Si ambos valores de juicio son 1, el juicio final es 1, lo que significa una tendencia de varios tipos; si ambos valores de juicio son -1, el juicio final es -1, lo que significa una tendencia de la cabeza vacía. Si los valores de juicio no son consistentes, mantenga el juicio de la tendencia del ciclo anterior.

Después de determinar la dirección de la tendencia, la estrategia abre más posiciones en una tendencia de más cabeza y abre menos posiciones en una tendencia de menos cabeza.

Análisis de las ventajas

La estrategia tiene las siguientes ventajas:

  1. La estrategia es clara y simple, fácil de entender y de implementar.
  2. El uso de la combinación de dos medias móviles puede filtrar eficazmente el ruido de los mercados convulsivos y bloquear la dirección de la tendencia.
  3. Los parámetros de la media móvil se pueden ajustar con flexibilidad para adaptarse a diferentes variedades y períodos de tiempo.
  4. No es necesario configurar los puntos de parada y de pérdida, lo que reduce la frecuencia de las operaciones y ayuda a seguir la tendencia.
  5. La configuración es flexible para hacer solo más o solo menos, para adaptarse a diferentes preferencias comerciales.

Análisis de riesgos

La estrategia también tiene ciertos riesgos:

  1. Cuando los precios cambian drásticamente, las medias móviles se retrasan, lo que puede llevar a perder el mejor momento para abrir una posición.
  2. Las medias móviles dobles pueden tener falsas rupturas y errores de cruce, lo que produce señales de negociación erróneas.
  3. La estrategia en sí misma no establece un stop loss y no puede controlar eficazmente las pérdidas individuales.
  4. La estrategia de negociación de posición completa por defecto es más arriesgada y requiere precaución.

Para reducir los riesgos mencionados anteriormente, se puede configurar un parámetro de ciclo de media móvil más razonable, introducir otros indicadores técnicos como juicio auxiliar, configurar una regla de parada de pérdidas o ajustar adecuadamente la posición.

Dirección de optimización

La estrategia también puede ser optimizada en los siguientes aspectos:

  1. Aumentar la variedad de tipos de promedios móviles, como SMA, EMA, etc., utilizando indicadores gráficos.
  2. Añadir otros indicadores de técnicas auxiliares, como MACD, BOLL, etc., para mejorar la precisión del juicio.
  3. La inclusión de líneas de tendencia y soporte de resistencia hace que las señales de negociación sean más precisas.
  4. Establezca condiciones de parada de pérdidas para controlar eficazmente las pérdidas individuales.
  5. Optimizar la gestión de posiciones, ajustando las posiciones en función de la tasa de utilización de fondos, la tasa de ganancias, etc.

Resumir

La estrategia de seguimiento de tendencias de dos promedios móviles es clara y fácil de entender, se filtra la oscilación a través de dos promedios móviles, se determina la dirección de la tendencia y se negocia de acuerdo con los resultados de la evaluación. Es una estrategia típica de seguimiento de tendencias.

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

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © noro
// 2020

//@version=4
strategy(title = "Noro's TrendMA Strategy", shorttitle = "TrendMA str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1)

//Settings
needlong = input(true, title = "Long")
needshort = input(true, title = "Short")
fast = input(10, minval = 1, title = "MA Fast (red)")
slow = input(30, minval = 2, title = "MA Slow (blue)")
type = input(defval = "SMA", options = ["SMA", "EMA"], title = "MA Type")
src = input(ohlc4, title = "MA Source")
showma = input(true, title = "Show MAs")
showbg = input(false, title = "Show Background")

//MAs
fastma = type == "EMA" ? ema(src, fast) : sma(src, fast)
slowma = type == "EMA" ? ema(src, slow) : sma(src, slow)

//Lines
colorfast = showma ? color.red : na
colorslow = showma ? color.blue : na
plot(fastma, color = colorfast, title = "MA Fast")
plot(slowma, color = colorslow, title = "MA Slow")

//Trend
trend1 = fastma > fastma[1] ? 1 : -1
trend2 = slowma > slowma[1] ? 1 : -1
trend = 0
trend := trend1 == 1 and trend2 == 1 ? 1 : trend1 == -1 and trend2 == -1 ? -1 : trend[1]

//Backgrouns
colbg = showbg == false ? na : trend == 1 ? color.lime : trend == -1 ? color.red : na
bgcolor(colbg, transp = 80)

//Trading
if trend == 1
    if needlong
        strategy.entry("Long", strategy.long)
    if needlong == false
        strategy.close_all()

if trend == -1
    if needshort
        strategy.entry("Short", strategy.short)
    if needshort == false
        strategy.close_all()