Stratégie de trading de retour à la cassure des bandes de Bollinger


Date de création: 2024-03-08 14:08:53 Dernière modification: 2024-03-08 14:08:53
Copier: 2 Nombre de clics: 654
1
Suivre
1617
Abonnés

Stratégie de trading de retour à la cassure des bandes de Bollinger

Aperçu

La stratégie est basée sur l’indicateur de la ceinture de Brin, l’idée principale est d’attendre que le prix revienne à l’intérieur de la ceinture de Brin après la rupture de la ceinture de Brin, puis de créer une position identique à la direction de la rupture au point de reprise. La stratégie utilise la caractéristique que les prix ont tendance à se retourner dans les zones extrêmes pour capturer les points de retournement du marché par une combinaison de conditions de rupture de la ceinture de Brin et de reprise, dans l’espoir d’obtenir un meilleur taux de victoire.

Principe de stratégie

  1. Calculer le milieu, le haut et le bas de la bande de Brin. Le milieu est la moyenne mobile, le haut et le bas sont le milieu plus ou moins un certain écart standard.
  2. Détermine si le prix a franchi la trajectoire supérieure ou inférieure de la ceinture de Brin. Si le prix de clôture dépasse la trajectoire supérieure, il est considéré comme une rupture à la hausse; si le prix de clôture tombe sous la trajectoire inférieure, il est considéré comme une rupture à la baisse.
  3. Si une rupture vers le haut se produit, le prix le plus élevé de la ligne K de cette rupture est enregistré comme étant le pic. Si une rupture vers le bas se produit, le prix le plus bas de la ligne K de cette rupture est enregistré comme étant le pic.
  4. Après la rupture, attendez que le prix revienne à l’intérieur de la zone de Brin. Si le prix de clôture se trouve à ce moment-là entre le haut et le bas, le prix est considéré comme revenu.
  5. Si la ligne K précédente est une rupture vers le haut (break_up)[1]and inside), on ouvre un polygone; si la première ligne K est une rupture vers le bas (break_down)[1]Et à l’intérieur, le titre est vide.
  6. Gestion de la position: si plusieurs personnes détiennent une position, le cours de clôture est à zéro; si les personnes détiennent une position vide, le cours de clôture est à zéro.

Analyse des avantages

  1. Le Brin possède une grande adaptabilité et est capable de s’adapter dynamiquement aux fluctuations des prix, ce qui est utile pour capturer les tendances et les fluctuations.
  2. En comparaison avec la simple stratégie de rupture de la ceinture de Brin, les conditions de retour sont augmentées, ce qui permet d’éviter dans une certaine mesure la poursuite des hauts et des bas et d’améliorer la qualité de l’entrée.
  3. Les conditions de placement sont basées sur la voie moyenne, sont simples et faciles à utiliser, et permettent de mieux protéger les bénéfices.
  4. Les paramètres de la bande de Bryn peuvent être personnalisés, tels que la longueur, le coefficient de déviation, etc., avec une grande flexibilité.

Analyse des risques

  1. Une mauvaise sélection des paramètres de la ceinture de Brin peut entraîner une entrée prématurée ou tardive, affectant la performance de la stratégie. Elle peut être atténuée par l’optimisation des paramètres
  2. Il est possible que les cours fluctuent autour de la zone de Brin, ce qui entraîne une baisse fréquente des positions et une augmentation des coûts de transaction.
  3. Si la tendance est forte et que le prix ne retourne pas à l’intérieur de la zone de Brin pendant une longue période, le profit de la tendance peut être perdu.
  4. L’utilisation de l’indicateur de la ceinture de Brin seul peut ne pas être efficace pour certaines variétés ou certaines situations et nécessite une combinaison d’autres signaux.

Direction d’optimisation

  1. On peut envisager d’introduire plus de conditions de filtrage, comme le fait que le prix marche au-dessus de la zone de Brin pendant un certain temps et qu’il est plus fiable de faire une percée, ou des indicateurs de jugement de tendance tels que l’angle MA, l’ADX et d’autres pour aider à la décision.
  2. Pour éviter les positions aveugles, il est possible d’augmenter les quotas et les compteurs en cas de choc.
  3. Pour le plateau, il est possible de combiner l’ATR ou la ligne égale pour mieux contrôler le temps de jeu.
  4. Optimiser les paramètres et analyser les caractéristiques des différents paramètres et périodes pour choisir les paramètres et périodes de négociation appropriés.
  5. On peut envisager d’ajouter la gestion des positions, par exemple en augmentant les positions lorsque la volatilité diminue et en réduisant les positions lorsque la volatilité augmente.

Résumer

La stratégie de trading de retour de rupture de la ceinture de Brin est une stratégie de trading quantitative simple et pratique. Elle utilise la réaction des prix à des situations extrêmes, construit des conditions d’ouverture de positions via des outils de ceinture de Brin, capte les points de départ et d’arrivée des tendances dans une certaine mesure et contrôle la fréquence des transactions.

Code source de la stratégie
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-27 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy(shorttitle="BB", title="Bollinger Bands", overlay=true)
length = input.int(20, minval=1)
maType = input.string("SMA", "Basis MA Type", options = ["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"])
src = input(close, title="Source")
mult = input.float(1.7, minval=0.001, maxval=50, title="StdDev")

ma(source, length, _type) =>
    switch _type
        "SMA" => ta.sma(source, length)
        "EMA" => ta.ema(source, length)
        "SMMA (RMA)" => ta.rma(source, length)
        "WMA" => ta.wma(source, length)
        "VWMA" => ta.vwma(source, length)

basis = ma(src, length, maType)
dev = mult * ta.stdev(src, length)
upper = basis + dev
lower = basis - dev
offset = input.int(0, "Offset", minval = -500, maxval = 500)
plot(basis, "Basis", color=#FF6D00, offset = offset)
p1 = plot(upper, "Upper", color=#2962FF, offset = offset)
p2 = plot(lower, "Lower", color=#2962FF, offset = offset)
fill(p1, p2, title = "Background", color=color.rgb(33, 150, 243, 95))

break_up = close > upper
break_down = close < lower
inside = close > lower and close < upper

sell_condition = break_up[1] and inside
buy_condition = break_down[1] and inside

// Conditions to close trades
close_sell_condition = close > basis
close_buy_condition = close < basis

trade_condition = sell_condition or buy_condition

// Tracking the high of the breakout candle
var float peak = na

if (not trade_condition)
    peak := close
if (break_up and peak < high)
    peak := high
if (break_down and peak > low)
    peak := low

// Entering positions
if (buy_condition)
    strategy.entry("Buy", strategy.long)
if (sell_condition)
    strategy.entry("Sell", strategy.short)

// Exiting positions when close crosses the basis
if (strategy.position_size > 0 and close_sell_condition) // If in a long position and close crosses above basis
    strategy.close("Buy")
if (strategy.position_size < 0 and close_buy_condition) // If in a short position and close crosses below basis
    strategy.close("Sell")