La stratégie de Bollinger Breakout est une stratégie de stop-loss.

Auteur:ChaoZhang est là., Date: 2023-10-27 16h50 et 24h
Les étiquettes:

img

Résumé

Cette stratégie génère des signaux de trading basés sur l'indicateur Bollinger Bands et gère les positions en utilisant le stop-loss/take-profit. Elle surveille la rupture des bandes supérieures et inférieures des Bollinger Bands, va long lorsque le prix dépasse la bande supérieure, court lorsque le prix dépasse la bande inférieure et sort lorsque le prix dépasse les bandes à l'envers en utilisant des ordres de stop-loss.

La logique de la stratégie

La stratégie utilise les bandes intermédiaires, supérieures et inférieures de l'indicateur Bollinger Bands. La bande intermédiaire est la moyenne mobile, la bande supérieure est la bande intermédiaire plus 2 écarts types et la bande inférieure est la bande intermédiaire moins 2 écarts types.

Il calcule d'abord les bandes moyennes, supérieures et inférieures de Bollinger Bands. Ensuite, il vérifie si le prix dépasse la bande supérieure ou la bande inférieure. Si le prix dépasse la bande supérieure, il va long. Si le prix dépasse la bande inférieure, il va court. De plus, si le prix dépasse les bandes à l'envers, il quitte les positions en utilisant des ordres stop-loss.

Plus précisément, la logique de la stratégie est la suivante:

  1. Calculer les bandes de Bollinger, les bandes moyennes, supérieures et inférieures
  2. Si le prix dépasse la marge supérieure, allez long
  3. Si le prix tombe en dessous de la fourchette inférieure, allez court
  4. Si déjà long, fermer long lorsque le prix dépasse la fourchette inférieure
  5. Si déjà court, fermer court lorsque le prix dépasse la bande supérieure

Cela permet d'attraper les tendances lorsque le prix fait de gros mouvements, tout en limitant les pertes en utilisant le stop-loss.

Les avantages

  • L' utilisation des bandes de Bollinger pour les signaux d' entrée capte les tendances après les écarts
  • Des signaux clairs longs/courts, des règles simples
  • Limites maximales de perte par transaction de la stratégie stop-loss
  • Paramétrage de paramètres pour optimiser la stratégie

Les risques

  • Les transactions à petites pertes de stop-loss fréquentes peuvent nuire au P/L global
  • Un mauvais réglage des paramètres peut entraîner trop de signaux ou des transactions manquées
  • Seul le prix est pris en considération, aucun autre indicateur de confirmation
  • Aucun ajustement du stop-loss à proximité de la rupture ne peut accroître la perte

Il est possible d'optimiser le système en combinant les indicateurs, en ajustant les unités de stop-loss, etc.

Des possibilités d'amélioration

  • Combinez d'autres indicateurs comme le volume, les moyennes mobiles pour confirmer les signaux
  • Optimiser les paramètres de Bollinger pour les différents marchés
  • Ajustez la distance stop-loss près de la rupture pour éviter une sursensibilité
  • Échangez seulement après que les tendances se développent, comme les règles de trading de tortue
  • Optimisation automatique des paramètres par des algorithmes d'apprentissage automatique

Conclusion

Il s'agit d'une tendance relativement simple suivant une stratégie basée sur les bandes de Bollinger. Il peut rapidement prendre des positions lorsque le prix évolue et utilise le stop-loss pour contrôler le risque. Mais s'appuyer uniquement sur le prix peut causer des jugements erronés, tandis que le stop-loss sensible peut augmenter la fréquence des transactions. Nous pouvons l'améliorer davantage via le réglage des paramètres, la combinaison d'indicateurs, l'ajustement des stops, etc. Dans l'ensemble, il fournit un cadre de trading quantitatif simple et fiable.


/*backtest
start: 2023-09-26 00:00:00
end: 2023-10-26 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © ROBO_Trading

//@version=5
strategy(title = "Bollinger Stop Strategy", shorttitle = "BBStop", overlay = true, default_qty_type = strategy.percent_of_equity, initial_capital = 10000, default_qty_value = 100, commission_value = 0.1)

//Settings
long = input(true)
short = input(true)
length = input.int(20, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
source = input(close)
showbb = input(true, title = "Show Bollinger Bands")
showof = input(true, title = "Show Offset")
startTime = input(defval = timestamp("01 Jan 2000 00:00 +0000"), title = "Start Time", inline = "time1")
finalTime = input(defval = timestamp("31 Dec 2099 23:59 +0000"), title = "Final Time", inline = "time1")

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

//Show indicator
offset = showof ? 1 : 0
colorBasis = showbb ? color.gray : na
colorUpper = showbb ? color.blue : na
colorLower = showbb ? color.blue : na
colorBands = showbb ? color.blue : na
p0 = plot(basis, "Basis", color = colorBasis, offset = offset)
p1 = plot(upper, "Upper", color = colorUpper, offset = offset)
p2 = plot(lower, "Lower", color = colorLower, offset = offset)
fill(p1, p2, title = "Background", color = colorBands, transp = 90)

//Trading
truetime = true
if basis > 0 and truetime
    if long
        strategy.entry("Long", strategy.long, stop = upper, when = truetime)
    if short
        strategy.entry("Short", strategy.short, stop = lower, when = truetime)
    if long == false
        strategy.exit("Exit", "Short", stop = upper)
    if short == false
        strategy.exit("Exit", "Long", stop = lower)
if time > finalTime
    strategy.close_all()

Plus de