Se trata de una estrategia de trading a corto plazo basada en la teoría del breakout, que utiliza indicadores de promedio móvil e indicadores de precio más alto/más bajo para identificar señales de breakout y obtener ganancias de las tendencias a corto plazo.
La estrategia utiliza el precio más alto de 20 días para identificar tendencias alcistas. Cuando el precio de cierre se rompe por encima del máximo de 20 días, va largo. Utiliza el precio más bajo de 10 días para identificar tendencias bajistas. Cuando el precio de cierre se rompe por debajo del mínimo de 10 días, va corto. También utiliza un precio más alto de 10 días como una señal de salida de stop loss para operaciones cortas.
En concreto, la estrategia incluye las siguientes normas:
Al comparar el precio de cierre con los precios más altos / más bajos de diferentes períodos, detecta las rupturas de tendencia dentro de los ciclos a corto plazo y realiza operaciones a corto plazo.
La estrategia tiene las siguientes ventajas:
También hay algunos riesgos:
Podemos configurar el stop loss para limitar la pérdida por operación, o ajustar los rangos de parámetros para controlar la frecuencia de operaciones.
La estrategia se puede optimizar a partir de los siguientes aspectos:
En conclusión, esta es una estrategia de ruptura simple y práctica a corto plazo. Ayuda a capturar oportunidades de tendencia de ciclo corto. Pero hay riesgos de quedar atrapados y alta frecuencia de negociación. Al agregar filtros, stop loss, optimización de parámetros, podemos controlar los riesgos y mejorar la eficiencia. La estrategia es adecuada para los operadores que se centran en oportunidades a corto plazo y persiguen una alta tasa de rotación.
/*backtest start: 2022-11-27 00:00:00 end: 2023-12-03 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("TurtleBC Strategy v2 V.Troussel", shorttitle="TurtleBC-V.Troussel", overlay=true, pyramiding=0) // === BACKTEST RANGE === FromMonth = input(defval = 1, title = "From Month", minval = 1) FromDay = input(defval = 1, title = "From Day", minval = 1) FromYear = input(defval = 2016, title = "From Year", minval = 2016) ToMonth = input(defval = 1, title = "To Month", minval = 1) ToDay = input(defval = 1, title = "To Day", minval = 1) ToYear = input(defval = 9999, title = "To Year", minval = 9999) enter_fast = input(20, minval=1) exit_fast = input(10, minval=1) exit_fast_short=input(10,minval=1) fastL = highest(close, enter_fast) fastS = highest(close ,exit_fast_short) fastLC = lowest(close, exit_fast) //Sortie pour le short exitS=close>fastS[1] enterL1 = close > fastL[1] exitL1 = close <= fastLC[1] strategy.entry("Long", strategy.long, when = enterL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))) strategy.close("Long", when = exitL1 and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))) //le trigger de sortie est strategy.entry("Short", strategy.short, when = exitL1 and (time > timestamp(FromYear, FromMonth, FromDay, 00, 00)) and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59))) strategy.close("Short", when = exitS and (time < timestamp(ToYear, ToMonth, ToDay, 23, 59)))