
La stratégie est un système de trading automatisé basé sur une période de 5 minutes qui combine des méthodes de suivi de tendance de moyenne mobile et d’analyse du volume. La stratégie utilise une moyenne mobile simple (SMA) sur 50 périodes pour déterminer les tendances du marché et introduit une analyse du volume pour vérifier la validité des signaux de trading. Le système utilise des objectifs de stop loss et de profit fixes pour réaliser un trading entièrement automatisé.
La logique fondamentale de la stratégie comprend les éléments clés suivants :
Cette stratégie construit un système de trading haute fréquence complet en combinant le suivi des tendances et l’analyse du volume. Les principaux avantages de la stratégie résident dans son mécanisme de confirmation du signal multidimensionnel et son système de contrôle des risques parfait. Bien qu’il existe certains risques inhérents, la stabilité et l’adaptabilité de la stratégie peuvent être encore améliorées grâce aux orientations d’optimisation proposées. La stratégie est particulièrement adaptée pour opérer dans un environnement de marché avec des tendances claires et devrait permettre d’obtenir des résultats de trading stables grâce à une optimisation raisonnable des paramètres et à une gestion des risques.
/*backtest
start: 2024-01-10 00:00:00
end: 2025-01-08 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT","balance":49999}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Jerryorange
//@version=6
//@version=6
strategy("Autonomous 5-Minute Robot", overlay=true, fill_orders_on_standard_ohlc=true)
// --- Inputs ---
maLength = input.int(50, title="Trend MA Length") // Moving average length for trend detection
volumeLength = input.int(10, title="Volume Length") // Length for volume analysis
stopLossPercent = input.float(3, title="Stop Loss (%)") // 3% stop loss
takeProfitPercent = input.float(29, title="Take Profit (%)") // 29% take profit
// --- Market Trend Detection ---
ma = ta.sma(close, maLength) // Simple moving average for trend direction
isBullish = close > ma // Market is bullish if the close is above the moving average
isBearish = close < ma // Market is bearish if the close is below the moving average
// --- Volume Analysis ---
buyVolume = (high != low) ? volume * (close - low) / (high - low) : 0
sellVolume = (high != low) ? volume * (high - close) / (high - low) : 0
totalVolume = volume
// --- Define Market Direction over Last 30 Minutes (6 candles in 5-minute chart) ---
lookback = 6 // 30 minutes / 5 minutes = 6 bars
prevClose = close[lookback] // Previous close 30 minutes ago
currentClose = close // Current close
uptrend = currentClose > prevClose and isBullish // Uptrend condition
downtrend = currentClose < prevClose and isBearish // Downtrend condition
// --- Strategy Logic ---
longCondition = uptrend and buyVolume > sellVolume // Buy signal when trend is up and buy volume exceeds sell volume
shortCondition = downtrend and sellVolume > buyVolume // Sell signal when trend is down and sell volume exceeds buy volume
// --- Entry and Exit Strategy ---
if (longCondition)
strategy.entry("Long", strategy.long)
if (shortCondition)
strategy.entry("Short", strategy.short)
// --- Exit Strategy based on Stop Loss and Take Profit ---
strategy.exit("Exit Long", "Long", stop=close * (1 - stopLossPercent / 100), limit=close * (1 + takeProfitPercent / 100))
strategy.exit("Exit Short", "Short", stop=close * (1 + stopLossPercent / 100), limit=close * (1 - takeProfitPercent / 100))
// --- Plotting for Visualization ---
plot(ma, color=color.blue, title="50-period MA") // Trend line
plotshape(longCondition, style=shape.labelup, location=location.belowbar, color=color.green, text="BUY")
plotshape(shortCondition, style=shape.labeldown, location=location.abovebar, color=color.red, text="SELL")