Bandes de Bollinger et stratégies de trading de Fibonacci


Date de création: 2023-09-21 21:04:38 Dernière modification: 2023-09-21 21:04:38
Copier: 2 Nombre de clics: 1261
1
Suivre
1617
Abonnés

Aperçu

Cette stratégie combine les bandes de Brin et les retraits de Fibonacci pour réaliser des transactions en combinaison de plusieurs indicateurs. C’est un type typique de stratégie d’indicateurs combinés. La stratégie utilise les bandes de Brin pour déterminer la direction de la tendance et les retraits de Fibonacci pour déterminer les niveaux de résistance de soutien critique, générant ainsi un signal de transaction.

Principe de stratégie

La stratégie est principalement basée sur les deux indicateurs suivants:

  1. La ceinture de Brin

Calculer le haut, le milieu et le bas de la bande de Brin. Les prix sont signalés en plus ou en moins lorsqu’ils dépassent le bas de la bande et en moins lorsqu’ils dépassent le haut.

  1. Fibonacci se rétracte

Les points de retraite de Fibonacci sont calculés en fonction des hauts et des bas historiques de 0% et 100%. Ces deux points peuvent servir de points de support et de résistance clés.

La logique des transactions est la suivante:

Signal plus: les prix sont en train de traverser la ceinture de Brin et se situent au-dessus du support de Fibonacci à 0%

Signaux de rupture: prix en dessous de la bande de Brin et en dessous de la résistance de Fibonacci à 100%

Le plafond est pris en référence à la voie médiane et s’arrête ou s’arrête près de la voie médiane.

Avantages stratégiques

  • La combinaison des deux indicateurs de la ceinture de Brin et de Fibonacci
  • Brin prend la direction de la tendance et Fibonacci détermine les points critiques
  • La combinaison de ces deux méthodes réduit la probabilité d’erreurs de filtrage.
  • Arrêt de freinage près de la voie médiane, retour de contrôle en place
  • Les règles d’entrée et de sortie sont claires et faciles à utiliser

Risque stratégique

  • L’indicateur de la moyenne est en retard et risque de manquer les meilleurs points
  • La réponse aux urgences majeures n’est pas assez rapide sur la seule base des indicateurs
  • Les conditions de double filtrage limitent la fréquence des transactions
  • Les paramètres mal définis affectent les effets de bandeau et de rétractation
  • Les paramètres d’optimisation doivent être testés séparément pour les différentes variétés

Les mesures suivantes peuvent réduire le risque:

  • Optimiser les paramètres pour trouver la meilleure combinaison de paramètres
  • Une adhésion appropriée aux conditions d’admission, par exemple l’ajout d’une forme de ligne K
  • Optimisation des mécanismes de stop-loss, tels que le suivi des stop-loss
  • Les meilleurs paramètres pour tester les différentes variétés
  • Adaptation du système de gestion des positions

Direction d’optimisation

Cette stratégie peut être optimisée dans les domaines suivants:

  1. Optimiser les paramètres de la bande de Bryn

Trouver le meilleur rapport de paramètres pour calculer la montée et la descente

  1. Optimiser le cycle de rétractation de Fibonacci

Paramètres de différentes périodes de rétractation calculés par le test

  1. La facilité d’accès

Par exemple, observez la forme de la ligne K lors de la rupture de la ceinture de Brin.

  1. Optimisation des mécanismes d’arrêt de frein

Considérez des solutions de réduction des pertes avec une fonction de suivi

  1. Tests selon les variétés

Les paramètres ne sont pas forcément les mêmes pour les différentes variétés et doivent être adaptés.

Résumer

Cette stratégie utilise la combinaison des indicateurs de rétractation de Brin Belt et Fibonacci pour tirer parti de leurs avantages techniques respectifs et améliorer la qualité des signaux de négociation. Cependant, il existe également des problèmes tels que la difficulté d’optimisation des paramètres, les conditions d’entrée trop strictes. Nous pouvons améliorer le système de stratégie en utilisant des paramètres d’optimisation, un assouplissement approprié des conditions d’entrée et une amélioration des mécanismes d’arrêt des pertes, afin de gagner plus d’opportunités de négociation tout en conservant son avantage technique.

Code source de la stratégie
/*backtest
start: 2023-09-13 00:00:00
end: 2023-09-20 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger Bands & Fibonacci Strategy", shorttitle="BB & Fib Strategy", overlay=true)

// Initialize position variables
var bool long_position = false
var bool short_position = false

// Bollinger Bands settings
length = input.int(20, title="Bollinger Bands Length")
src = input(close, title="Source")
mult = input.float(2.0, title="Standard Deviation Multiplier")

basis = ta.sma(src, length)
dev = mult * ta.stdev(src, length)

upper_band = basis + dev
lower_band = basis - dev

// Fibonacci retracement levels
fib_0 = input.float(0.0, title="Fibonacci 0% Level", minval=-100, maxval=100) / 100
fib_100 = input.float(1.0, title="Fibonacci 100% Level", minval=-100, maxval=100) / 100

// Plotting Bollinger Bands
plot(upper_band, color=color.red, title="Upper Bollinger Band")
plot(lower_band, color=color.green, title="Lower Bollinger Band")

// Calculate Fibonacci levels
fib_range = ta.highest(high, 50) - ta.lowest(low, 50)
fib_high = ta.highest(high, 50) - fib_range * fib_0
fib_low = ta.lowest(low, 50) + fib_range * fib_100

// Plot Fibonacci retracement levels
plot(fib_high, color=color.blue, title="Fibonacci High")
plot(fib_low, color=color.orange, title="Fibonacci Low")

// Entry conditions
long_condition = ta.crossover(close, upper_band) and low > fib_low
short_condition = ta.crossunder(close, lower_band) and high < fib_high

// Plot arrows on the chart
plotshape(series=long_condition, title="Long Entry", location=location.belowbar, color=color.green, style=shape.triangleup, size=size.small)
plotshape(series=short_condition, title="Short Entry", location=location.abovebar, color=color.red, style=shape.triangledown, size=size.small)

// Entry and exit logic
if long_condition and not short_position
    strategy.entry("Long", strategy.long)
    long_position := true
    short_position := false

if short_condition and not long_position
    strategy.entry("Short", strategy.short)
    short_position := true
    long_position := false

// Exit conditions (you can customize these)
long_exit_condition = ta.crossunder(close, basis)
short_exit_condition = ta.crossover(close, basis)

if long_exit_condition
    strategy.close("Long")
    long_position := false

if short_exit_condition
    strategy.close("Short")
    short_position := false