
यह रणनीति एक ट्रेडिंग प्रणाली है जो कई समय चक्र विश्लेषण पर आधारित है और मुख्य रूप से केंद्रीय मूल्य सीमा (सीपीआर), सूचकांक चलती औसत (ईएमए) और अपेक्षाकृत मजबूत सूचक (आरएसआई) का उपयोग करके व्यापार करती है। यह रणनीति बाजार की प्रवृत्ति और महत्वपूर्ण समर्थन प्रतिरोधों की पहचान करती है, जो कि दैनिक सीपीआर स्तर, साप्ताहिक उद्घाटन मूल्य और 20 चक्र ईएमए के माध्यम से होती है, और व्यापार को निष्पादित करने के लिए संश्लेषित मात्रा की पुष्टि करती है।
सीपीआर में एक धुरी बिंदु (पीवोट), एक निचला केंद्र रेखा (बीसी) और एक ऊपरी केंद्र रेखा (टीसी) शामिल है। जब कीमत टीसी को तोड़ती है और बाजार एक बहु-हेड चरण में होता है, तो सिस्टम एक बहु-संकेत देता है; जब कीमत बीसी को तोड़ती है और बाजार एक रिक्त चरण में होता है, तो सिस्टम एक रिक्त संकेत देता है। सिस्टम ट्रेंड फिल्टर के रूप में 20 चक्र ईएमए का भी उपयोग करता है, और 20 चक्रों में उच्च लेनदेन की आवश्यकता होती है। इसके अलावा, रणनीति वैकल्पिक रूप से आरएसआई विचलन को अतिरिक्त पुष्टिकरण के रूप में उपयोग करती है।
यह एक पूरी तरह से संरचित, तर्कसंगत और स्पष्ट प्रवृत्ति ट्रैकिंग रणनीति है, जो कई तकनीकी संकेतकों के संयोजन के उपयोग के माध्यम से व्यापार जोखिम को प्रभावी ढंग से नियंत्रित करती है। रणनीति का मुख्य लाभ इसकी लचीली पैरामीटर सेटिंग और एक अच्छी तरह से विकसित जोखिम प्रबंधन तंत्र में है, लेकिन व्यापारियों को बाजार की स्थिति में बदलावों पर ध्यान देने और समय पर रणनीति पैरामीटर को समायोजित करने की भी आवश्यकता होती है। अनुशंसित अनुकूलन दिशा के माध्यम से, रणनीति की स्थिरता और लाभप्रदता को और बढ़ाने की उम्मीद है।
//@version=5
strategy("Ahmad Ali Khan CPR Strategy", overlay=true, margin_long=100, margin_short=100)
// ———— Inputs ————
use_daily_cpr = input.bool(true, "Use Daily CPR Levels")
ema_length = input.int(20, "EMA Trend Filter Length")
show_week_open = input.bool(true, "Show Weekly Open Price")
enable_divergence = input.bool(true, "Enable RSI Divergence Check")
// ———— Daily CPR Calculation ————
daily_high = request.security(syminfo.tickerid, "D", high[1], lookahead=barmerge.lookahead_on)
daily_low = request.security(syminfo.tickerid, "D", low[1], lookahead=barmerge.lookahead_on)
daily_close = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on)
pivot = (daily_high + daily_low + daily_close) / 3
bc = (daily_high + daily_low) / 2
tc = pivot + (pivot - bc)
// ———— Weekly Open Price ————
weekly_open = request.security(syminfo.tickerid, "W", open, lookahead=barmerge.lookahead_on)
// ———— Trend Analysis ————
ema_trend = ta.ema(close, ema_length)
market_phase = close > ema_trend ? "Bullish" : "Bearish"
// ———— Momentum Confirmation ————
rsi_length = 14
rsi = ta.rsi(close, rsi_length)
bullish_div = ta.valuewhen(ta.crossover(rsi, 30), low, 0) > ta.valuewhen(ta.crossover(rsi, 30), low, 1)
bearish_div = ta.valuewhen(ta.crossunder(rsi, 70), high, 0) < ta.valuewhen(ta.crossunder(rsi, 70), high, 1)
// ———— Plotting ————
// CPR Levels
plot(pivot, "Pivot", color=color.blue, linewidth=2)
plot(bc, "BC", color=color.red, linewidth=2)
plot(tc, "TC", color=color.green, linewidth=2)
fill(plot(bc), plot(tc), color=color.new(color.purple, 90))
// Weekly Open
plot(show_week_open ? weekly_open : na, "Weekly Open", color=color.orange, linewidth=2)
// EMA Trend
plot(ema_trend, "EMA Trend", color=color.white, linewidth=2)
// ———— Strategy Logic ————
long_condition =
close > tc and
market_phase == "Bullish" and
(not enable_divergence or bullish_div) and
volume > ta.sma(volume, 20)
short_condition =
close < bc and
market_phase == "Bearish" and
(not enable_divergence or bearish_div) and
volume > ta.sma(volume, 20)
// ———— Risk Management ————
cpr_width = tc - bc
stop_loss_long = bc - (0.5 * cpr_width)
take_profit_long = tc + (1.5 * cpr_width)
stop_loss_short = tc + (0.5 * cpr_width)
take_profit_short = bc - (1.5 * cpr_width)
// ———— Execute Orders ————
if long_condition
strategy.entry("Long", strategy.long)
strategy.exit("XL", "Long", stop=stop_loss_long, limit=take_profit_long)
if short_condition
strategy.entry("Short", strategy.short)
strategy.exit("XS", "Short", stop=stop_loss_short, limit=take_profit_short)
// ———— Signal Plotting ————
plotshape(long_condition, "Buy", shape.labelup, location.belowbar, color=color.green, text="BUY", textcolor=color.white)
plotshape(short_condition, "Sell", shape.labeldown, location.abovebar, color=color.red, text="SELL", textcolor=color.white)