
यह रणनीति बाजार में अल्पकालिक उतार-चढ़ाव के अवसरों को पकड़ने के लिए गतिशीलता संकेतकों, रुझान संकेतकों और अस्थिरता संकेतकों के संयोजन के साथ कई तकनीकी संकेतकों पर आधारित एक एकीकृत ट्रेडिंग प्रणाली है। यह रणनीति MACD क्रॉस सिग्नल, ईएमए ट्रेंड कन्फर्मेशन, आरएसआई ओवरबॉय ओवरसोल स्थितियों और एडीएक्स ट्रेंड स्ट्रेंथ फ़िल्टरिंग के माध्यम से ट्रेडिंग अवसरों की पहचान करती है और एटीआर-आधारित गतिशील स्टॉप लॉस स्टॉप का उपयोग करके जोखिम का प्रबंधन करती है।
रणनीति का मूल तर्क निम्नलिखित प्रमुख घटकों पर आधारित है:
इस रणनीति में कई तकनीकी संकेतकों के एकीकृत उपयोग के माध्यम से एक पूर्ण व्यापार प्रणाली का निर्माण किया गया है। हालांकि कुछ पिछड़ेपन और पैरामीटर अनुकूलन की चुनौतियों के बावजूद, उचित जोखिम प्रबंधन और निरंतर अनुकूलन के माध्यम से, रणनीति बेहतर अनुकूलन और विश्वसनीयता का प्रदर्शन करती है। व्यापारियों को सलाह दी जाती है कि वे वास्तविक उपयोग से पहले पर्याप्त प्रतिक्रिया और पैरामीटर अनुकूलन करें।
/*backtest
start: 2024-02-18 00:00:00
end: 2025-02-16 08:00:00
period: 3h
basePeriod: 3h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Optimized Impulse Wave Strategy", overlay=true)
// === INPUT PARAMETERS ===
fast_length = input(12, title="MACD Fast Length")
slow_length = input(26, title="MACD Slow Length")
signal_smoothing = input(9, title="MACD Signal Smoothing")
ema_length = input(200, title="EMA Length")
rsi_length = input(14, title="RSI Length")
adx_length = input(14, title="ADX Length")
adx_smoothing = input(14, title="ADX Smoothing")
atr_length = input(14, title="ATR Length")
risk_reward_ratio = input(2, title="Risk-Reward Ratio")
adx_threshold = input(20, title="ADX Threshold")
// === INDICATORS ===
[macdLine, signalLine, _] = ta.macd(close, fast_length, slow_length, signal_smoothing)
ema = ta.ema(close, ema_length)
rsi = ta.rsi(close, rsi_length)
[dmiPlus, dmiMinus, adx] = ta.dmi(adx_length, adx_smoothing)
// === ENTRY CONDITIONS ===
bullishTrend = ta.crossover(macdLine, signalLine) and close > ema and adx > adx_threshold and rsi > 50
bearishTrend = ta.crossunder(macdLine, signalLine) and close < ema and adx > adx_threshold and rsi < 50
// === STOP-LOSS & TAKE-PROFIT CALCULATION ===
longStopLoss = close - ta.atr(atr_length) * 1.5
longTakeProfit = close + (ta.atr(atr_length) * 1.5 * risk_reward_ratio)
shortStopLoss = close + ta.atr(atr_length) * 1.5
shortTakeProfit = close - (ta.atr(atr_length) * 1.5 * risk_reward_ratio)
// === STRATEGY EXECUTION ===
// Enter Long
if bullishTrend
strategy.entry("Long", strategy.long)
strategy.exit("TakeProfitLong", from_entry="Long", limit=longTakeProfit, stop=longStopLoss)
// Enter Short
if bearishTrend
strategy.entry("Short", strategy.short)
strategy.exit("TakeProfitShort", from_entry="Short", limit=shortTakeProfit, stop=shortStopLoss)
// === PLOTTING ===
plot(ema, title="EMA 200", color=color.blue, linewidth=2)
plotshape(series=bullishTrend, location=location.belowbar, color=color.green, size=size.small, title="Buy Signal")
plotshape(series=bearishTrend, location=location.abovebar, color=color.red, size=size.small, title="Sell Signal")
// === ALERTS ===
alertcondition(bullishTrend, title="Bullish Entry", message="Buy Signal Triggered!")
alertcondition(bearishTrend, title="Bearish Entry", message="Sell Signal Triggered!")
// === DEBUGGING LOG ===
label.new(bar_index, high, "ADX: " + str.tostring(adx), color=color.white, textcolor=color.black)
label.new(bar_index, low, "MACD Cross: " + str.tostring(macdLine), color=color.white, textcolor=color.black)