
Esta estrategia se llama estrategia de combinación de supertrends y medias móviles. Combina el uso de indicadores de supertrends y medias móviles, haciendo más cuando la supertrend indica una tendencia al alza y la EMA del día 10 está por encima de la SMA del día 20, y haciendo vacío cuando la supertrend indica una tendencia a la baja y la EMA del día 10 está por debajo de la SMA del día 20, es una estrategia de seguimiento de tendencia típica.
Esta estrategia utiliza un indicador de tendencia súper para determinar la dirección de la tendencia del mercado. El indicador de tendencia súper se calcula en base al promedio de rango verdadero y al factor, que se utiliza para la tendencia alcista cuando el precio está por encima de la línea de tendencia súper y la tendencia bajista cuando el precio está por debajo de la línea de tendencia súper.
Además, la estrategia utiliza la EMA de 10 días y la SMA de 20 días para construir un promedio móvil. La EMA (la media móvil indexada) otorga un mayor peso al precio más reciente y la SMA (la media móvil simple) considera todos los datos con el mismo peso. Cuando la EMA a corto plazo es mayor que la SMA a largo plazo, se considera una señal de compra.
En resumen, la lógica de Trading Signal Generation de esta estrategia es la siguiente:
Entradas múltiples: Supertrend > 0 (trend ascendente) y EMA de 10 días > SMA de 20 días
Entrada en blanco: Supertrend (trend bajista) y EMA de 10 días <20 SMA
Es decir, mientras que la tendencia de super determina la dirección de la tendencia, el uso de la media móvil de la horquilla dorada como un juicio auxiliar, la construcción de la estrategia de seguimiento de la tendencia.
La mayor ventaja de esta estrategia reside en la combinación de dos indicadores, supertrend y media móvil, que mejoran la fiabilidad y la sensibilidad. En concreto, las principales ventajas son las siguientes:
La estrategia también tiene sus riesgos, que se manifiestan principalmente en los siguientes aspectos:
Para las supertrends, se pueden probar diferentes longitudes de ATR y parámetros de factor para optimizar; para las medias móviles, se pueden probar las longitudes de EMA y SMA; los períodos de revalorización deben tener en cuenta las diferentes condiciones del mercado. Además, es necesario incluir costos de transacción adecuados en el proceso de liquidación.
La estrategia tiene un amplio margen de mejora y se puede optimizar principalmente en los siguientes aspectos:
A través de la modificación de parámetros y la adición de filtros de indicadores auxiliares, se puede mejorar aún más el rendimiento y la estabilidad de la estrategia. Además, la configuración de la estrategia de stop loss también es importante para controlar el riesgo de manera efectiva.
Esta estrategia se llama la estrategia de la cola de la super tendencia combinada con el promedio móvil, que se combina con el uso de la super tendencia para determinar la dirección de la tendencia, y la construcción de señales de negociación de EMA y SMA, es una estrategia típica de seguimiento de tendencias. La estrategia tiene una alta fiabilidad, un gran espacio de optimización y vale la pena optimizar en la prueba de laboratorio.
/*backtest
start: 2024-01-19 00:00:00
end: 2024-02-18 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Supertrend and Moving Averages Strategy", overlay=true)
// Supertrend parameters
atrLength = input.int(10, title="ATR Length", minval=1)
factor = input.float(3.0, title="Factor", minval=0.01, step=0.01)
[supertrend, direction] = ta.supertrend(factor, atrLength)
// Moving Averages parameters
length_ema = input(10, title="Length of EMA")
length_sma = input(20, title="Length of SMA")
// Calculate EMAs and SMAs
ema_10 = ta.ema(close, length_ema)
sma_20 = ta.sma(close, length_sma)
// Strategy logic
longCondition = ema_10 > sma_20 and direction > 0
shortCondition = ema_10 < sma_20 and direction < 0
strategy.entry("Long", strategy.long, when=longCondition)
strategy.entry("Short", strategy.short, when=shortCondition)
// Plot Supertrend
plot(direction > 0 ? supertrend : na, color=color.green, style=plot.style_line, linewidth=2, title="Up Trend")
plot(direction < 0 ? supertrend : na, color=color.red, style=plot.style_line, linewidth=2, title="Down Trend")
// Plot Moving Averages
plot(ema_10, color=color.blue, title="10 EMA")
plot(sma_20, color=color.red, title="20 SMA")
// Alerts for Supertrend
alertcondition(direction[1] > direction, title='Downtrend to Uptrend', message='The Supertrend value switched from Downtrend to Uptrend ')
alertcondition(direction[1] < direction, title='Uptrend to Downtrend', message='The Supertrend value switched from Uptrend to Downtrend')
alertcondition(direction[1] != direction, title='Trend Change', message='The Supertrend value switched from Uptrend to Downtrend or vice versa')