Stratégie de trading basée sur les bandes de Bollinger et les ratios de retracement de Fibonacci


Date de création: 2023-09-27 16:52:05 Dernière modification: 2023-09-27 16:52:05
Copier: 0 Nombre de clics: 1125
1
Suivre
1617
Abonnés

Aperçu

Cette stratégie utilise les bandes de Boehringer pour déterminer les canaux de prix et, combinée à la correction des retraits de Fibonacci, pour déterminer les niveaux de résistance de soutien, pour automatiser les transactions. La stratégie identifie les ruptures des bandes de Boehringer et suit les retraits, pour effectuer des manipulations d’achat ou de vente dans les zones de reprise à forte probabilité.

Principe de stratégie

  1. Calculer la voie moyenne, la voie supérieure et la voie inférieure de la ceinture de Brin

    • Les calculs de la voie médiane, de la voie supérieure et de la voie inférieure sont effectués à l’aide de la SMA et de l’ATR

    • Le canal de la ceinture de Brin s’élargit et se rétrécit avec les fluctuations du marché

  2. Calcul du retrait de Fibonacci par rapport au prix correspondant

    • Prendre le produit de la proportion entre ATR et les nombres de Fibonacci comme proportion de rétraction

    • Calcul de plusieurs retraits de Fibonacci en fonction de la trajectoire moyenne

  3. Les prix de la surveillance ont dépassé les limites de la ceinture de Brin

    • Les prix sont plus élevés que les prix actuels.

    • Prendre en compte la marge de manœuvre en cas de chute

  4. Mise en place d’un arrêt d’entrée et d’arrêt de perte près de la zone de retrait de Fibonacci

    • Les prix sont retournés à la zone de retrait de Fibonacci.

    • Définir un stop-loss sur l’autre côté de la zone de retrait

Analyse des avantages

  • Les bandes de Brin permettent d’identifier clairement les fluctuations et les tendances du marché

  • Le retrait de Fibonacci est plus important que la maîtrise des zones de résistance clés

  • La combinaison de signaux d’indicateurs permet une négociation automatique

  • Le retour au jeu augmente le taux de réussite et évite les hauts et les bas.

  • Adaptable à différents cycles et variétés en ajustant les paramètres

Analyse des risques

  • La rupture de la ceinture de Brin pourrait être une fausse rupture, générant un faux signal

  • Il n’est pas possible de prédire avec précision quand le prix reviendra à la position Fibonacci.

  • Le mauvais choix du point d’arrêt peut augmenter les pertes.

  • Une régression trop grande ou trop petite affecte l’efficacité de la stratégie

  • La stratégie échoue lorsque les paramètres ne sont pas raisonnables ou que la direction du marché persiste

  • Optimisation de la logique de détermination de la bande de Bryn, plus de considération pour les indicateurs de capacité, l’ajustement dynamique des zones de retrait, etc.

Direction d’optimisation

  • Optimisation des paramètres des bandes de Bryn pour une meilleure appréciation des tendances et des résistances de soutien

  • L’augmentation de la quantité peut être considérée comme un indicateur de l’efficacité du signal de rupture.

  • La probabilité d’un rappel est déterminée à l’aide de l’apprentissage automatique.

  • Les signaux de transaction sont validés avec plus d’indicateurs techniques

  • Paramètres raisonnables choisis en fonction des caractéristiques de la variété et du moment de la transaction

  • Adaptation en temps opportun de l’intensité des zones de retrait à la volatilité des variations

Résumer

La stratégie intègre les avantages des indicateurs de rétrogradation des bandes de Bryn et de Fibonacci, identifie la direction de la tendance et intervient à un point de rétrogradation à haute probabilité. L’effet de promotion du risque peut être réduit par l’optimisation des paramètres, l’ajout d’indicateurs de vérification, l’ajustement dynamique de la zone de rétrogradation, etc. L’espace de stratégie peut encore être étendu, comme l’ajout d’indicateurs d’énergie quantique, l’amélioration de l’effet de l’apprentissage de la machine, etc.

Code source de la stratégie
/*backtest
start: 2023-08-27 00:00:00
end: 2023-09-26 00:00:00
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=4
strategy(shorttitle="BBands Fibo", title="Bollinger Bands Fibonacci Ratios", overlay=true)

length      =   input(20, minval=1, type=input.integer, title="Length")
src         =   input(close, title="Source")
offset      =   input(0, "Offset", type = input.integer, minval = -500, maxval = 500)
fibo1       =   input(defval=1.618, title="Fibonacci Ratio 1")
fibo2       =   input(defval=2.618, title="Fibonacci Ratio 2")
fibo3       =   input(defval=4.236, title="Fibonacci Ratio 3")

fiboBuyReverse = input(false, title = "Use Reverse Buy?")
fiboBuy       =   input(options = ["Fibo 1", "Fibo 2", "Fibo 3"],defval = "Fibo 1", title="Fibonacci Buy")
fiboSellReverse = input(false, title = "Use Reverse Sell?")
fiboSell       =   input(options = ["Fibo 1", "Fibo 2", "Fibo 3"],defval = "Fibo 1", title="Fibonacci Sell")

sma = sma(src, length)
atr = atr(length)

ratio1 = atr * fibo1
ratio2 = atr * fibo2
ratio3 = atr * fibo3

upper3 = sma + ratio3
upper2 = sma + ratio2
upper1 = sma + ratio1

lower1 = sma - ratio1
lower2 = sma - ratio2
lower3 = sma - ratio3

plot(sma, style=0, title="Basis", color=color.orange, linewidth=2, offset = offset)

upp3 = plot(upper3, transp=90, title="Upper 3", color=color.teal, offset = offset)
upp2 = plot(upper2, transp=60, title="Upper 2", color=color.teal, offset = offset)
upp1 = plot(upper1, transp=30, title="Upper 1", color=color.teal, offset = offset)

low1 = plot(lower1, transp=30, title="Lower 1", color=color.teal, offset = offset)
low2 = plot(lower2, transp=60, title="Lower 2", color=color.teal, offset = offset)
low3 = plot(lower3, transp=90, title="Lower 3", color=color.teal, offset = offset)

fill(upp3, low3, title = "Background", color=color.new(color.teal, 95))

targetBuy = fiboBuy == "Fibo 1" ? upper1 : fiboBuy == "Fibo 2" ? upper2 : upper3
targetBuy := fiboBuyReverse == false ? targetBuy : fiboBuy == "Fibo 1" ? lower1 : fiboBuy == "Fibo 2" ? lower2 : lower3
buy = low < targetBuy and high > targetBuy

targetSell = fiboSell == "Fibo 1" ? lower1 : fiboSell == "Fibo 2" ? lower2 : lower3
targetSell := fiboSellReverse == false ? targetSell : fiboSell == "Fibo 1" ? upper1 : fiboSell == "Fibo 2" ? upper2 : upper3
sell = low < targetSell and high > targetSell

strategy.entry("Buy", true, when = buy)
strategy.entry("Sell", false, when = sell)