یہ حکمت عملی ایک رجحان پر عمل کرنے والا نظام ہے جو بولنگر بینڈ ، اتار چڑھاؤ کی پیمائش اور رسک مینجمنٹ کو جوڑتا ہے۔ یہ بولنگر بینڈ سے باہر قیمتوں کے وقفوں کی نگرانی کرکے رجحان کے مواقع کو حاصل کرتا ہے جبکہ خطرے کے عین مطابق کنٹرول کے لئے اے ٹی آر کا استعمال کرتے ہوئے پوزیشن کے سائز کو متحرک طور پر ایڈجسٹ کرتا ہے۔ اس حکمت عملی میں مستحکم مارکیٹوں میں غلط سگنلز کو مؤثر طریقے سے فلٹر کرنے کے لئے استحکام کی مدت کا پتہ لگانے کا طریقہ کار بھی شامل ہے۔
یہ حکمت عملی مندرجہ ذیل بنیادی منطق پر مبنی ہے: 1۔ بولنگر بینڈ کی درمیانی بینڈ کے طور پر 20 پیریڈ کی چلتی اوسط استعمال کرتا ہے ، جس میں اوپری اور نچلی بینڈ 2 معیاری انحراف پر ہیں۔ موجودہ بولنگر بینڈ کی چوڑائی کو اس کے چلتے ہوئے اوسط سے موازنہ کرکے مارکیٹ کنسولیڈیشن کے ادوار کی نشاندہی کرتا ہے۔ 3۔ غیر مستحکم کرنے کے دوران، اوپری بینڈ بریک آؤٹ پر طویل پوزیشنیں اور نچلی بینڈ بریک آؤٹ پر مختصر پوزیشنیں داخل کرتا ہے۔ 4۔ اسٹاپ نقصان کی سطحوں کا متحرک حساب کتاب کرنے کے لئے 14 پیریڈ اے ٹی آر کا استعمال کرتا ہے اور 2: 1 کے رسک - انعام تناسب کی بنیاد پر منافع لینے کی سطحوں کا تعین کرتا ہے۔ 5۔ ہر تجارت کے لئے پوزیشن سائز کا حساب 1٪ اکاؤنٹ رسک لیمپ اور اے ٹی آر ویلیو کی بنیاد پر خود بخود کرتا ہے۔
یہ حکمت عملی ایک جامع رسک کنٹرول سسٹم کو شامل کرتے ہوئے بولنگر بینڈ بریکآؤٹس کے ذریعے رجحانات کو حاصل کرتی ہے۔ اس کی طاقت اعلی موافقت اور کنٹرول شدہ خطرے میں ہے ، حالانکہ غلط بریکآؤٹس اور رجحان الٹ جانے کے خطرات پر توجہ دینی ہوگی۔ رجحان کی تصدیق کے اشارے شامل کرنے اور پیرامیٹر ایڈجسٹمنٹ کے طریقہ کار کو بہتر بنانے کے ذریعے اس حکمت عملی میں مزید بہتری کی گنجائش ہے۔ مجموعی طور پر ، یہ منطقی طور پر صحت مند اور عملی رجحان کی پیروی کرنے والی حکمت عملی کی نمائندگی کرتا ہے۔
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-08 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Bollinger Bands Breakout Strategy", overlay=true) // Input parameters length = input(20, title="Bollinger Bands Length") stdDev = input(2.0, title="Standard Deviation") riskRewardRatio = input(2.0, title="Risk/Reward Ratio") atrLength = input(14, title="ATR Length") riskPercentage = input(1.0, title="Risk Percentage per Trade") // Calculate Bollinger Bands basis = ta.sma(close, length) dev = stdDev * ta.stdev(close, length) upperBand = basis + dev lowerBand = basis - dev // Calculate ATR for position sizing atr = ta.atr(atrLength) // Plot Bollinger Bands plot(basis, color=color.blue, title="Basis") plot(upperBand, color=color.red, title="Upper Band") plot(lowerBand, color=color.green, title="Lower Band") // Market Consolidation Detection isConsolidating = (upperBand - lowerBand) < ta.sma(upperBand - lowerBand, length) * 0.5 // Breakout Conditions longCondition = ta.crossover(close, upperBand) and not isConsolidating shortCondition = ta.crossunder(close, lowerBand) and not isConsolidating // Risk Management: Calculate position size equity = strategy.equity riskAmount = equity * (riskPercentage / 100) positionSize = riskAmount / (atr * riskRewardRatio) // Execute trades with risk management if (longCondition) strategy.entry("Long", strategy.long, qty=positionSize) strategy.exit("Take Profit", from_entry="Long", limit=close + atr * riskRewardRatio, stop=close - atr) if (shortCondition) strategy.entry("Short", strategy.short, qty=positionSize) strategy.exit("Take Profit", from_entry="Short", limit=close - atr * riskRewardRatio, stop=close + atr) // Alert conditions for breakouts alertcondition(longCondition, title="Long Breakout", message="Long breakout detected!") alertcondition(shortCondition, title="Short Breakout", message="Short breakout detected!")