Estrategia de prueba de retroceso de SuperTrend Multi Timeframe

El autor:¿ Qué pasa?, Fecha: 2023-12-05 10:59:54
Las etiquetas:

img

Resumen general

La idea principal de esta estrategia es generar señales de negociación utilizando el indicador Supertrend en múltiples marcos de tiempo, y combinarlo con un filtro intradiario para cuadrar las posiciones abiertas durante el día, con el fin de implementar el comercio en varios marcos de tiempo y mejorar la calidad de la señal.

Estrategia lógica

La estrategia primero llama a la función de supertrend, pasando los parámetros mult y len, para generar la línea de supertrend supertrend y dirección dir. Luego traza el gráfico de la línea de supertrend. El parámetro de entrada intraday controla si se cuadran las posiciones abiertas intradía. Si intradía es verdad, las posiciones abiertas intradía se cuadrarán después de las 2:45 pm.

Las reglas de generación de señales son: cuando el precio de cierre está por encima de la línea de Supertrend, se genera una señal de compra; cuando el precio de cierre está por debajo de la línea de Supertrend, se genera una señal de venta. Cuando se recibe una señal de compra, se ejecutará una orden de compra para abrir una posición larga; cuando se recibe una señal de venta, se ejecutará una orden de venta para abrir una posición corta.

Análisis de ventajas

La mayor ventaja de esta estrategia es que utiliza el indicador Supertrend simple pero práctico para implementar la generación de señales comerciales de múltiples marcos de tiempo.

Además, la estrategia es muy concisa, implementa la lógica central con muy poco código, que es fácil de entender, modificar y ampliar.

Análisis de riesgos

El principal riesgo de esta estrategia es que el indicador Supertrend tenga cierto retraso, lo que puede conducir a pérdidas adicionales.

Para mitigar estos riesgos, se recomienda optimizar los parámetros de Supertrend mult y len para encontrar la combinación óptima de parámetros. Otros indicadores también se pueden probar para complementar a Supertrend y utilizar más factores para mejorar la estabilidad de la estrategia. Además, se puede eliminar el tiempo de cuadrados fijos intradiarios y se puede usar un mecanismo dinámico para determinar el tiempo de cuadrados basado en condiciones de volatilidad.

Direcciones de optimización

Las principales direcciones de optimización para esta estrategia incluyen:

  1. Prueba varios conjuntos de parámetros de Supertrend para encontrar la combinación óptima de parámetros.

  2. Agregue otros indicadores técnicos como patrones de velas, promedio móvil, etc. para filtrar las señales con más factores.

  3. Optimizar y ajustar dinámicamente el calendario específico de cuadrados intradiarios para reducir los cuadrados prematuros.

  4. Se añaden mecanismos de stop loss como el stop loss de porcentaje fijo o el ATR.

  5. Prueba de estrategias adecuadas de tasa de utilización del capital y de dimensionamiento de las posiciones.

  6. Las pruebas de retroceso se realizarán durante un período de tiempo más largo para verificar la robustez de los parámetros.

Conclusión

En resumen, esta estrategia de backtest multi-temporario de Supertrend es muy práctica. Implementa el comercio multi-temporal con el simple indicador de Supertrend y controla las pérdidas con el filtro intradiario. Hay un amplio margen de optimización y los usuarios pueden ajustar parámetros o combinar con otros indicadores técnicos de acuerdo con sus necesidades. El rendimiento del backtest también es relativamente estable y confiable. En general, esta estrategia es adecuada para el comercio de tendencias a mediano y largo plazo, y también es buena para que los principiantes aprendan y practiquen modificaciones.


/*backtest
start: 2023-11-27 00:00:00
end: 2023-12-04 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4

//@Gurjant_Singh IISMA-Indian Institute of stock Market Analysis 

strategy("SupterTrend ", overlay=true, initial_capital=100000, default_qty_type=strategy.percent_of_equity, default_qty_value=300, calc_on_order_fills=false, calc_on_every_tick=false)




mult = input(type=input.float, defval=3)
len = input(type=input.integer, defval=5)
[superTrend, dir] = supertrend(mult, len)



plot(superTrend)

intrady = input(false, "Do you want to exit intrday position", type = input.bool)

IntraDay_SquareOff = minute >= 45 and hour >= 14



buy = close > superTrend

sell = close < superTrend

if buy
    strategy.entry("Buy", true)
    
if sell
    strategy.entry("sell", false)

if intrady and IntraDay_SquareOff
    strategy.close("buy")
    strategy.close("sell")






Más.