یہ حکمت عملی بنیادی طور پر ایک مخصوص موم بتی کے پیٹرن کو پہچان کر مارکیٹ کے ممکنہ الٹ پوائنٹس کی نشاندہی کرنے کا ارادہ رکھتی ہے جسے پن بار کہا جاتا ہے۔ ایک پن بار ایک لمبے سایہ اور چھوٹے جسم کی خصوصیت رکھتا ہے ، جس سے اس قیمت کی سطح پر مارکیٹ میں نمایاں اتار چڑھاؤ ظاہر ہوتا ہے ، لیکن آخر کار قیمت پیچھے ہٹ جاتی ہے ، جس سے یہ ظاہر ہوتا ہے کہ سطح معاونت یا مزاحمت کے طور پر کام کرسکتی ہے۔ اس حکمت عملی میں موجودہ رجحان کی سمت کا تعین کرنے کے لئے 50 پیریڈ کا سادہ متحرک اوسط (ایس ایم اے) اور فلٹر کے طور پر حجم کا 20 پیریڈ ایس ایم اے استعمال کیا جاتا ہے ، جس کی ضرورت ہوتی ہے کہ حجم اس اوسط سے زیادہ ہو تاکہ پن بار سگنل کو درست سمجھا جاسکے۔ اس کے علاوہ ، رشتہ دار طاقت انڈیکس (آر ایس آئی) کا حساب لگایا جاتا ہے لیکن براہ راست انٹری / ایگزٹ شرائط میں استعمال نہیں ہوتا ہے ، اس کے بجائے اختیاری مزید حالت فلٹرنگ کے طور پر کام کرتا ہے۔
یہ پن بار الٹ کرنے کی حکمت عملی ایک آسان اور موثر نقطہ نظر کو استعمال کرتی ہے ، جس میں سگنل کی شناخت کی درستگی کو بہتر بنانے کے لئے رجحان فلٹرنگ اور حجم فلٹرنگ کا استعمال ہوتا ہے۔ اگرچہ بہتری کی گنجائش ہے ، لیکن مجموعی طور پر تصور قابل عمل ہے اور مزید اصلاح اور جانچ کے قابل ہے۔ کلاسیکی قیمت کے نمونہ کے طور پر ، پن بار کو دوسرے اشارے یا سگنلز کے ساتھ بھی ملایا جاسکتا ہے تاکہ زیادہ مضبوط تجارتی نظام حاصل کیا جاسکے۔
/*backtest start: 2024-05-01 00:00:00 end: 2024-05-31 23:59:59 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Filtered Pin Bar Strategy with Relaxed Volume", overlay=true) // Define the size of the pin bar's wick and body wickSize = 0.6 bodySize = 0.3 // Calculate the size of the wicks and body upperWick = high - math.max(open, close) lowerWick = math.min(open, close) - low body = math.abs(close - open) // Define a simple moving average to determine the trend smaLength = 50 sma = ta.sma(close, smaLength) // Define a more relaxed volume threshold volumeThreshold = ta.sma(volume, 20) * 1.0 // Define RSI parameters rsiLength = 14 rsiOverbought = 70 rsiOversold = 30 rsi = ta.rsi(close, rsiLength) // Define the conditions for a bullish pin bar bullishPinBar = (lowerWick > (wickSize * (high - low))) and (body < (bodySize * (high - low))) and (close > open) and (close > sma) and (volume > volumeThreshold) // Define the conditions for a bearish pin bar bearishPinBar = (upperWick > (wickSize * (high - low))) and (body < (bodySize * (high - low))) and (close < open) and (close < sma) and (volume > volumeThreshold) // Plot the bullish and bearish pin bars on the chart plotshape(series=bullishPinBar, title="Bullish Pin Bar", location=location.belowbar, color=color.green, style=shape.labelup, text="PB") plotshape(series=bearishPinBar, title="Bearish Pin Bar", location=location.abovebar, color=color.red, style=shape.labeldown, text="PB") // Entry and exit rules if (bullishPinBar) strategy.entry("Bullish Pin Bar", strategy.long) if (bearishPinBar) strategy.entry("Bearish Pin Bar", strategy.short) // Optional: Set stop loss and take profit stopLoss = 2 * body takeProfit = 3 * body strategy.exit("Exit Long", from_entry="Bullish Pin Bar", stop=low - stopLoss, limit=high + takeProfit) strategy.exit("Exit Short", from_entry="Bearish Pin Bar", stop=high + stopLoss, limit=low - takeProfit)