La stratégie du double supertrend est une stratégie de trading quantitative qui intègre un système de double canal de Supertrend.
La stratégie du double SuperTrend est dérivée de l'indicateur SuperTrend. SuperTrend se compose de bandes supérieures et inférieures pour déterminer les tendances des prix et les niveaux de support / résistance clés. Le double SuperTrend construit deux canaux en haut: le canal de consolidation et le canal de rupture.
La stratégie calcule d'abord la plage réelle et la plage réelle moyenne. Elle calcule ensuite les bandes de base en fonction de la longueur et des paramètres du multiplicateur. Ensuite, elle construit le canal de rupture si le prix traverse les bandes de base. Le système à double canal est ainsi établi.
Dans le cadre de la structure à double canal, les signaux de négociation sont générés lorsque le prix traverse différents canaux:
La surveillance à deux canaux permet à la fois de suivre la tendance et de capturer l'inversion.
La stratégie Dual SuperTrend avec le système à double canal présente les avantages suivants:
La stratégie Dual SuperTrend comporte également les risques suivants:
Les risques peuvent être atténués en ajustant la plage de paramètres, en ajoutant des filtres, en contrôlant le dimensionnement des positions, etc.
La stratégie Dual SuperTrend peut être optimisée dans les aspects suivants:
Des optimisations supplémentaires peuvent améliorer l'ajustement des paramètres et l'analyse de marche vers l'avenir pour des performances plus robustes.
La stratégie Dual SuperTrend utilise le mécanisme à double canal pour suivre les tendances et capturer les inversions. Des stratégies de trading stables peuvent être développées grâce à l'optimisation des paramètres, mais des limitations existent. Des add-ons de contrôle des risques sont nécessaires.
/*backtest start: 2022-11-08 00:00:00 end: 2023-11-14 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy("Double Supertrend Strategy", overlay=true) // Define your parameters length = input(10, title="Length") multiplier = input(3, title="Multiplier") // Calculate the True Range and Average True Range trueRange = max(high - low, max(abs(high - close[1]), abs(low - close[1]))) averageTrueRange = sma(trueRange, length) // Calculate the basic upper and lower bands basicUpperBand = hl2 + (multiplier * averageTrueRange) basicLowerBand = hl2 - (multiplier * averageTrueRange) // Calculate the final upper and lower bands finalUpperBand = basicUpperBand finalLowerBand = basicLowerBand finalUpperBand := close[1] > finalUpperBand[1] ? max(basicUpperBand, finalUpperBand[1]) : basicUpperBand finalLowerBand := close[1] < finalLowerBand[1] ? min(basicLowerBand, finalLowerBand[1]) : basicLowerBand // Determine if we're currently in an uptrend or downtrend uptrend = close > finalLowerBand[1] downtrend = close < finalUpperBand[1] // Plot the bands plot(uptrend ? finalUpperBand : na, color=color.green, linewidth=2) plot(downtrend ? finalLowerBand : na, color=color.red, linewidth=2) // Define your conditions for entering and exiting trades if (uptrend) strategy.entry("Buy", strategy.long) else if (downtrend) strategy.entry("Sell", strategy.short)