Stratégie de trading à bande de volatilité multi-indicateurs


Date de création: 2023-11-15 15:30:43 Dernière modification: 2023-11-15 15:30:43
Copier: 0 Nombre de clics: 686
1
Suivre
1617
Abonnés

Stratégie de trading à bande de volatilité multi-indicateurs

Aperçu

La stratégie utilise une combinaison d’indicateurs techniques, tels que les bandes d’oscillation, les indices de faiblesse relative et les moyennes mobiles de dispersion, pour prendre des décisions d’achat et de vente. La stratégie commence par tracer les bandes d’oscillation traditionnelles sur le graphique, mais utilise deux zones de bandes de deux couleurs pour représenter deux niveaux de différence standard différents.

Principe de stratégie

  1. Tout d’abord, la stratégie consiste à tracer sur le graphique une bande de 34 cycles comprenant un milieu, un haut et un bas de 1 et 2 écarts.

  2. Lorsque le cours de clôture est en hausse, il y a une ouverture à plusieurs têtes. Lorsque le cours de clôture est en baisse, il y a une ouverture à vide.

  3. Lorsqu’une position est détenue à plusieurs têtes, la position est libre si le prix de clôture est en dessous de la trajectoire moyenne. Lorsqu’une position est détenue à vide, la position est vide si le prix de clôture est en dessous de la trajectoire moyenne.

  4. La stratégie a également introduit l’indicateur RSI, qui est une confirmation supplémentaire pour les positions à plusieurs têtes lorsque le RSI est supérieur à 70 et une confirmation supplémentaire pour les positions à vide lorsque le RSI est inférieur à 30.

  5. Lorsque le RSI est supérieur à 50, la position est vide. Lorsque le RSI est en dessous de 50, la position est en hausse.

  6. La stratégie a également introduit l’indicateur MACD, qui sert de confirmation supplémentaire pour les positions ouvertes à plusieurs têtes lors de la fourche en or du MACD et de confirmation supplémentaire pour les positions ouvertes à vide lors de la fourche morte du MACD.

  7. Lorsque le MACD est mort, le placement est plus simple. Lorsque le MACD est en or, le placement est vide.

  8. En résumé, la stratégie nécessite que les bandes d’oscillation, le RSI et le MACD satisfassent aux trois conditions pour qu’une position soit ouverte. Les conditions de placement sont également prises en compte pour réduire la probabilité de faux signaux.

Analyse des avantages

L’utilisation intégrée de signaux de filtrage de plusieurs indicateurs peut éviter efficacement les erreurs de négociation. La volatilité donne un signal de rupture de prix, le filtre RSI surpasse le phénomène de survente, le filtre MACD modifie la tendance du marché, les trois confirment ensemble le signal, ce qui peut considérablement améliorer la probabilité de profit.

La stratégie prévoit également une logique de placement différente pour l’ouverture et la fermeture des positions, contrôlant strictement le risque de détention des positions. La trajectoire moyenne, l’axe 50 du RSI et la fourche dorée du MACD ont été introduites comme conditions de placement, ce qui permet une perte rapide et réduit les pertes simples.

Comparativement à une stratégie à un seul indicateur, la stratégie qui combine les avantages de plusieurs indicateurs peut considérablement améliorer les taux de profit et de victoire et réduire le maximum de retrait. Le filtrage de la combinaison de plusieurs indicateurs peut réduire la probabilité de transactions erronées, et un mécanisme de stop-loss strict peut contrôler l’impact de chaque transaction à perte.

Dans l’ensemble, cette stratégie est parfaitement adaptée à la négociation de tendances à moyen et long terme, car elle permet à la fois de saisir les principales tendances du marché et d’éviter d’être piégé par les détails de l’indicateur. Le mécanisme de contrôle du risque multi-indicateurs lui permet également d’utiliser un levier plus élevé en toute sécurité.

Analyse des risques

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

  1. La probabilité que l’indicateur émet un faux signal. Bien que la synthèse de plusieurs indicateurs puisse réduire le faux signal, il est impossible de l’éliminer complètement. Il est nécessaire d’optimiser les paramètres de l’indicateur pour réduire le taux de faux signal.

  2. Les conditions unilatérales ne permettent pas de réaliser de bénéfices. Lorsqu’une tendance est instable, un stop loss peut être déclenché, ce qui ne permet pas de réaliser de bénéfices.

  3. Certains indicateurs sont en retard et risquent de manquer le meilleur moment pour ouvrir une position. Des indicateurs plus avancés peuvent être testés pour capturer les virages plus tôt.

  4. La largeur de l’ouverture de saut a pour effet d’annuler le stop loss. Il est possible de régler le stop loss de la voie ou d’augmenter progressivement la position pour contrôler les pertes.

  5. Les paramètres sont trop fixes et doivent être adaptés pour les différents marchés.

  6. Les données de test sont insuffisantes et il peut y avoir une suradaptation. La robustesse de la stratégie doit être testée sur une période plus longue et sur plusieurs marchés.

Direction d’optimisation

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

  1. Optimiser les paramètres de l’indicateur, trouver les combinaisons de paramètres de la bande de fréquence, du RSI et du MACD les plus appropriées, réduire les faux signaux. Les meilleurs paramètres peuvent être trouvés par des méthodes telles que la méthode par étapes et la méthode par étapes.

  2. L’ajout d’un mécanisme d’arrêt auto-adaptatif, plutôt que d’un arrêt de voie fixe. Il peut être combiné avec des facteurs tels que l’ATR, la tendance et l’ajustement dynamique de la position d’arrêt.

  3. L’introduction de l’apprentissage automatique permet une optimisation adaptative des paramètres. L’apprentissage par renforcement peut être utilisé pour optimiser les paramètres dans différentes conditions de marché.

  4. Il s’agit d’augmenter les règles de jugement des tendances, de distinguer les différentes stratégies à différentes étapes et d’améliorer la capacité d’adaptation dynamique des stratégies.

  5. La combinaison de l’analyse textuelle et des données sociales a permis de renforcer les prévisions multifonctionnelles et d’utiliser des indicateurs plus avancés pour déterminer à l’avance les points de basculement.

  6. Optimiser le rendement en ajustant la taille de la position en fonction du montant du capital, de sorte que les gains permettent une croissance exponentielle.

  7. Optimiser le portefeuille, rechercher des stratégies complémentaires et réduire la volatilité des gains du portefeuille en utilisant la non-corrélation.

Résumer

La stratégie utilise une combinaison de plusieurs indicateurs techniques pour juger des entrées et des sorties, tout en établissant des règles strictes d’arrêt des pertes. Par rapport à un indicateur unique, la combinaison de plusieurs indicateurs peut réduire considérablement les faux signaux et augmenter la probabilité de gagner. Les règles d’arrêt des pertes peuvent également contrôler l’impact de chaque perte.

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

//@version=5
// Bollinger Bands: Madrid : 14/SEP/2014 11:07 : 2.0
// This displays the traditional Bollinger Bands, the difference is 
// that the 1st and 2nd StdDev are outlined with two colors and two
// different levels, one for each Standard Deviation

strategy(shorttitle='MBB', title='Bollinger Bands', overlay=true, currency=currency.NONE, initial_capital = 1000, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, commission_value = 0.05)
src = input(close)
length = input.int(34, minval=1)
mult = input.float(2.0, minval=0.001, maxval=50)

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

upper1 = basis + dev
lower1 = basis - dev
upper2 = basis + dev2
lower2 = basis - dev2

colorBasis = src >= basis ? color.blue : color.orange

pBasis = plot(basis, linewidth=2, color=colorBasis)
pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles)
pUpper2 = plot(upper2, color=color.new(color.blue, 0))
pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles)
pLower2 = plot(lower2, color=color.new(color.orange, 0))

fill(pBasis, pUpper2, color=color.new(color.blue, 80))
fill(pUpper1, pUpper2, color=color.new(color.blue, 80))
fill(pBasis, pLower2, color=color.new(color.orange, 80))
fill(pLower1, pLower2, color=color.new(color.orange, 80))


//Strategy code starts here

long_entry = ta.crossover(src, upper1)
short_entry = ta.crossunder(src, lower1)

strategy.entry("Long", strategy.long, when=long_entry)
strategy.entry("Short", strategy.short, when=short_entry)

if long_entry or close < basis
    strategy.close("Long", "Long") 

if short_entry or close > basis
    strategy.close("Short", "Short") 


//Calculate RSI
rsiLength = input(14)
rsiValue = ta.rsi(src, rsiLength)

// Define RSI conditions for entering and exiting trades
rsiLong = rsiValue > 70
rsiShort = rsiValue < 30


//Enter long position when RSI crosses above 50 and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong)

//Exit long position when RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=rsiShort or close < basis)

//Enter short position when RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort)

//Exit short position when RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=rsiLong or close > basis)



//Calculate MACD
fastLength = input(12)
slowLength = input(26)
macdLength = input(9)
macdValue = ta.macd(src, fastLength, slowLength, macdLength)

// Define MACD conditions for entering and exiting trades
macdLong = ta.crossover(src, macdLength)
macdShort = ta.crossunder(src, macdLength)

//Enter long position when MACD crosses above signal line and RSI and Bollinger Bands long entry condition is met
strategy.entry("Long", strategy.long, when=long_entry and rsiLong and macdLong)

//Exit long position when MACD crosses below signal line or RSI crosses below 50 or Bollinger Bands exit condition is met
strategy.close("Long Exit", when=macdShort or rsiShort or close < basis)

//Enter short position when MACD crosses below signal line and RSI crosses below 50 and Bollinger Bands short entry condition is met
strategy.entry("Short", strategy.short, when=short_entry and rsiShort and macdShort)

//Exit short position when MACD crosses above signal line or RSI crosses above 50 or Bollinger Bands exit condition is met
strategy.close("Short Exit", when=macdLong or rsiLong or close > basis)