
Cette stratégie est une stratégie de trading d’actions de gestion du risque dynamique à plusieurs facteurs de suivi de la tendance, qui vise à améliorer l’exactitude des signaux de trading et la performance globale de la stratégie grâce à l’utilisation intégrée de plusieurs indicateurs techniques. La stratégie est centrée sur le jugement des tendances, la confirmation de la dynamique, le filtrage de la volatilité et le contrôle du risque, offrant aux investisseurs une méthode de trading systématique.
La stratégie est basée sur une analyse globale de six indicateurs clés:
Cette stratégie a permis de construire un système de négociation d’actions relativement robuste grâce à la vérification de signaux de négociation multifactoriels et multidimensionnels. Son avantage central réside dans la réduction des risques de négociation, mais nécessite une optimisation continue et une adaptation aux changements du marché.
/*backtest
start: 2024-03-31 00:00:00
end: 2025-03-29 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"ETH_USDT"}]
*/
//@version=5
strategy("G-Channel Strategy for Stocks", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=10)
// === 1️⃣ G-Channel Indicator ===
gChannel = ta.ema(close, 20) > ta.ema(close, 50) ? 1 : 0
// === 2️⃣ Fantel VMA Confirmation ===
fvma = ta.sma(close, 14) > ta.sma(close, 28) ? 1 : 0
// === 3️⃣ Coral Trend Confirmation ===
coral = ta.sma(close, 10) > ta.sma(close, 20) ? 1 : 0
// === 4️⃣ ADX Confirmation (Volatility) ===
adx = ta.ema(ta.rma(ta.atr(14), 14), 14)
adxMa = ta.sma(adx, 14)
adxConfirmed = adx > adxMa ? 1 : 0
// === 5️⃣ Volume Confirmation ===
volConfirm = volume > ta.sma(volume, 20) * 1.3 ? 1 : 0
// === 6️⃣ Price Above 50-Day SMA ===
sma50 = ta.sma(close, 50)
priceAboveSMA = close > sma50 ? 1 : 0
// === 📌 ENTRY CONDITIONS (LONG & SHORT) ===
longCondition = gChannel and fvma and coral and adxConfirmed and volConfirm and priceAboveSMA
shortCondition = not gChannel and not fvma and not coral and adxConfirmed and volConfirm and close < sma50
// === 7️⃣ ATR Stop-Loss (Lower Than Crypto) ===
atr = ta.atr(14)
stopLoss = close - (atr * 2.0) // Adjusted for stocks
takeProfit = close + (atr * 4.0) // 2:1 Risk/Reward Ratio
// === 📌 EXECUTE TRADES ===
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Take Profit", from_entry="Long", limit=takeProfit, stop=stopLoss)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Take Profit", from_entry="Short", limit=close - (atr * 4.0), stop=close + (atr * 2.0))
// === 8️⃣ RSI EXIT (Stocks Exit Earlier) ===
rsi = ta.rsi(close, 14)
if (rsi > 75) // Lower exit threshold for stocks
strategy.close("Long")
if (rsi < 25)
strategy.close("Short")
// === 9️⃣ Volume-Based Exit ===
if (volume < ta.sma(volume, 20) * 0.5)
strategy.close("Long")
strategy.close("Short")