Stratégie de rupture de la tortue

Auteur:ChaoZhang est là., Date: 2023-12-04 16h25 et 53 min
Les étiquettes:

img

Résumé

Il s'agit d'une stratégie de trading à court terme basée sur la théorie du breakout.

La logique de la stratégie

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:

  1. Entrer long lorsque le prix de clôture est supérieur au plus haut de 20 jours;
  2. Entrez en short lorsque le prix de clôture est inférieur au plus bas de 10 jours;
  3. Fermer une position courte lorsque le prix de clôture est supérieur au plus haut de 10 jours;
  4. Fermer une position longue lorsque le prix de clôture est inférieur au plus bas de 10 jours.

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.

Analyse des avantages

La stratégie présente les avantages suivants:

  1. logique simple et claire, facile à comprendre et à mettre en œuvre;
  2. Détecter les tendances à court terme en temps opportun sur la base de la théorie de la rupture;
  3. Identifier les opportunités à long terme et à court terme pour les échanges bilatéraux;
  4. Adaptation flexible de la période de détention en définissant différentes gammes de paramètres.

Analyse des risques

Il y a aussi des risques:

  1. Les opérations de rupture ont tendance à être piégées, un stop loss est nécessaire pour contrôler le risque;
  2. Le fait de basculer fréquemment entre long et court augmente le coût de négociation et le glissement;
  3. Des paramètres mal réglés peuvent entraîner une survente ou un retard.

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.

Optimisation

La stratégie peut être optimisée par les aspects suivants:

  1. Ajout d'autres filtres pour éviter les fausses éruptions;
  2. définir des méthodes de sortie dynamiques pour suivre le stop loss avec profit;
  3. Ajout de règles de détermination de tendance pour éviter les opérations contre-tendance;
  4. Optimisation des plages de paramètres pour les adapter à différents cycles et conditions du marché.

Conclusion

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)))




Plus de