یہ حکمت عملی بولنگر بینڈز اشارے پر مبنی ہے۔ جب قیمت نچلے بینڈ سے اوپر ٹوٹ جاتی ہے تو یہ طویل ہوجاتی ہے اور جب قیمت اوپری بینڈ کو چھوتی ہے تو پوزیشن بند ہوجاتی ہے۔ یہ حکمت عملی کم خریدنے اور زیادہ فروخت کرنے کے لئے غیر معمولی قیمت کے وقفے کو ٹریک کرنے کے لئے بولنگر بینڈ کے حراست کے اصول کا استعمال کرتی ہے۔
درمیانی بینڈ ایس ایم اے کا حساب حالیہ اختتامی قیمتوں کی سادہ چلتی اوسط کے طور پر لگایا جائے۔
معیاری انحراف StdDev کا حساب قیمتوں میں اتار چڑھاؤ کی حد کو ظاہر کرنے کے لیے لگائیں۔
اوپری بینڈ حاصل کرنے کے لئے درمیانی بینڈ SMA میں معیاری انحراف کا اوپری آفسیٹ شامل کریں۔
کم بینڈ حاصل کرنے کے لئے درمیانی بینڈ SMA سے معیاری انحراف کا نیچے کا آفسیٹ گھٹائیں۔
جب اختتامی قیمت نیچے سے اوپر کی کم بینڈ سے اوپر ہوتی ہے تو طویل سفر کریں۔
جب قیمت اوپری بینڈ کو چھوتی ہے تو پوزیشن بند کریں، کیونکہ قیمت غیر معمولی سمجھا جاتا ہے۔
اس حکمت عملی کا سب سے بڑا فائدہ یہ ہے کہ غیر معمولی مارکیٹ میں اتار چڑھاؤ اور رجحانات کو مؤثر طریقے سے ٹریک کرنے کے لئے بولنگر بینڈ کی شماریاتی خصوصیات کا استعمال کیا جاتا ہے۔ باقاعدہ حرکت پذیر اوسط حکمت عملی کے مقابلے میں ، بولنگر بینڈ کی حکمت عملی میں مزید فوائد ہیں:
بولنگر بینڈ اوپر اور نیچے کی بینڈ خود بخود مارکیٹ کی اتار چڑھاؤ کے مطابق ڈھال سکتے ہیں.
توڑنے کے سگنل داخلہ کے لئے زیادہ قابل اعتماد ہیں.
منافع حاصل کرنے کے لئے معنی کی واپسی معقول ہے۔
مختلف مارکیٹوں میں ایڈجسٹ کرنے کے لئے پیرامیٹرز کو ایڈجسٹ کرنے کے لئے بہت بڑی جگہ.
درمیانی اور طویل مدتی رجحانات کو پکڑ سکتا ہے اور مختصر مدت کے لئے بھی استعمال کیا جا سکتا ہے.
اس حکمت عملی کے ممکنہ خطرات بنیادی طور پر ہیں:
رینج سے منسلک مارکیٹوں میں بولنگر بینڈ کی ناقص کارکردگی، غلط اندراجات سے بچیں.
بریک آؤٹ سگنل غلط بریک آؤٹ ہو سکتے ہیں، محتاط فیصلوں کی ضرورت ہوتی ہے.
منافع لینے کی پوزیشن بہت مثالی ہے، اصل قیمت کی کارروائی کے لئے بہتر بنایا جا سکتا ہے.
پیرامیٹرز کی غلط ترتیب سے زیادہ تجارت یا زیادہ تحفظ پیدا ہوسکتا ہے۔
بیک ٹسٹ کی مدت کافی لمبی ہونی چاہئے تاکہ منحنی فٹنگ سے بچ سکے۔
متعلقہ رسک مینجمنٹ اقدامات:
سگنلز کو فلٹر کرنے کے لئے تجارتی حجم کے اشارے شامل کریں.
مختلف مارکیٹوں سے پیرامیٹرز اور ٹیسٹ کے اعداد و شمار کو بہتر بنائیں.
پیچھے سٹاپ نقصان شامل کریں، منافع لینے کی سطح کو ہلچل.
سگنل کے اختلافات کا اندازہ کریں، اعلی درجے کی پیروی کرنے اور کم فروخت کرنے سے بچیں.
حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
بہترین تلاش کرنے کے لئے بولنگر بینڈ پیرامیٹرز کے مختلف مجموعے آزمائیں.
بریکآؤٹ سگنلز کو فلٹر کرنے کے لئے ایم اے، ایم اے سی ڈی وغیرہ شامل کریں۔
بولنگر پیرامیٹرز کو بہتر بنانے کے لئے مشین سیکھنے کے الگورتھم کا اطلاق کریں.
توڑنے کی طاقت کا اندازہ کریں اور پوزیشن سائزنگ کو ایڈجسٹ کریں.
استحکام کی جانچ کے لیے طویل عرصے تک بیک ٹیسٹ کریں۔
خطرے کو کنٹرول کرنے کے لئے سٹاپ نقصان کے طریقہ کار کو شامل کریں.
خلاصہ میں ، بولنگر بینڈ کی حکمت عملی ایک مجموعی طور پر قابل اعتماد رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ غیر معمولی قیمت میں اتار چڑھاؤ کو مؤثر طریقے سے پکڑ سکتی ہے۔ لیکن ہمیں اس کی اصل قیمت سے انحراف کو بھی نوٹ کرنا چاہئے اور پیرامیٹرز کو مستقل طور پر بہتر بنانا چاہئے۔ اگر براہ راست تجارت کے لئے استعمال کیا جائے تو ، ہر تجارت میں نقصان کو کنٹرول کرنے کے لئے سخت رسک مینجمنٹ ضروری ہے۔
/*backtest start: 2023-09-11 00:00:00 end: 2023-09-12 04:00:00 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=4 strategy(title="BB training No Repainting (OTS Mode)", overlay=true) // Strategy Rules: // 1. Enter trade when price crosses above the lower band // 2. Exit trade when price touches the upper band // // Chart Properties testStartYear = input(2010, "Backtest Start Year") testStartMonth = input(01, "Backtest Start Month") testStartDay = input(1, "Backtest Start Day") testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 0, 0) testStopYear = input(2030, "Backtest Stop Year") testStopMonth = input(12, "Backtest Stop Month") testStopDay = input(30, "Backtest Stop Day") testPeriodStop = timestamp(testStopYear, testStopMonth, testStopDay, 0, 0) // A switch to control background coloring of the test period testPeriodBackground = input(title="Color Background?", type=input.bool, defval=true) testPeriodBackgroundColor = testPeriodBackground and time >= testPeriodStart and time <= testPeriodStop ? #6c6f6c : na bgcolor(testPeriodBackgroundColor, transp=97) // User provided values smaLength = input(title="SMA Length", type=input.integer, defval=20) // Middle band period length (moving average) stdLength = input(title="StdDev Length", type=input.integer, defval=20) // Range to apply bands to ubOffset = input(title="Upper Band Offset", type=input.float, defval=2.0, step=0.5) // Number of standard deviations above MA lbOffset = input(title="Lower Band Offset", type=input.float, defval=2.0, step=0.5) // Number of standard deviation below MA testPeriod() => time >= testPeriodStart and time <= testPeriodStop ? true : false smaValue = sma(close, smaLength) // Middle band stdDev = stdev(close, stdLength) upperBand = smaValue + stdDev * ubOffset // Top band lowerBand = smaValue - stdDev * lbOffset // Bottom band // Plot bands to chart plot(series=smaValue, title="SMA", color=color.green) plot(series=upperBand, title="UB", color=color.blue, linewidth=2) plot(series=lowerBand, title="LB", color=color.blue, linewidth=2) longCondition = (crossover(close, lowerBand)) closeLongCondition = (close >= upperBand) if (longCondition and testPeriod()) strategy.entry(id="CALL", long=true) strategy.close(id="CALL", when=closeLongCondition)