Il s'agit d'une stratégie de trading à court terme basée sur la théorie du breakout.
La stratégie utilise le prix le plus élevé de 20 jours pour identifier les tendances haussières. Lorsque le prix de clôture dépasse le plus élevé de 20 jours, il va long. Il utilise le prix le plus bas de 10 jours pour identifier les tendances à la baisse. Lorsque le prix de clôture dépasse le plus bas de 10 jours, il va court. Il utilise également un prix le plus élevé de 10 jours comme signal de sortie stop loss pour les transactions courtes.
Plus précisément, la stratégie comprend les règles suivantes:
En comparant le prix de clôture avec les prix les plus élevés/les plus bas de différentes périodes, il capte les écarts de tendance dans les cycles à court terme et effectue des transactions à court terme.
La stratégie présente les avantages suivants:
Il y a aussi des risques:
Nous pouvons définir un stop loss pour limiter la perte par transaction, ou ajuster les plages de paramètres pour contrôler la fréquence des transactions.
La stratégie peut être optimisée par les aspects suivants:
En conclusion, il s'agit d'une stratégie de rupture à court terme simple et pratique. Elle aide à saisir les opportunités de tendance à court cycle. Mais il y a des risques d'être piégé et de fréquence de trading élevée. En ajoutant des filtres, un stop loss, une optimisation des paramètres, nous pouvons contrôler les risques et améliorer l'efficacité. La stratégie convient aux traders qui se concentrent sur les opportunités à court terme et poursuivent un taux de roulement élevé.
/*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)))