
La estrategia de seguimiento inteligente de doble línea utiliza un indicador de doble línea para seguir las tendencias de precios a corto y mediano plazo, y al seguir las variaciones de color y ancho de línea forma una ayuda visual para ayudar a los comerciantes a intuir el movimiento del mercado y establecer posiciones en blanco. La estrategia utiliza parámetros personalizados que permiten una alta flexibilidad y son adecuados para los fondos de inversión privada y fondos de cobertura con una cierta base tecnológica para la negociación programada.
El núcleo de la estrategia de seguimiento inteligente de dos líneas está en la generación de señales de negociación mediante el uso de medias móviles rápidas y medias móviles lentas. En concreto, las medias móviles rápidas siguen los cambios de precios a corto plazo, mientras que las medias móviles lentas reflejan las tendencias a medio y largo plazo. Al mismo tiempo, la estrategia hace que las medias móviles de referencia presenten diferentes colores a través de tres esquemas de color: (cruzadas, orientadas y combinadas) para ayudar a determinar el movimiento del mercado.
La mayor ventaja de la estrategia de seguimiento inteligente de doble línea es que combina indicadores de doble línea y ayuda visual de color para juzgar el movimiento del mercado, la operación es simple y clara. En segundo lugar, los parámetros de la estrategia se pueden personalizar y los usuarios pueden ajustar según sus preferencias comerciales y el entorno del mercado, lo que permite una detección eficiente y una negociación en vivo. Una vez más, diferentes esquemas de color pueden satisfacer los hábitos visuales y operativos de diferentes usuarios.
Si bien las ventajas de la estrategia de seguimiento inteligente de la línea de paridad son evidentes, también existen algunos riesgos potenciales. La línea de paridad es altamente sensible a los cambios en los precios y es propensa a generar señales falsas que conducen a la sobrecomercialización. Además, los parámetros personalizados, aunque son flexibles, también aumentan la dificultad de ajuste.
La estrategia de seguimiento inteligente de doble línea tiene varias direcciones que se pueden optimizar: primero, se pueden introducir señales engañosas de filtración de indicadores adicionales, como el indicador KDJ para juzgar la sobrecompra y la sobreventa, y el MACD para juzgar el retiro de ganancias. Segundo, se pueden crear modelos de optimización de parámetros para ayudar a los usuarios a elegir la combinación de parámetros óptima. Tercero, se pueden usar modelos de aprendizaje automático para predecir los cambios en los precios y ayudar a determinar la dirección de la tendencia de doble línea.
En general, la estrategia de seguimiento inteligente de doble línea es una estrategia de negociación programada de alta frecuencia, clara y flexible. Combina hábilmente los indicadores de doble línea y el juicio visual de color del mercado, lo que permite aprovechar las fluctuaciones de precios a corto plazo.
/*backtest
start: 2022-12-13 00:00:00
end: 2023-12-19 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// © Julien_Eche
//@version=5
strategy("Smart MA Strategy", shorttitle="Smart MA Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=20)
// Input parameters
base_ma_length = input.int(50, title="Base MA Length")
ma_type = input.string("SMA", title="MA Type", options=["SMA", "WMA", "EMA"])
color_choice = input.string("Composite", title="Color Option", options=["Crossover", "Direction", "Composite"])
fast_length = input.int(10, title="Fast MA Length", group="For Crossover Color Option")
slow_length = input.int(30, title="Slow MA Length", group="For Crossover Color Option")
// Start and end date inputs
start_year = input.int(1975, title="Start Year", group="Date Range")
start_month = input.int(1, title="Start Month", group="Date Range")
start_day = input.int(1, title="Start Day", group="Date Range")
end_year = input.int(2099, title="End Year", group="Date Range")
end_month = input.int(12, title="End Month", group="Date Range")
end_day = input.int(31, title="End Day", group="Date Range")
// Calculate the selected MAs
fast_ma = ta.sma(close, fast_length)
slow_ma = ta.sma(close, slow_length)
// Calculate the base MA with the specified length
base_ma = ta.sma(close, base_ma_length)
// Determine if the base MA is increasing or decreasing
base_ma_increasing = base_ma > base_ma[1]
// Define the color for the base MA based on the selected option
base_ma_color = color_choice == "Direction" ? (base_ma_increasing ? color.teal : color.red) : color_choice == "Crossover" ? (fast_ma > slow_ma ? color.teal : color.red) : color_choice == "Composite" ? (base_ma_increasing and fast_ma > slow_ma ? color.teal : not base_ma_increasing and fast_ma < slow_ma ? color.red : color.gray) : color.gray
// Plot the base MA with the specified color and linewidth
plot(base_ma, title="Base MA", color=base_ma_color, style=plot.style_line, linewidth=2)
// Define the start and end timestamps
start_date = timestamp(start_year, start_month, start_day, 0, 0)
end_date = timestamp(end_year, end_month, end_day, 23, 59)
// Filter strategy signals based on date
in_date_range = time >= start_date and time <= end_date
// Strategy conditions for each option
if (color_choice == "Composite" and in_date_range)
if (base_ma_increasing and fast_ma > slow_ma)
strategy.entry("Buy", strategy.long)
if (not base_ma_increasing and fast_ma < slow_ma)
strategy.close("Buy")
if (color_choice == "Crossover" and in_date_range)
if (fast_ma > slow_ma)
strategy.entry("Buy", strategy.long)
if (fast_ma < slow_ma)
strategy.close("Buy")
if (color_choice == "Direction" and in_date_range)
if (base_ma_increasing)
strategy.entry("Buy", strategy.long)
if (not base_ma_increasing)
strategy.close("Buy")