La estrategia de seguimiento de tendencia de la media móvil doble calcula las medias móviles exponenciales dobles del precio para formar líneas rápidas y lentas.
La estrategia primero calcula los promedios móviles exponenciales dobles del precio, incluidas las líneas rápidas y lentas. La línea rápida tiene un período de 4, y la línea lenta tiene un período de 8. Las señales de negociación se generan cuando las dos líneas se cruzan. Cuando la línea rápida cruza por encima de la línea lenta, se genera una señal de compra. Cuando la línea rápida cruza por debajo de la línea lenta, se activa una señal de venta. Además, la estrategia también calcula el indicador MACD para proporcionar señales comerciales adicionales. Las barras rojas MACD divergentes son señales de venta, mientras que las barras verdes convergentes son señales de compra.
En primer lugar, esta estrategia opera a lo largo de la tendencia de precios para evitar los costos de transacción. En segundo lugar, las medias móviles duales filtran algunos ruidos de precios y capturan la tendencia de precios sin problemas. Además, la optimización flexible de parámetros de las medias móviles y el MACD hace que la estrategia sea adaptable a diferentes productos y entornos. Por último, la lógica simple y clara hace que esta estrategia sea fácil de entender e implementar, adecuada para el diseño de algoritmos de negociación cuantitativos.
La estrategia se basa en gran medida en la optimización de parámetros. La configuración inadecuada de parámetros puede generar muchas señales falsas. Además, la naturaleza rezagada de las medias móviles duales puede causar puntos de inflexión perdidos. Las estrategias que siguen tendencias también son propensas a perseguir tendencias alcistas y matar tendencias bajistas, lo que plantea ciertos riesgos. Además, la liquidez de los productos comerciales y los costos de transacción también afectarán a la rentabilidad de la estrategia. Para mitigar los riesgos, los parámetros se pueden optimizar, se pueden agregar filtros adicionales y se puede controlar el tamaño de la posición.
Los siguientes aspectos de la estrategia pueden mejorarse:
Optimizar los períodos de las medias móviles duales para encontrar la combinación óptima.
Agregue otros indicadores como RSI y KD para filtrar las señales y mejorar la calidad.
Incorporar estrategias de stop loss para salir de las operaciones en las inversiones de tendencia.
Ajustar dinámicamente el tamaño de las posiciones en función de las condiciones del mercado para controlar el riesgo.
Optimizar los parámetros para diferentes productos comerciales.
Incorporar estrategias avanzadas como el aprendizaje automático para mejorar el rendimiento.
En resumen, se trata de una simple estrategia de doble media móvil de tendencia. La lógica de la estrategia es sencilla y fácil de implementar. El ajuste flexible de parámetros lo hace adecuado como una estrategia de negociación cuantitativa introductoria. Sin embargo, los riesgos de perseguir tendencias y retraso de la señal deben abordarse mediante mejoras adicionales para mejorar la estabilidad y el control de riesgos. En general, esta estrategia proporciona una gran oportunidad de aprendizaje para los principiantes y establece una base para estrategias avanzadas.
/*backtest start: 2023-10-14 00:00:00 end: 2023-11-13 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 //////////////////////////////////////////////////////////// // Copyright by HPotter v1.0 12/11/2017 // The SMI Ergodic Indicator is the same as the True Strength Index (TSI) developed by // William Blau, except the SMI includes a signal line. The SMI uses double moving averages // of price minus previous price over 2 time frames. The signal line, which is an EMA of the // SMI, is plotted to help trigger trading signals. Adjustable guides are also given to fine // tune these signals. The user may change the input (close), method (EMA), period lengths // and guide values. // You can use in the xPrice any series: Open, High, Low, Close, HL2, HLC3, OHLC4 and ect... // // WARNING: // - For purpose educate only //////////////////////////////////////////////////////////// strategy(title="SMI Ergodic Oscillator") fastPeriod = input(4, minval=1) slowPeriod = input(8, minval=1) SmthLen = input(3, minval=1) TopBand = input(0.5, step=0.1) LowBand = input(-0.5, step=0.1) reverse = input(false, title="Trade reverse") // hline(0, color=gray, linestyle=dashed) // hline(TopBand, color=red, linestyle=line) // hline(LowBand, color=green, linestyle=line) xPrice = close xPrice1 = xPrice - xPrice[1] xPrice2 = abs(xPrice - xPrice[1]) xSMA_R = ema(ema(xPrice1,fastPeriod),slowPeriod) xSMA_aR = ema(ema(xPrice2, fastPeriod),slowPeriod) xSMI = xSMA_R / xSMA_aR xEMA_SMI = ema(xSMI, SmthLen) pos = iff(xEMA_SMI < xSMI, -1, iff(xEMA_SMI > xSMI, 1, nz(pos[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) barcolor(possig == -1 ? red: possig == 1 ? green : blue ) plot(xSMI, color=green, title="Ergotic SMI") plot(xEMA_SMI, color=red, title="SigLin")