یہ ایک تجارتی حکمت عملی ہے جو بولنگر بینڈ کا استعمال کرتی ہے۔ اس حکمت عملی کا مقصد مواقع کی نشاندہی کرنا ہے جب بولنگر بینڈ کا استعمال کرتے ہوئے قیمتوں میں پرتشدد اتار چڑھاؤ ہوتا ہے اور اس کے مطابق خرید یا فروخت کے فیصلے کیے جاتے ہیں۔
حکمت عملی بولنگر بینڈز کے اوپری بینڈ ، مڈل بینڈ اور نچلے بینڈ کا حساب لگاتی ہے تاکہ یہ معلوم کیا جاسکے کہ آیا موجودہ قیمت اتار چڑھاؤ کی حد کے اندر ہے اور اس طرح پوزیشنوں کو کھولنے یا بند کرنے کے بارے میں فیصلے کیے جاسکتے ہیں۔ جب قیمت اوپری بینڈ کے قریب آتی ہے تو ، اسے لانگ کے لئے انتہائی نقطہ سمجھا جاتا ہے اور حکمت عملی طویل پوزیشنوں کو بند کرنے کا انتخاب کرتی ہے۔ جب قیمت نچلی بینڈ کے قریب آتی ہے تو ، اسے شارٹس کے لئے انتہائی نقطہ سمجھا جاتا ہے اور حکمت عملی طویل پوزیشنوں کو کھولنے کا انتخاب کرتی ہے۔
اس کے علاوہ ، حکمت عملی میں رجحان کی تبدیلی کے عوامل بھی شامل ہیں۔ اگر کوئی الٹ سگنل موجود ہے تو ، یہ خرید یا فروخت کے متعلقہ فیصلوں کو بھی متحرک کرے گا۔ خاص طور پر ، حکمت عملی کا منطق مندرجہ ذیل ہے:
مندرجہ بالا اس حکمت عملی کا بنیادی تجارتی منطق ہے۔ بولنگر بینڈ کی خصوصیات کا استعمال کرتے ہوئے اور رجحان اور الٹ عوامل کو جوڑ کر ، حکمت عملی اتار چڑھاؤ میں اضافے پر الٹ پوائنٹس کو پکڑنے کی کوشش کرتی ہے۔
عام حرکت پذیر اوسط حکمت عملی کے مقابلے میں، اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
عام طور پر ، یہ حکمت عملی بولنگر بینڈ اور قیمتوں کی سلاخوں کو نسبتا well اچھی طرح سے جوڑتی ہے۔ یہ خطرات پر قابو پانے کے دوران منافع کی ایک خاص سطح کو یقینی بنانے کے لئے معقول الٹ پوائنٹس پر تجارت کرتی ہے۔
تاہم، اس حکمت عملی کے ساتھ اب بھی کچھ خطرات ہیں:
اس کے مطابق، مستقبل میں اصلاحات پر توجہ مرکوز کر سکتے ہیں:
اختتام کے طور پر ، یہ ایک عام بولنگر بینڈ ٹریڈنگ حکمت عملی ٹیمپلیٹ ہے۔ یہ صرف بولنگر بینڈ کا استعمال کرنے کے لئے عام حد سے زیادہ غیر موثر تجارت سے گریز کرتا ہے تاکہ سگنل فلٹر کرنے کے لئے رجحان کی الٹ فیصلے کو متعارف کرایا جاسکے ، جو نظریاتی طور پر اچھی حکمت عملی کی کارکردگی کا باعث بن سکتا ہے۔ لیکن پیرامیٹرز اور سگنل فلٹرنگ کو مضبوطی اور غلط فیصلوں کو کم کرنے کے لئے مزید اصلاح اور بہتری کی ضرورت ہے۔
/*backtest start: 2023-12-18 00:00:00 end: 2024-01-17 00:00:00 period: 1h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=3 strategy("Noro's Bollinger Strategy v1.2", shorttitle = "Bollinger str 1.2", overlay = true ) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") length = input(20, defval = 20, minval = 1, maxval = 1000, title = "Bollinger Length") mult = input(2.0, defval = 2.0, minval = 0.001, maxval = 50, title = "Bollinger Mult") source = input(ohlc4, defval = ohlc4, title = "Bollinger Source") uset = input(true, defval = true, title = "Use trend entry") usect = input(true, defval = true, title = "Use counter-trend entry") fromyear = input(2018, defval = 2018, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") showbands = input(true, defval = true, title = "Show Bollinger Bands") //Bollinger Bands basis = sma(source, length) dev = mult * stdev(source, length) upper = basis + dev lower = basis - dev //Lines col = showbands ? black : na plot(upper, linewidth = 1, color = col) plot(basis, linewidth = 1, color = col) plot(lower, linewidth = 1, color = col) //Body body = abs(close - open) abody = ema(body, 30) //Signals bar = close > open ? 1 : close < open ? -1 : 0 up1 = bar == -1 and close >= basis and close < upper and (close < strategy.position_avg_price or strategy.position_size == 0) and uset dn1 = bar == 1 and close <= basis and close > lower and (close > strategy.position_avg_price or strategy.position_size == 0) and uset up2 = close <= lower and usect dn2 = close >= upper and usect exit = (strategy.position_size > 0 and close > open) or (strategy.position_size < 0 and close < open) and body > abody / 2 //Trading if up1 or up2 strategy.entry("Long", strategy.long, needlong == false ? 0 : na) if dn1 or dn2 strategy.entry("Short", strategy.short, needshort == false ? 0 : na) if exit strategy.close_all()