یہ حکمت عملی بولنگر بینڈز اشارے پر مبنی ایک رفتار سے باخبر رہنے والا تجارتی نظام ہے۔ یہ قیمت اور اوپری بولنگر بینڈ کے درمیان تعلقات کی نگرانی کرکے ممکنہ بریک آؤٹ مواقع کی نشاندہی کرتا ہے ، اور جب قیمت نچلی بینڈ سے نیچے ہوتی ہے تو پوزیشنیں بند کردیتی ہے۔ بولنگر بینڈ میں تین لائنیں ہوتی ہیں: درمیانی بینڈ (متحرک اوسط) ، اوپری اور نچلی بینڈ (معیاری انحراف کا استعمال کرتے ہوئے حساب لگایا جاتا ہے) ۔ یہ حکمت عملی متعدد اقسام کے چلتے ہوئے اوسط کی حمایت کرتی ہے اور تاجر کی ترجیحات کی بنیاد پر پیرامیٹر ایڈجسٹمنٹ کی اجازت دیتی ہے۔
حکمت عملی کا بنیادی منطق مندرجہ ذیل نکات پر مبنی ہے:
یہ بولنگر بینڈ پر مبنی رجحان کی پیروی کرنے والی حکمت عملی ہے ، جو قیمت اور بینڈ کے مابین تعلقات کا مشاہدہ کرکے مارکیٹ کے رجحانات کو حاصل کرتی ہے۔ یہ حکمت عملی اچھی موافقت اور رسک مینجمنٹ میکانزم کے ساتھ اچھی طرح سے ڈیزائن کی گئی ہے۔ تجویز کردہ اصلاح کی سمتوں کے ذریعے ، حکمت عملی کی استحکام اور منافع کو مزید بڑھا سکتا ہے۔ یہ خاص طور پر اتار چڑھاؤ والی منڈیوں کے لئے موزوں ہے ، لیکن تاجروں کو اصل حالات کے مطابق پیرامیٹرز اور رسک کنٹرول اقدامات کو ایڈجسٹ کرنے کی ضرورت ہے۔
/*backtest start: 2019-12-23 08:00:00 end: 2025-01-04 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="Demo GPT - Bollinger Bands Strategy", overlay=true, initial_capital=100000, commission_type=strategy.commission.percent, commission_value=0.1, slippage=3) // Inputs length = input.int(20, minval=1, title="Length") maType = input.string("SMA", "Basis MA Type", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"]) src = input(close, title="Source") mult = input.float(2.0, minval=0.001, maxval=50, title="StdDev") offset = input.int(0, "Offset", minval=-500, maxval=500) startDate = input(timestamp('01 Jan 2018 00:00 +0000'), title="Start Date") endDate = input(timestamp('31 Dec 2069 23:59 +0000'), title="End Date") // Moving Average Function ma(source, length, _type) => switch _type "SMA" => ta.sma(source, length) "EMA" => ta.ema(source, length) "SMMA (RMA)" => ta.rma(source, length) "WMA" => ta.wma(source, length) "VWMA" => ta.vwma(source, length) // Calculations basis = ma(src, length, maType) dev = mult * ta.stdev(src, length) upper = basis + dev lower = basis - dev // Plotting plot(basis, "Basis", color=#2962FF, offset=offset) p1 = plot(upper, "Upper", color=#F23645, offset=offset) p2 = plot(lower, "Lower", color=#089981, offset=offset) fill(p1, p2, title="Background", color=color.rgb(33, 150, 243, 95)) // Strategy Logic inTradeWindow = true longCondition = close > upper and inTradeWindow exitCondition = close < lower and inTradeWindow if (longCondition) strategy.entry("Long", strategy.long, qty=1) if (exitCondition) strategy.close("Long")