
Cette stratégie est un système de trading multidimensionnel qui combine le suivi des tendances, les indicateurs de dynamique et les arrêts de perte adaptatifs. La stratégie identifie la direction de la tendance du marché à l’aide de l’indicateur SuperTrend, et confirme les transactions en combinaison avec l’indicateur de dynamique RSI et le système de linéaire, et utilise l’indicateur de volatilité ATR pour la gestion dynamique des arrêts de perte. Cette méthode d’analyse multidimensionnelle permet de capturer efficacement les tendances du marché tout en contrôlant raisonnablement les risques.
La logique fondamentale de la stratégie repose sur les trois dimensions suivantes :
Les conditions d’achat doivent être remplies en même temps: SuperTrend bullish ((vert) + RSI < 65 + prix au-dessus de la moyenne périodique de 50 ◦ Conditions de vente: Placement de la position lorsque le SuperTrend est à la baisse. Gestion des pertes: tracez les pertes en utilisant un stop basé sur l’ATR, à 1,5 fois la distance d’arrêt de l’ATR.
La stratégie utilise un système de suivi de tendances, de dynamique et de linéaire, pour construire un système de négociation logiquement complet. L’avantage de la stratégie réside dans un mécanisme de confirmation de signal multidimensionnel et un système de contrôle du risque bien développé.
/*backtest
start: 2025-01-08 00:00:00
end: 2025-02-07 00:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Gladston_J_G
//@version=5
strategy("Trend Strategy with Stop Loss", overlay=true, margin_long=100, margin_short=100)
// ———— Inputs ———— //
atrLength = input(14, "ATR Length")
supertrendMultiplier = input(3.0, "Supertrend Multiplier")
rsiLength = input(14, "RSI Length")
maLength = input(50, "MA Length")
trailOffset = input(1.5, "Trailing Stop ATR Multiplier")
// ———— Indicators ———— //
// Supertrend for trend direction
[supertrend, direction] = ta.supertrend(supertrendMultiplier, atrLength)
// RSI for momentum filter
rsi = ta.rsi(close, rsiLength)
// Moving Average for trend confirmation
ma = ta.sma(close, maLength)
// ATR for volatility-based stop loss
atr = ta.atr(atrLength)
// ———— Strategy Logic ———— //
// Buy Signal: Supertrend bullish + RSI not overbought + Price above MA
buyCondition = direction < 0 and rsi < 65 and close > ma
// Sell Signal: Supertrend turns bearish
sellCondition = direction > 0
// ———— Stop Loss & Trailing ———— //
stopPrice = close - (atr * trailOffset)
var float trail = na
if buyCondition and strategy.position_size == 0
trail := stopPrice
else
trail := math.max(stopPrice, nz(trail[1]))
// ———— Execute Orders ———— //
strategy.entry("Long", strategy.long, when=buyCondition)
strategy.close("Long", when=sellCondition)
strategy.exit("Trail Exit", "Long", stop=trail)
// ———— Visuals ———— //
plot(supertrend, "Supertrend", color=direction < 0 ? color.green : color.red)
plot(ma, "MA", color=color.blue)
plot(strategy.position_size > 0 ? trail : na, "Trailing Stop", color=color.orange, style=plot.style_linebr)
// ———— Alerts ———— //
plotshape(buyCondition, "Buy", shape.triangleup, location.belowbar, color.green, size=size.small)
plotshape(sellCondition, "Sell", shape.triangledown, location.abovebar, color.red, size=size.small)
plot(close)