
यह रणनीति एक व्यापक ट्रेडिंग प्रणाली है जो पिवट पॉइंट रेफरेंस (सीपीआर), एक्सपोनेंशियल मूविंग एवरेज (ईएमए), रिलेटिव स्ट्रेंथ इंडेक्स (आरएसआई) और ब्रेकआउट लॉजिक को जोड़ती है। यह रणनीति एटीआर डायनेमिक ट्रैकिंग स्टॉप लॉस तंत्र को अपनाती है, कई तकनीकी संकेतकों के समन्वित सहयोग के माध्यम से बाजार के रुझान और व्यापारिक अवसरों की पहचान करती है, और गतिशील जोखिम प्रबंधन को साकार करती है। यह रणनीति इंट्राडे और मध्यम से अल्पावधि लेनदेन के लिए उपयुक्त है और इसमें मजबूत अनुकूलनशीलता और जोखिम नियंत्रण क्षमताएं हैं।
यह रणनीति निम्नलिखित मुख्य घटकों पर आधारित है:
यह रणनीति अनेक तकनीकी संकेतकों के तालमेल के माध्यम से एक अपेक्षाकृत पूर्ण व्यापार प्रणाली का निर्माण करती है। गतिशील स्टॉप-लॉस तंत्र और बहुआयामी सिग्नल पुष्टिकरण बेहतर जोखिम-वापसी विशेषताएं प्रदान करते हैं। रणनीति अनुकूलन की गुंजाइश मुख्य रूप से सिग्नल की गुणवत्ता में सुधार और जोखिम प्रबंधन को परिपूर्ण करने में निहित है। निरंतर अनुकूलन और समायोजन के माध्यम से, रणनीति से विभिन्न बाजार परिवेशों में स्थिर प्रदर्शन बनाए रखने की उम्मीद की जाती है।
/*backtest
start: 2024-12-06 00:00:00
end: 2025-01-04 08:00:00
period: 7h
basePeriod: 7h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=6
strategy("Enhanced CPR + EMA + RSI + Breakout Strategy", overlay=true)
// Inputs
ema_short = input(9, title="Short EMA Period")
ema_long = input(21, title="Long EMA Period")
cpr_lookback = input.timeframe("D", title="CPR Timeframe")
atr_multiplier = input.float(1.5, title="ATR Multiplier")
rsi_period = input(14, title="RSI Period")
rsi_overbought = input(70, title="RSI Overbought Level")
rsi_oversold = input(30, title="RSI Oversold Level")
breakout_buffer = input.float(0.001, title="Breakout Buffer (in %)")
// Calculate EMAs
short_ema = ta.ema(close, ema_short)
long_ema = ta.ema(close, ema_long)
// Request Daily Data for CPR Calculation
high_cpr = request.security(syminfo.tickerid, cpr_lookback, high)
low_cpr = request.security(syminfo.tickerid, cpr_lookback, low)
close_cpr = request.security(syminfo.tickerid, cpr_lookback, close)
// CPR Levels
pivot = (high_cpr + low_cpr + close_cpr) / 3
bc = (high_cpr + low_cpr) / 2
tc = pivot + (pivot - bc)
// ATR for Stop-Loss and Take-Profit
atr = ta.atr(14)
// RSI Calculation
rsi = ta.rsi(close, rsi_period)
// Entry Conditions with RSI Filter and Breakout Logic
long_condition = ((close > tc) and (ta.crossover(short_ema, long_ema)) and (rsi > 50 and rsi < rsi_overbought)) or (rsi > 80) or (close > (pivot + pivot * breakout_buffer))
short_condition = ((close < bc) and (ta.crossunder(short_ema, long_ema)) and (rsi < 50 and rsi > rsi_oversold)) or (rsi < 20) or (close < (pivot - pivot * breakout_buffer))
// Dynamic Exit Logic
long_exit = short_condition
short_exit = long_condition
// Trailing Stop-Loss Implementation
if long_condition
strategy.entry("Long", strategy.long)
strategy.exit("Exit Long", from_entry="Long",
trail_points=atr * atr_multiplier,
trail_offset=atr * atr_multiplier / 2)
if short_condition
strategy.entry("Short", strategy.short)
strategy.exit("Exit Short", from_entry="Short",
trail_points=atr * atr_multiplier,
trail_offset=atr * atr_multiplier / 2)
// Plot CPR Levels and EMAs
plot(pivot, title="Pivot Point", color=color.orange, linewidth=2)
plot(tc, title="Top CPR", color=color.green, linewidth=2)
plot(bc, title="Bottom CPR", color=color.red, linewidth=2)
plot(short_ema, title="Short EMA", color=color.blue, linewidth=1)
plot(long_ema, title="Long EMA", color=color.purple, linewidth=1)
// Highlight Buy and Sell Signals
bgcolor(long_condition ? color.new(color.green, 90) : na, title="Buy Signal Highlight")
bgcolor(short_condition ? color.new(color.red, 90) : na, title="Sell Signal Highlight")