Cette stratégie est un système de trading basé sur la détermination de tendances moyennes mobiles et les fausses tendances de rupture de niveau de support. La stratégie utilise des moyennes mobiles simples de 50 périodes et 200 périodes pour déterminer les tendances du marché, combine les fausses tendances de rupture de niveau de support pour générer des signaux de trading, et utilise l'indicateur ATR (Average True Range) pour définir dynamiquement des positions stop-loss tout en fixant des objectifs de profit aux points de rupture. Cette stratégie utilise pleinement les caractéristiques de tendance du marché et les tendances de mouvement des prix pour saisir les opportunités de profit grâce à des rebonds après de fausses ruptures.
La logique de base de la stratégie comprend les éléments clés suivants:
La Multi-SMA Support Level False Breakout Strategy est un système de trading complet combinant les tendances suivantes et les modèles de prix. Grâce à la détermination des tendances à l'aide de systèmes de moyennes mobiles et à la reconnaissance des faux modèles de rupture au niveau du support, couplée à des stop-loss dynamiques ATR, elle construit une stratégie de trading contrôlable par le risque. Les principaux avantages de cette stratégie résident dans son processus d'exploitation systématique et ses méthodes de gestion des risques claires. Grâce à une optimisation et à une amélioration continues, la stratégie peut mieux s'adapter aux différents environnements du marché et améliorer les résultats commerciaux. Dans les applications de trading en direct, il est conseillé aux investisseurs d'ajuster les paramètres de stratégie en fonction de leur tolérance au risque et des caractéristiques du marché.
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-26 00:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("False Break Trading Strategy", overlay=true) // Define inputs for strategy parameters sma50Length = input.int(50, title="SMA 50 Length") sma200Length = input.int(200, title="SMA 200 Length") atrLength = input.int(14, title="ATR Length") lookbackPeriod = input.int(10, title="Swing High Lookback Period") // Calculate SMAs sma50 = ta.sma(close, sma50Length) sma200 = ta.sma(close, sma200Length) // Calculate ATR atr = ta.atr(atrLength) // Check if we are in an uptrend isUptrend = sma50 > sma200 // Calculate Pivot, Support, and Target Profit (Swing High) pivot = (high[1] + low[1] + close[1]) / 3 support = (2 * pivot) - high[1] swingHigh = ta.highest(high, lookbackPeriod) // Create signals for entry var float entryPrice = na var float stopLoss = na var float targetProfit = na longCondition = isUptrend and low[1] < support and close > support if (longCondition) entryPrice := open stopLoss := low - atr targetProfit := swingHigh // Plot signals and lines on chart plotshape(longCondition, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") // Plot levels for entry, stop loss, and target plot(entryPrice, title="Entry Price", color=color.blue, linewidth=2, style=plot.style_linebr) plot(stopLoss, title="Stop Loss", color=color.red, linewidth=2, style=plot.style_linebr) plot(targetProfit, title="Target Profit", color=color.green, linewidth=2, style=plot.style_linebr) // Backtest: Simulate exit points for the strategy if (longCondition) strategy.entry("Long", strategy.long) if (na(stopLoss) == false and na(targetProfit) == false) strategy.exit("Take Profit/Stop Loss", "Long", stop=stopLoss, limit=targetProfit)