
یہ حکمت عملی بنیادی طور پر پچھلے تجارتی دن کی اعلی ترین قیمت ، کم قیمت اور اختتامی قیمت کو اس دن کی حمایت اور مزاحمت کی حیثیت سے استعمال کرتی ہے ، مزاحمت کی سطح کو توڑنے پر زیادہ کام کرتی ہے ، اور معاونت کی جانچ پڑتال کے وقت خالی ہوجاتی ہے ، جو ایک عام توڑنے کی حکمت عملی ہے۔
کوڈ سب سے پہلے ایک فنکشن کی وضاحت کرتا ہے جس میں سپورٹ مزاحمت کی سطح کا حساب لگایا جاتا ہے. یہ فنکشن پچھلے دن کی اعلی ترین ، کم ترین اور اختتامی قیمتوں کو اس دن کی سپورٹ مزاحمت کی سطح کے طور پر نکالتا ہے۔
اس کے بعد اس فنکشن کو مرکزی منطق میں بلایا جاتا ہے تاکہ ان تینوں قیمتوں کو حاصل کیا جاسکے اور یہ نقشہ ظاہر کیا جاسکے۔
ریٹرننگ منطق میں ، اگر اختتامی قیمت پچھلے دن کی کم ترین قیمت سے کم ہے اور موجودہ قیمت اس کم قیمت سے زیادہ ہے تو اس میں ایک بریک اپ ہوتا ہے ، اور اگر اختتامی قیمت پچھلے دن کی اعلی ترین قیمت سے زیادہ ہے اور موجودہ قیمت اس اعلی قیمت سے کم ہے تو اس میں ایک بریک اپ ہوتا ہے ، تو اس میں کوئی فرق نہیں پڑتا ہے۔
اس طرح کے ایک اہم ماڈل کے ذریعے رجحانات کا فیصلہ اور تجارتی سگنل پیدا کرنے کے لئے.
ردعمل:
یہ حکمت عملی مجموعی طور پر ایک عام بریک آؤٹ حکمت عملی ہے ، جو سادہ اور بدیہی ہے ، جس میں پچھلے تجارتی دن کے اعداد و شمار کے ذریعہ اس دن کی حمایت کی مزاحمت کی تعمیر کی گئی ہے ، اور اس مقام کو توڑنے کے لئے بہت زیادہ کام کیا گیا ہے۔ اس کی خوبی یہ ہے کہ اس کی تکمیل کو سمجھنا آسان ہے ، جس سے معاون مزاحمت کو براہ راست دیکھا جاسکتا ہے۔ اس کی خرابی یہ ہے کہ جھوٹے بریک آؤٹ کا خطرہ موجود ہے ، جس سے رجحان کی تسلسل کا تعین نہیں کیا جاسکتا ہے۔ اگلے مرحلے میں بریک آؤٹ کی تاثیر کا تعین کرنے ، خطرے پر قابو پانے ، فنڈ مینجمنٹ کو بہتر بنانے وغیرہ سے اصلاح کی جاسکتی ہے۔
/*backtest
start: 2024-01-22 00:00:00
end: 2024-02-21 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Support and Resistance with Backtesting", overlay=true)
// Function to calculate support and resistance levels
calculateSupportResistance() =>
highPrevDay = request.security(syminfo.tickerid, "D", high[1], lookahead=barmerge.lookahead_on)
lowPrevDay = request.security(syminfo.tickerid, "D", low[1], lookahead=barmerge.lookahead_on)
closePrevDay = request.security(syminfo.tickerid, "D", close[1], lookahead=barmerge.lookahead_on)
[highPrevDay, lowPrevDay, closePrevDay]
// Call the function to get support and resistance levels
[supResHigh, supResLow, supResClose] = calculateSupportResistance()
// Plotting support and resistance levels
plot(supResHigh, color=color.red, linewidth=2, title="Previous Day High")
plot(supResLow, color=color.green, linewidth=2, title="Previous Day Low")
plot(supResClose, color=color.blue, linewidth=2, title="Previous Day Close")
// Backtesting logic
backtestCondition = close[1] < supResLow and close > supResLow
strategy.entry("Long", strategy.long, when=backtestCondition)
// Plotting buy/sell arrows for backtesting
plotarrow(backtestCondition ? 1 : na, colorup=color.green, offset=-1, transp=0)