
यह रणनीति एक पूर्ण ट्रेडिंग निर्णय लेने के लिए एक ढांचे का निर्माण करने के लिए कई तकनीकी संकेतकों के साथ एक प्रवृत्ति ट्रैकिंग प्रणाली है, जिसमें चलती औसत (ईएमए), अपेक्षाकृत मजबूत सूचक (आरएसआई), चलती औसत सामंजस्यपूर्ण विचलन सूचक (एमएसीडी) और ब्लिंडिंग बैंड (बीबी) शामिल हैं। यह रणनीति एक गतिशील जोखिम प्रबंधन पद्धति का उपयोग करती है, जिसमें प्रतिशत-आधारित स्टॉप-लॉस और जोखिम-आधारित स्टॉप-बैक-बैक-बैक सेटिंग शामिल है, जिसका उद्देश्य जोखिम-समायोजित रिटर्न के बाद स्थिर और स्वस्थ प्राप्त करना है।
इस रणनीति का मूल तर्क बहु-स्तरीय बाजार विश्लेषण पर आधारित हैः
इस रणनीति ने कई तकनीकी संकेतकों के एकीकृत उपयोग के माध्यम से एक पूर्ण प्रवृत्ति ट्रैकिंग ट्रेडिंग प्रणाली का निर्माण किया है। सख्त जोखिम प्रबंधन और बहुआयामी बाजार विश्लेषण के माध्यम से, रणनीति में अच्छी अनुकूलन क्षमता और स्थिरता है। हालांकि कुछ अनुकूलन के लिए जगह है, लेकिन समग्र ढांचा तर्कसंगत है और मध्यम और दीर्घकालिक व्यापार रणनीति के लिए उपयुक्त है। रणनीति के सफल कार्यान्वयन के लिए निरंतर निगरानी और विभिन्न बाजार स्थितियों के अनुकूल समय पर पैरामीटर समायोजन की आवश्यकता होती है।
/*backtest
start: 2025-01-10 00:00:00
end: 2025-02-09 00:00:00
period: 2h
basePeriod: 2h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Altcoin Long/Short Strategy", overlay=true, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=200, commission_type=strategy.commission.percent, commission_value=0.1)
// —————— Inputs ——————
emaFastLength = input.int(20, "Fast EMA")
emaSlowLength = input.int(50, "Slow EMA")
rsiLength = input.int(14, "RSI Length")
bbLength = input.int(20, "Bollinger Bands Length")
riskRewardRatio = input.float(1.5, "Risk/Reward Ratio")
stopLossPerc = input.float(2, "Stop Loss %") / 100
// —————— Indicators ——————
// Trend: EMAs
emaFast = ta.ema(close, emaFastLength)
emaSlow = ta.ema(close, emaSlowLength)
ema200 = ta.ema(close, 200)
// Momentum: RSI & MACD
rsi = ta.rsi(close, rsiLength)
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
// Volatility: Bollinger Bands
basis = ta.sma(close, bbLength)
dev = ta.stdev(close, bbLength)
upperBand = basis + 2 * dev
lowerBand = basis - 2 * dev
// —————— Strategy Logic ——————
// Long Conditions
longCondition =
close > ema200 and // Long-term bullish
ta.crossover(emaFast, emaSlow) and // EMA crossover
rsi > 50 and // Momentum rising
close > lowerBand and // Bounce from lower Bollinger Band
macdLine > signalLine // MACD bullish
// Short Conditions
shortCondition =
close < ema200 and // Long-term bearish
ta.crossunder(emaFast, emaSlow) and // EMA crossunder
rsi < 50 and // Momentum weakening
close < upperBand and // Rejection from upper Bollinger Band
macdLine < signalLine // MACD bearish
// —————— Risk Management ——————
stopLoss = strategy.position_avg_price * (1 - stopLossPerc)
takeProfit = strategy.position_avg_price * (1 + (riskRewardRatio * stopLossPerc))
// —————— Execute Trades ——————
if (longCondition)
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", "Long", stop=stopLoss, limit=takeProfit)
if (shortCondition)
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", "Short", stop=stopLoss, limit=takeProfit)
// —————— Plotting ——————
plot(emaFast, "Fast EMA", color=color.blue)
plot(emaSlow, "Slow EMA", color=color.orange)
plot(ema200, "200 EMA", color=color.gray)
plot(upperBand, "Upper Bollinger", color=color.red)
plot(lowerBand, "Lower Bollinger", color=color.green)