Stratégie de négociation de suivi intelligent basée sur des bandes de Bollinger

Auteur:ChaoZhang est là., Date: 2024-01-17 14h05: 36
Les étiquettes:

img

Résumé

Cette stratégie est conçue sur la base de l'indicateur Bollinger Bands pour passer à la vente à découvert lorsque le prix dépasse la bande supérieure et à la vente à découvert lorsque le prix dépasse la bande inférieure, ce qui permet de réaliser un trading de suivi intelligent.

La logique de la stratégie

La stratégie utilise la ligne du milieu, la bande supérieure et la bande inférieure des bandes de Bollinger comme indicateurs de base. La ligne du milieu est la moyenne mobile des prix de clôture sur n jours. La bande supérieure est la ligne du milieu déplacée vers le haut par deux écarts types tandis que la bande inférieure est déplacée vers le bas par deux écarts types. Lorsque le prix dépasse la bande inférieure vers le haut, allez long. Lorsque le prix dépasse la bande supérieure vers le bas, allez court. Cela permet un suivi intelligent du prix basé sur la volatilité du marché.

Plus précisément, la stratégie évalue principalement deux indicateurs:

  1. ta.crossover ((source, inférieure): les prix de clôture dépassent la fourchette inférieure, et deviennent longs

  2. ta.crossunder ((source, supérieur): les prix de clôture dépassent la fourchette supérieure, passent au short

Lorsque la condition de sortie est déclenchée, utilisez la fonction strategy.cancel() pour aplatir la position existante.

Analyse des avantages

Les principaux avantages de cette stratégie sont les suivants:

  1. Basé sur l'indicateur Bollinger Bands, capable de capturer la volatilité du marché et de suivre efficacement la tendance des prix
  2. Logique claire et simple, facile à comprendre et à mettre en œuvre
  3. Paramètres personnalisables tels que la longueur de la période et le multiplicateur d'écart type, hautement adaptable
  4. Mécanismes de stop loss, de break-even ou de trailing stop configurables pour optimiser les performances de la stratégie

Analyse des risques

Cette stratégie comporte également certains risques:

  1. Les écarts de Bollinger Bands sont sujets à de faux signaux
  2. Les performances dépendent de l'optimisation des paramètres, les paramètres inappropriés peuvent avoir un impact sur la rentabilité
  3. Traçage de la perte d'arrêt difficile, incapable de contrôler efficacement la perte de transaction unique

Solution correspondante:

  1. Ajoutez des filtres avec d' autres indicateurs pour éviter les fausses fuites
  2. Testez les paramètres en profondeur pour trouver le paramètre optimal
  3. Ajouter des mécanismes de stop loss en mouvement ou suivant la tendance

Directions d'optimisation

La stratégie peut être encore optimisée par:

  1. Ajout d'autres indicateurs pour déterminer la direction de la tendance, évitant des conditions de marché inappropriées pour la stratégie Bollinger
  2. Tester différentes durées de période pour trouver la plus optimale
  3. Incorporation de mécanismes d'arrêt en mouvement ou en retard pour contrôler efficacement les pertes d'une seule transaction

Conclusion

Cette stratégie est conçue sur la base de l'indicateur des bandes de Bollinger, en utilisant les écarts de prix des bandes supérieures et inférieures pour suivre automatiquement les prix. La logique est simple et sensible à la volatilité du marché. Des optimisations supplémentaires peuvent être effectuées via des mécanismes de réglage de paramètres et de stop loss. Dans l'ensemble, cette stratégie fonctionne bien pour les indices et les matières premières à plus forte volatilité. Les traders peuvent backtest et optimiser en fonction de leurs préférences de trading pour dériver une stratégie de trading astika.


/*backtest
start: 2023-12-17 00:00:00
end: 2024-01-16 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("Bollinger Bands Strategy with alerts (incl. pending orders) via TradingConnector to Forex", overlay=true)
source = close
length = input.int(20, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)
basis = ta.sma(source, length)
dev = mult * ta.stdev(source, length)
upper = basis + dev
lower = basis - dev
buyEntry = ta.crossover(source, lower)
sellEntry = ta.crossunder(source, upper)
if (ta.crossover(source, lower))
	strategy.entry("BBandLE", strategy.long, stop=lower, oca_name="BollingerBands", comment="BBandLE")
    alert(message='long price='+str.tostring(lower), freq=alert.freq_once_per_bar_close)
else
	strategy.cancel(id="BBandLE")
    alert(message='cancel long', freq=alert.freq_once_per_bar_close)
if (ta.crossunder(source, upper))
	strategy.entry("BBandSE", strategy.short, stop=upper, oca_name="BollingerBands", comment="BBandSE")
    alert(message='short price='+str.tostring(upper), freq=alert.freq_once_per_bar_close)
else
	strategy.cancel(id="BBandSE")
    alert(message='cancel short', freq=alert.freq_once_per_bar_close)
//plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)

//Lines of code added to the original built-in script: 14, 17, 20 and 23 only.
//They trigger alerts ready to be executed on real markets through TradingConnector
//available for Forex, indices, crypto, stocks - anything your broker offers for trading via MetaTrader4/5


Plus de