
La estrategia utiliza el cruce de las medias móviles rápidas y las medias móviles lentas como una señal de compra y venta. Se genera una señal de compra cuando la media móvil rápida se rompe con la media móvil lenta desde abajo; se genera una señal de venta cuando la media móvil rápida se rompe con la media móvil lenta desde arriba.
La estrategia de negociación de doble línea utiliza la comparación de promedios móviles de dos diferentes configuraciones de parámetros para generar señales de negociación. Uno es el promedio móvil rápido, con una configuración de parámetros más pequeña, que capta más rápidamente los cambios en los precios. El otro es el promedio móvil lento, con una configuración de parámetros más grande, como indicador de juicio de tendencias a largo plazo.
Concretamente, la estrategia calcula dos promedios móviles mediante la introducción de dos parámetros de promedios móviles, el promedio móvil rápido y el promedio móvil lento, respectivamente. Luego, se dibujan dos promedios móviles en el gráfico de precios, el promedio rápido en azul y el promedio lento en rojo.
La estrategia de doble línea tiene las siguientes ventajas:
La estrategia de doble línea también tiene los siguientes riesgos:
Los riesgos mencionados pueden ser optimizados de la siguiente manera:
La estrategia de doble línea puede optimizarse aún más de la siguiente manera:
La estrategia de negociación de doble línea es muy práctica en general. Combina las dos dimensiones de seguimiento de tendencias y reversión de precios a corto plazo, lo que permite que la estrategia no pierda la oportunidad de reversión mientras sigue una gran tendencia. Mediante la optimización de modelos y parámetros, se puede obtener una señal de negociación más confiable y lograr un mejor rendimiento de la estrategia, mientras se mantiene su ventaja visual simple.
/*backtest
start: 2023-12-31 00:00:00
end: 2024-01-07 00:00:00
period: 5m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Moving Average Crossover Strategy", overlay=true)
// Input parameters
fastLength = input(10, title="Fast MA Length")
slowLength = input(21, title="Slow MA Length")
stopLossPercent = input(1, title="Stop Loss Percentage")
// Calculate moving averages
fastMA = ta.sma(close, fastLength)
slowMA = ta.sma(close, slowLength)
// Plot the moving averages on the chart
plot(fastMA, color=color.blue, title="Fast MA")
plot(slowMA, color=color.red, title="Slow MA")
// Define trading signals
longCondition = ta.crossover(fastMA, slowMA)
shortCondition = ta.crossunder(fastMA, slowMA)
// Execute trades
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Implement stop loss
strategy.exit("Stop Loss/Profit", from_entry="Long", loss=close * stopLossPercent / 100, profit=close * 2)
// Plot buy and sell signals on the chart
plotshape(series=longCondition, title="Buy Signal", color=color.green, style=shape.labelup, location=location.belowbar)
plotshape(series=shortCondition, title="Sell Signal", color=color.red, style=shape.labeldown, location=location.abovebar)