
یہ حکمت عملی ایک اعلی تعدد ٹریڈنگ سسٹم ہے جو ایک سے زیادہ تکنیکی اشارے پر مبنی ہے ، جس میں 5 منٹ کے ٹائم فریم کا استعمال کیا جاتا ہے ، جس میں یکساں لکیری نظام ، متحرک اشارے اور حجم تجزیہ شامل ہے۔ حکمت عملی مارکیٹ میں اتار چڑھاؤ کو متحرک طور پر ایڈجسٹ کرنے کے طریقوں سے اپناتی ہے ، جس میں تجارت کی درستگی اور وشوسنییتا کو بڑھانے کے لئے متعدد سگنل کی تصدیق کا استعمال کیا جاتا ہے۔ حکمت عملی کا مرکز قلیل مدتی مارکیٹ کے رجحانات کو پکڑنے کے لئے کثیر جہتی تکنیکی اشارے کے مجموعے کے ذریعہ ہے ، جبکہ متحرک اسٹاپ نقصان کو خطرے پر قابو پانے کے لئے استعمال کیا جاتا ہے۔
اس حکمت عملی میں ڈبل میڈین لائن سسٹم ((9 سیکنڈ اور 21 سیکنڈ ای ایم اے) کو اہم رجحانات کا تعین کرنے کے لئے استعمال کیا جاتا ہے ، اور آر ایس آئی کے ساتھ مل کر حرکت پذیری کی تصدیق کی جاتی ہے۔ جب قیمت ڈبل میڈین لائن سے اوپر ہوتی ہے اور آر ایس آئی 40-65 کی حد میں ہوتا ہے تو ، سسٹم زیادہ مواقع کی تلاش کرتا ہے۔ جب قیمت ڈبل میڈین لائن سے نیچے ہوتی ہے اور آر ایس آئی 35-60 کی حد میں ہوتا ہے تو ، سسٹم خالی مواقع کی تلاش کرتا ہے۔ اس کے علاوہ ، اس حکمت عملی میں لین دین کی تصدیق کا طریقہ کار متعارف کرایا گیا ہے ، جس میں موجودہ لین دین کی ضرورت ہوتی ہے جو 20 سیکنڈ کی اوسط لین دین سے 1.2 گنا زیادہ ہو۔
اس حکمت عملی نے متعدد تکنیکی اشارے کے مجموعی استعمال کے ذریعے ایک نسبتا complete مکمل تجارتی نظام تشکیل دیا ہے۔ اس حکمت عملی کا فائدہ اس کے کثیر جہتی سگنل کی تصدیق کے طریقہ کار اور متحرک خطرے سے نمٹنے کے طریقہ کار میں ہے۔ اگرچہ کچھ ممکنہ خطرات موجود ہیں ، لیکن معقول پیرامیٹرز کی اصلاح اور خطرے کے انتظام کے ساتھ ، اس حکمت عملی میں ابھی بھی بہتر اطلاق کی قیمت ہے۔ یہ مشورہ دیا جاتا ہے کہ تاجر اس کے عملی استعمال سے پہلے کافی حد تک ریٹرننگ کریں اور مارکیٹ کی مخصوص صورتحال کے مطابق مناسب پیرامیٹرز کو ایڈجسٹ کریں۔
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-27 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Optimized Nifty MidCap Select Options 5-min Intraday Strategy", overlay=true)
// Parameters
emaShortPeriod = input.int(9, title="Short EMA")
emaLongPeriod = input.int(21, title="Long EMA")
rsiPeriod = input.int(14, title="RSI Period")
rsiOverbought = input.int(65, title="RSI Overbought Level") // More conservative than 70
rsiOversold = input.int(35, title="RSI Oversold Level") // More conservative than 30
atrLength = input.int(14, title="ATR Length")
atrMultiplier = input.float(1.5, title="ATR Multiplier")
volumeMultiplier = input.float(1.2, title="Volume Multiplier") // For confirming high-volume trades
// EMA Calculation
emaShort = ta.ema(close, emaShortPeriod)
emaLong = ta.ema(close, emaLongPeriod)
// RSI Calculation
rsiValue = ta.rsi(close, rsiPeriod)
// ATR Calculation
atrValue = ta.atr(atrLength)
// VWAP Calculation
vwapValue = ta.vwap(close)
// Volume Check
volumeCondition = volume > ta.sma(volume, 20) * volumeMultiplier
// Define long and short conditions
// Long Condition:
// Price above both EMAs, RSI not overbought, price above VWAP, and high volume
longCondition = (close > emaShort) and (close > emaLong) and (rsiValue > 40 and rsiValue < rsiOverbought) and (close > vwapValue) and volumeCondition
// Short Condition:
// Price below both EMAs, RSI not oversold, price below VWAP, and high volume
shortCondition = (close < emaShort) and (close < emaLong) and (rsiValue < 60 and rsiValue > rsiOversold) and (close < vwapValue) and volumeCondition
// Entry logic
if (longCondition)
strategy.entry("Buy Call", strategy.long)
if (shortCondition)
strategy.entry("Buy Put", strategy.short)
// Dynamic Take Profit and Stop Loss based on ATR
takeProfitLevel = strategy.position_avg_price * (1 + atrValue * atrMultiplier / 100)
stopLossLevel = strategy.position_avg_price * (1 - atrValue * atrMultiplier / 100)
// Exit strategy based on ATR levels
strategy.exit("Take Profit/Stop Loss", from_entry="Buy Call", limit=takeProfitLevel, stop=stopLossLevel)
strategy.exit("Take Profit/Stop Loss", from_entry="Buy Put", limit=takeProfitLevel, stop=stopLossLevel)
// Plotting indicators
plot(emaShort, title="9 EMA", color=color.blue)
plot(emaLong, title="21 EMA", color=color.red)
hline(rsiOverbought, "RSI Overbought", color=color.red)
hline(rsiOversold, "RSI Oversold", color=color.green)
plot(vwapValue, title="VWAP", color=color.purple)