Renforcement de la stratégie quantitative de retour à la moyenne de Bollinger

BB EMA ATR SMA stdev
Date de création: 2024-11-18 16:07:05 Dernière modification: 2024-11-18 16:07:05
Copier: 7 Nombre de clics: 549
1
Suivre
1617
Abonnés

Renforcement de la stratégie quantitative de retour à la moyenne de Bollinger

Aperçu

La stratégie est un système de trading de régression des moyennes basé sur les bandes de Bollinger, qui optimise l’efficacité des transactions en combinant un filtre de tendance et un stop-loss dynamique. La stratégie utilise des principes statistiques pour effectuer des transactions lorsque les prix s’écartent de la moyenne, tout en améliorant le taux de victoire et en gérant les risques grâce à des indicateurs techniques.

Principe de stratégie

Le cœur de la stratégie repose sur les éléments clés suivants:

  1. Utilisation de la bande de Bollinger à 20 cycles comme source principale, avec une bande passante deux fois plus grande que la différence standard
  2. Introduction d’un EMA à 50 cycles comme filtre de tendance pour s’assurer que la direction des transactions est conforme à la tendance à moyen terme
  3. La mise en place d’objectifs de stop-loss et de profit avec un ATR dynamique de 14 cycles pour améliorer le rapport risque/bénéfice
  4. Le cours est ouvert lorsque le cours touche la trajectoire descendante et est au-dessus de l’EMA, ouvert lorsque le prix touche la trajectoire montante et est au-dessous de l’EMA
  5. Utilisez 2 fois l’ATR comme objectif de profit et 1 fois l’ATR comme point d’arrêt

Avantages stratégiques

  1. La combinaison des avantages de la régression des valeurs moyennes et du suivi de la tendance améliore la fiabilité des transactions
  2. Des paramètres de stop-loss et de profit dynamiques adaptés aux changements de volatilité du marché
  3. Des règles claires d’entrée et de sortie, moins de jugements subjectifs
  4. Un ratio de risque/bénéfice fixe de 2:1 favorise la stabilité des bénéfices à long terme
  5. Une combinaison d’indicateurs techniques réduit l’impact des faux signaux

Risque stratégique

  1. Les marchés en forte tendance risquent de passer à côté de l’essentiel
  2. Les transactions peuvent être fréquentes si la zone de tri horizontal est trop étroite
  3. Les stop-loss peuvent glisser en cas d’évolution du marché
  4. Les paramètres doivent être surveillés et ajustés en permanence pour s’adapter aux changements du marché
  5. Les coûts de transaction peuvent affecter les rendements de la stratégie

Orientation de l’optimisation de la stratégie

  1. Ajouter un indicateur de volume comme confirmation auxiliaire
  2. Introduction de filtres de volatilité du marché pour éviter les périodes de forte volatilité
  3. Mécanisme d’adaptation des paramètres d’optimisation
  4. Ajouter plus d’indicateurs techniques à la vérification croisée
  5. Améliorer le système de gestion des fonds

Résumer

Il s’agit d’une stratégie qui combine l’analyse technique classique avec des méthodes modernes de quantification. La stratégie a une bonne utilité grâce à la confirmation de multiples indicateurs et à un contrôle strict des risques. Il est recommandé d’effectuer un retour d’expérience historique adéquat et de vérifier les transactions simulées avant la mise en bourse.

Code source de la stratégie
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-17 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Optimized Bollinger Mean Reversion", overlay=true)

// Bollinger Band Settings
length = input.int(20, title="BB Length")
src = input(close, title="Source")
mult = input.float(2.0, title="BB Multiplier")

// Bollinger Bands Calculation
basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev

// Plot the Bollinger Bands
plot(basis, color=color.blue)
p1 = plot(upper, color=color.red)
p2 = plot(lower, color=color.red)
fill(p1, p2, color=color.rgb(41, 98, 255, 90))

// Trend Filter - 50 EMA
ema_filter = ta.ema(close, 50)

// ATR for Dynamic Stop Loss/Take Profit
atr_value = ta.atr(14)

// Buy condition - price touches lower band and above 50 EMA
buy_condition = ta.crossover(close, lower) and close > ema_filter

// Sell condition - price touches upper band and below 50 EMA
sell_condition = ta.crossunder(close, upper) and close < ema_filter

// Strategy Execution
if (buy_condition)
    strategy.entry("Buy", strategy.long)

if (sell_condition)
    strategy.entry("Sell", strategy.short)

// Exit with dynamic ATR-based stop loss and take profit
strategy.exit("Take Profit/Stop Loss", from_entry="Buy", limit=2*atr_value, stop=1*atr_value)
strategy.exit("Take Profit/Stop Loss", from_entry="Sell", limit=2*atr_value, stop=1*atr_value)