Cette stratégie utilise l'indicateur SuperTrend pour déterminer la direction de la tendance actuelle et génère des signaux de trading basés sur des modèles de bougies de piégeage. Elle appartient aux stratégies de suivi de tendance.
La stratégie calcule d'abord l'indicateur de SuperTrend pour déterminer la tendance actuelle, avec le vert pour la tendance haussière et le rouge pour la tendance baissière. Elle vérifie ensuite si le chandelier forme un motif de piégeage, ce qui nécessite: 1) la bougie est opposée à la direction de la SuperTrend, 2) la bougie est forte (grand haussier ou proche ne diverge pas), 3) la bougie a un volume croissant. Lorsque les trois conditions sont remplies, elle signale un renversement de tendance probable.
Plus précisément, la SuperTrend est calculée sur la base de l'ATR à 10 périodes. Elle vérifie ensuite si la bougie actuelle est opposée à la direction de la SuperTrend et si son VOLUME est plus grand que la bougie précédente, ou trois bougies consécutives avec la même direction CLOSE mais en diminution de VOLUME. Si les critères sont remplis, elle signale un renversement et entre en long à la hauteur de la bougie et entre en court à la basse de la bougie.
La stratégie identifie la tendance globale avec SuperTrend et entre dans les points d'inversion potentiels marqués par des bougies piégées, l'objectif de profit provenant du mouvement de tendance ultérieur.
SuperTrend détermine la tendance globale, capturant les signaux de bougie et les chances d'inversion.
La forte dynamique et le volume croissant de la bougie de piégeage évitent les faux signaux du bruit.
Avec SuperTrend et la bougie de piégeage comme noyau, la stratégie est très minimaliste, avec peu de paramètres et facile à mettre en œuvre.
Le stop loss au prix de la bougie de piégeage permet une sortie rapide et convient également à la position après le renversement.
SuperTrend a un certain retard dans la détection de l'inversion de tendance, il peut donc manquer le meilleur moment d'entrée.
Les signaux d'inversion ne sont pas fiables à 100%.
Le modèle de piégeage optimal peut varier selon les produits et les délais.
Les caractéristiques de négociation diffèrent entre les sessions de jour et de nuit.
Par exemple, optimiser le niveau d'augmentation du volume de la bougie de piégeage séparément pour le jour et la nuit.
Testez différentes périodes ATR pour trouver les paramètres et les signaux optimaux de SuperTrend pour chaque produit.
Incorporer des indicateurs supplémentaires tels que MACD, KDJ pour améliorer la précision du jugement d'inversion.
Par exemple, la réinitialisation du stop loss après les inversions, le pourcentage de stop loss, etc. pour contrôler le risque.
Cette stratégie combine SuperTrend et les modèles de bougies de piégeage pour entrer sur les inversions de tendance perçues. L'idée de base est simple et claire. Mais il y a de la place pour améliorer encore la précision du signal par des optimisations complètes à travers des aspects tels que la tendance globale, les différences de session, le stop loss, etc., pour améliorer la stabilité.
/*backtest start: 2023-09-17 00:00:00 end: 2023-09-24 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("SuperTrend Trapping Candle Strategy", shorttitle="ST", margin_long=1, margin_short=1, overlay=true) // Inputs atrPeriod = input.int(10, "ATR Length") factor = input.int(2, "Factor") candleDivider = input.float(0.003, "Candle Height", step=0.0001) // Supertrend [supertrend, direction] = ta.supertrend(factor, atrPeriod) plot(direction < 0 ? supertrend : na, "Up Trend", color = color.green, style=plot.style_linebr) plot(direction < 0? na : supertrend, "Down Trend", color = color.red, style=plot.style_linebr) //Trapping canlde isUptrend = direction < 0 isDowntrend = direction > 0 isBullsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close > close[1] and close[1] > close[2] and open > open[1] and open[1] > open[2] isBearsStrengthDecreasing = volume < volume[1] and volume[1] < volume[2] and close < close[1] and close[1] < close[2] and open < open[1] and open[1] < open[2] isStrongVolume = (volume > volume[1]) or isBullsStrengthDecreasing or isBearsStrengthDecreasing isSmallCandle = (high - low) < close * candleDivider isUptrendTrapping = isUptrend and close < open and isStrongVolume and isSmallCandle isDowntrendTrapping = isDowntrend and close > open and isStrongVolume and isSmallCandle plotshape(isUptrendTrapping, style=shape.triangleup, location=location.belowbar, color=color.green) plotshape(isDowntrendTrapping, style=shape.triangledown, location=location.abovebar, color=color.orange) // Signals longCondition = isUptrendTrapping if (longCondition) strategy.entry("Long", strategy.long) shortCondition = isDowntrendTrapping if (shortCondition) strategy.entry("Short", strategy.short) if open < close alert("Seller Trapped.", alert.freq_all) if close > open alert("Buyer Trapped.", alert.freq_all)