La estrategia de tendencia de la cinta de promedio móvil es una estrategia de seguimiento de tendencias basada en promedios móviles. Utiliza un solo promedio móvil para construir un canal de precios y determina la dirección de la tendencia basada en el precio relativo al canal, luego coloca las operaciones en consecuencia.
La estrategia calcula un promedio móvil simple con una duración de período especificada (por defecto 20 períodos) y construye un canal de precios utilizando los valores de MA. Las bandas superior e inferior del canal son los valores más altos e inferiores del MA, respectivamente. Si el precio de cierre está por encima de la banda superior, se determina una tendencia alcista. Si el precio de cierre está por debajo de la banda inferior, se identifica una tendencia bajista.
Cuando se detecta un cambio de tendencia, la estrategia colocará operaciones. Si la tendencia cambia de abajo a arriba, se abrirá una posición larga. Si la tendencia cambia de arriba a abajo, se abrirá una posición corta. Las posiciones largas existentes se cerrarán si la tendencia baja, y las posiciones cortas existentes se cerrarán si la tendencia aumenta.
Específicamente, la lógica de negociación es:
La estrategia utiliza un único MA para construir el canal de precios e identificar los cambios de tendencia por rupturas de precios.
La estrategia de tendencia de la banda de media móvil tiene las siguientes ventajas:
En resumen, la estrategia se basa en una lógica simple, utiliza el canal de precios para identificar los cambios de tendencia y puede seguir efectivamente las tendencias de precios a más largo plazo.
La estrategia también tiene algunos riesgos:
Los riesgos pueden abordarse mediante:
La estrategia puede mejorarse en los siguientes aspectos:
Optimización del indicador de MA: Prueba diferentes MAs como WMA para mejorar el rendimiento.
Añadir filtros: Añadir filtros como volumen, volatilidad antes de la entrada para evitar los golpes.
Muchos plazos: Utilice las MAs en diferentes plazos para identificar más tendencias.
Parámetros dinámicos: Permitir el ajuste dinámico del período de la autorización y del ancho del canal en función de las condiciones del mercado.
Tamaño de la posiciónSe puede ajustar el tamaño de la posición en función de las condiciones del mercado para limitar las pérdidas.
Aprendizaje automático: Utilice ML para encontrar las combinaciones óptimas de parámetros.
Métodos de conjunto: Combinar con otras estrategias de seguimiento de tendencias para una mayor robustez.
En resumen, la estrategia puede mejorarse de manera integral en términos de selección de indicadores, filtros, plazos, parámetros dinámicos, dimensionamiento de posiciones, etc. Esto hará que la estrategia sea más robusta y flexible en diferentes entornos de mercado.
La Estrategia de tendencia de la cinta de promedio móvil es una estrategia simple de seguimiento de tendencias. Utiliza un solo MA para construir un canal de precios e identifica la dirección de tendencia por rupturas de canal, con el objetivo de capturar tendencias de mediano a largo plazo. La estrategia tiene ventajas como lógica simple, pocos parámetros y facilidad de implementación. Pero también tiene riesgos como retrasarse en la identificación de tendencias y ser golpeado. Se pueden hacer mejoras adicionales optimizando el MA, agregando filtros, parámetros dinámicos, etc. para mejorar el rendimiento en vivo.
/*backtest start: 2022-10-26 00:00:00 end: 2023-11-01 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 //@version=4 strategy(title = "Noro's Trend Ribbon Strategy", shorttitle = "Trend Ribbon str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0, commission_value = 0.1) len = input(20, minval = 5, title = "MA Length") src = input(ohlc4, title = "MA Source") //MA ma = sma(src, len) plot(ma, color = color.black) //Channel h = highest(ma, len) l = lowest(ma, len) ph = plot(h) pl = plot(l) //Trend trend = 0 trend := close > h[1] ? 1 : close < l[1] ? -1 : trend[1] //BG col = trend == 1 ? color.blue : color.red fill(ph, pl, color = col, transp = 50) //Trading if close > h[1] strategy.entry("Long", strategy.long) if close < l[1] strategy.entry("Short", strategy.short)