La stratégie de la tempête de rebond est spécialisée dans la capture des opportunités de rebond après les ruptures de prix pour saisir les mouvements explosifs cachés dans les renversements à court terme. Elle combine les déterminations de tendance et les signaux de renversement pour aller longtemps après les ruptures à la hausse lorsque les prix reviennent aux niveaux de support précédents, et court après les ruptures à la baisse lorsque les prix rebondissent vers les niveaux de résistance précédents.
La stratégie est basée sur deux déclencheurs principaux: les ruptures récentes de haute/basse sur la période à long terme et les tendances de recul sur la période à court terme. Plus précisément, elle exige d'abord que les prix dépassent le sommet de 80 périodes pour déterminer une tendance à la hausse à partir de la période plus longue. Deuxièmement, elle exige que les prix dépassent le sommet de la journée précédente pour confirmer une rupture à court terme. Le signal long est alors déclenché lorsque les prix se ferment en dessous du sommet de la journée précédente après la rupture.
Le signal court fonctionne de manière symétrique, nécessitant une rupture récente basse plus un rebond vers le sommet de la journée précédente.
Cette stratégie combine les concepts de négociation bidirectionnelle et de rupture avec des avantages significatifs:
En particulier, le filtre à 80 périodes évite la plupart des fausses ruptures sur le bruit à court terme.
L'entrée de pullback, qui fournit un certain tampon stop-loss, capture ensuite la majeure partie de la partie centrale de la tendance.
Enfin, le mécanisme de sortie chronométrée équilibre également les facteurs de rentabilité et de contrôle des risques en prédéfinissant les scénarios de résultats, en minimisant les interférences émotionnelles.
Toutefois, cette stratégie présente certains risques:
Le premier risque provient du réglage de l'entrée de recul. Lorsque des ondes de tendance haussière et de tendance baissière apparaissent simultanément sur le marché, les signaux d'entrée des deux côtés peuvent se regrouper, empêchant les entrées des deux côtés.
Cela peut être évité en ajustant les filtres de sortie et en définissant des plages de sortie minimales pour espacer les signaux.
Le deuxième risque est lié à la fréquence des retours en arrière: les interruptions longues/courtes excessives augmentent les coûts et les pertes réelles.
Cela peut être réduit en ajustant la période de rétention et les paramètres de stop loss pour minimiser les sorties inutiles.
Enfin, la dynamique d'inversion qui en résulte peut parfois manquer d'ampleur suffisante dans les fourchettes de consolidation.
Sur la base de l'analyse, d'autres optimisations comprennent:
Les arrêts de profit en mouvement ou les arrêts de rentabilité peuvent d'abord bloquer les bénéfices et éviter les retracements.
Les indicateurs de volatilité tels que ATR et RVI peuvent également mesurer les régimes d'oscillation pour éviter les périodes de faible opportunité.
Enfin, les tendances cycliques autour des changements saisonniers fournissent également des espaces de tendance plus larges pour minimiser les effets secondaires.
Dans l'ensemble, la stratégie de la tempête de rupture vise à capturer les opportunités d'inversion de tendance à court terme après les ruptures de tendance. En combinant des filtres de tendance à long terme, des signaux d'inversion à court terme, des validations de rupture et des entrées de retrait, elle fournit un cadre robuste pour négocier des retraits dans des mouvements de tendance plus importants. Lorsqu'elle est optimisée avec une prise de profit appropriée, des métriques de volatilité et des filtres saisonniers, un tel cadre peut générer des profits stables dans diverses conditions de marché.
/*backtest start: 2024-01-01 00:00:00 end: 2024-01-31 00:00:00 period: 2h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Smash Day Pattern (Type B)", overlay=true, default_qty_type = strategy.fixed, default_qty_value = 1, initial_capital = 10000) in1 = input(40, "Max Days to Hold") - 1 isLong = strategy.position_size > 0 isShort = strategy.position_size < 0 longTrigger = close[1]<low[2] shortTrigger = close[1]>high[2] longFilter = close[1] > close[80] shortFilter = close[1] < close[80] longEntry = (not isLong) and longTrigger and longFilter shortEntry = (not isShort) and shortTrigger and shortFilter longStop = valuewhen(longEntry, low[1], 0) longPrice = valuewhen(longEntry, high[1], 0) shortStop = valuewhen(shortEntry, high[1],0) shortPrice = valuewhen(shortEntry, low[1], 0) strategy.entry(id = "Long", long = true, stop = longPrice+.001, when = longEntry) strategy.exit(id = "Stop Long", from_entry = "Long", stop = longStop, when = isLong) strategy.close("Long", barssince(longEntry==true)>=in1) strategy.entry(id = "Short", long = false, stop = shortPrice-.001, when = shortEntry) strategy.exit(id = "Stop Short", from_entry = "Short", stop = shortStop, when = isShort) strategy.close("Short", barssince(shortEntry==true)>=in1)