La stratégie de divergence confirmée utilise les deux signaux de divergence de l'indicateur RSI et de l'oscillateur Awesome pour déterminer des points d'entrée plus fiables. Lorsque les prix forment de nouveaux sommets ou de nouveaux sommets tandis que les indicateurs RSI et AO forment des renversements de sommets ou de sommets, il s'agit d'un signal de divergence. Cette stratégie nécessite une divergence des deux indicateurs en même temps pour filtrer certains faux signaux et améliorer l'efficacité de l'entrée.
Cette stratégie évalue les points d'achat et de vente sur la base de la divergence entre l'ampleur des hausses et des baisses de prix et les valeurs des indicateurs RSI et AO.
Divergence haussière: les prix forment un plus récent plus bas tandis que l'indice de volatilité et l'indice de volatilité forment de nouveaux plus hauts, c'est-à-dire que les prix baissent tandis que l'indice de volatilité et l'indice de volatilité augmentent, ce qui constitue un signal de divergence haussière.
Différence baissière: les prix forment un nouveau sommet tandis que l'indice RSI et l'indice AO forment de nouveaux bas, c'est-à-dire que les prix augmentent tandis que l'indice RSI et l'indice AO baissent, ce qui constitue un signal de divergence baissière.
La stratégie exige que les deux indicateurs répondent simultanément aux critères de divergence afin d'éviter les signaux erronés provenant d'une fausse divergence d'un seul indicateur.
Cette stratégie présente les avantages suivants:
Le double filtrage des indicateurs augmente la fiabilité des signaux et évite les signaux de fausse divergence d'un seul indicateur.
L'utilisation des caractéristiques de divergence des indicateurs pour déterminer les points d'achat et de vente présente une probabilité relativement faible de recul.
Les signaux de divergence présentent une bonne viabilité et un potentiel de profit plus élevé.
Le fait de placer le stop loss près d'un support ou d'une résistance clé réduit la possibilité d'énormes pertes individuelles.
Cette stratégie comporte également des risques:
Les conditions de double filtrage sont moins fréquemment remplies, ce qui peut entraîner la perte de certaines opportunités commerciales.
La divergence n'est pas un signal fiable à 100% et des pertes peuvent survenir dans certaines situations individuelles.
Les paramètres incorrects pour les bandes de Bollinger peuvent entraîner un stop loss trop lâche ou trop serré.
Cette stratégie peut être optimisée de plusieurs façons:
Ajuster les paramètres du cycle pour juger de la divergence afin d'optimiser les paramètres des signaux de divergence.
Testez différentes méthodes de stop loss telles que le stop trailing ou le stop loss dynamique.
Augmenter le filtrage par d'autres indicateurs tels que le volume des transactions afin d'améliorer encore la fiabilité du signal.
Considérer de manière exhaustive les tendances, le support/résistance et d'autres facteurs pour déterminer la qualité des signaux de divergence.
La stratégie de divergence confirmée détermine les points d'entrée à travers les signaux de divergence double de RSI et AO. Le double mécanisme de filtrage réduit efficacement les faux signaux et augmente la rentabilité. La stratégie définit également un stop loss à des niveaux clés pour contrôler les risques, avec de bonnes caractéristiques de risque-rendement.
/*backtest start: 2023-12-15 00:00:00 end: 2024-01-14 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Confirmed Divergence Strategy", overlay=true) source = close length = input(30, minval=1) mult = input(2.0, minval=0.001, maxval=50) // SETTING UP VARIABLES // src = close // RSI // rsiprd = input(title="RSI period",defval=14) rv = rsi(src,rsiprd) ob = input(title="Overbought Level", defval=70) os = input(title="Oversold Level", defval=30) lengthAO1=input(title="Awesome Short MA", defval=5, minval=1) //5 periods lengthAO2=input(title="Awesome Long MA", defval=34, minval=1) //34 periods //Awesome// AO = sma((high+low)/2, lengthAO1) - sma((high+low)/2, lengthAO2) // look back periods // x = input(title = "short lookback period",defval=5) z = input(title = "long lookback period",defval=25) // END SETUP // //////////////////////// // BULLISH DIVERGENCE // //////////////////////// // define lower low in price // srcLL = src > lowest(src,x) and lowest(src,x)<lowest(src,z)[x] // define higher low in rsi // rsiHL = rv>lowest(rv,x) and lowest(rv,x) > lowest(rv,z)[x] and lowest(rv,z)<os // define higher low in AO // aoHL = AO > lowest(AO,x) and lowest(AO,x) > lowest(AO,z)[x] and lowest(AO, x) < 0 BullishDiv = srcLL and rsiHL and aoHL //////////////////////// // BEARISH DIVERGENCE // //////////////////////// // define higher high in price // srcHH = src < highest(src,x) and highest(src,x)>highest(src,z)[x] // define lower high in RSI // rsiLH = rv<highest(rv,x) and highest(rv,x) < highest(rv,z)[x] and highest(rv,z)>ob // define lower high in AO // aoLH = AO<highest(AO,x) and highest(AO,x) < highest(AO,z)[x] and highest(AO, x) > 0 BearishDiv = srcHH and rsiLH and aoLH basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev if (BullishDiv) strategy.entry("DivLE", strategy.long, stop=lower, oca_name="BullishDiv",comment="DivLE") else strategy.cancel(id="DivLE") if (crossover(close, lower)) strategy.close("DivSE") if (crossunder(close, upper)) strategy.close("DivLE") if (BearishDiv) strategy.entry("DivSE", strategy.short, stop=upper, oca_name="BearishDiv",comment="DivSE") else strategy.cancel(id="DivSE") //plot(strategy.equity, title="equity", color=red, linewidth=2, style=areabr)