یہ حکمت عملی بولنگر بینڈ اور اسٹوکاسٹک آسکیلیٹر پر مبنی ایک تجارتی حکمت عملی ہے۔ یہ مارکیٹ کی اتار چڑھاؤ کی حد کا تعین کرنے کے لئے بولنگر بینڈ کا استعمال کرتی ہے اور مارکیٹ کی زیادہ خرید اور فروخت کی حالتوں کا فیصلہ کرنے کے لئے اسٹوکاسٹک آسکیلیٹر کا استعمال کرتی ہے۔ جب قیمت بالائی بولنگر بینڈ سے اوپر ٹوٹ جاتی ہے تو ، حکمت عملی طویل ہوجاتی ہے۔ جب قیمت نچلی بولنگر بینڈ سے نیچے آجاتی ہے تو ، حکمت عملی مختصر ہوجاتی ہے۔ اسی وقت ، حکمت عملی کی درستگی اور وشوسنییتا کو بہتر بنانے کے لئے اسٹوکاسٹک آسکیلیٹر کا استعمال ٹریڈنگ سگنل کو فلٹر کرنے کے لئے بھی کرتی ہے۔
اس حکمت عملی کا مرکز دو تکنیکی اشارے ہیں: بولنگر بینڈ اور اسٹوکاسٹک آسکیلیٹر۔ بولنگر بینڈ میں تین لائنیں شامل ہیں: درمیانی بینڈ ، اوپری بینڈ ، اور نچلی بینڈ۔ درمیانی بینڈ قیمت کا ایک سادہ حرکت پذیر اوسط ہے ، جبکہ اوپری اور نچلی بینڈ قیمت
اسٹوکاسٹک آسکیلیٹر میں دو لائنیں ہیں: %K لائن اور %D لائن۔ %K لائن حالیہ مدت کے دوران سب سے زیادہ اور سب سے کم قیمتوں کے اندر بند ہونے کی قیمت کی پوزیشن کی پیمائش کرتی ہے ، اور %D لائن %K لائن کا ایک چلتا ہوا اوسط ہے۔ جب %K لائن %D لائن سے اوپر کی طرف بڑھتی ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ مارکیٹ زیادہ خرید سکتی ہے۔ جب %K لائن %D لائن سے نیچے کی طرف بڑھتی ہے تو ، اس سے یہ ظاہر ہوتا ہے کہ مارکیٹ زیادہ فروخت ہوسکتی ہے۔
یہ حکمت عملی ان دونوں اشارے کو جوڑتی ہے۔ جب قیمت اوپری بولنگر بینڈ سے اوپر ہوتی ہے اور اسٹوکاسٹک آسکیلیٹر %K لائن %D لائن سے اوپر عبور کرتی ہے تو ، حکمت عملی طویل ہوجاتی ہے۔ جب قیمت نچلی بولنگر بینڈ سے نیچے آجاتی ہے اور اسٹوکاسٹک آسکیلیٹر %K لائن %D لائن سے نیچے عبور کرتی ہے تو ، حکمت عملی مختصر ہوجاتی ہے۔ یہ امتزاج مارکیٹ کے رجحانات کو مؤثر طریقے سے پکڑ سکتا ہے جبکہ اتار چڑھاؤ والے بازاروں میں کثرت سے تجارت سے گریز کرتا ہے۔
یہ حکمت عملی ایک سادہ لیکن موثر تجارتی حکمت عملی ہے جو دو کلاسیکی تکنیکی اشارے ، بولنگر بینڈ اور اسٹوکاسٹک آسکیلیٹر کو یکجا کرتی ہے ، تاکہ رجحان اور دوڑتا ہوا مارکیٹ دونوں ریاستوں میں مستحکم منافع حاصل کیا جاسکے۔ اگرچہ اس حکمت عملی میں کچھ خطرات اور حدود بھی ہیں ، مناسب اصلاح اور بہتری کے ذریعے ، یہ حکمت عملی کی کارکردگی اور موافقت کو مزید بڑھا سکتی ہے ، جو ایک تجارتی حکمت عملی بن جاتی ہے جس کا حوالہ دینے اور سیکھنے کے قابل ہے۔
/*backtest start: 2023-05-03 00:00:00 end: 2024-05-08 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Unique Bollinger Bands Strategy", overlay=true) src = input(close) length = input.int(34, minval=1) mult = input.float(2.0, minval=0.001, maxval=50) basis = ta.sma(src, length) dev = ta.stdev(src, length) dev2 = mult * dev upper1 = basis + dev lower1 = basis - dev upper2 = basis + dev2 lower2 = basis - dev2 colorBasis = src >= basis ? color.blue : color.orange pBasis = plot(basis, linewidth=2, color=colorBasis) pUpper1 = plot(upper1, color=color.new(color.blue, 0), style=plot.style_circles) pUpper2 = plot(upper2, color=color.new(color.blue, 0)) pLower1 = plot(lower1, color=color.new(color.orange, 0), style=plot.style_circles) pLower2 = plot(lower2, color=color.new(color.orange, 0)) fill(pBasis, pUpper2, color=color.new(color.blue, 80)) fill(pUpper1, pUpper2, color=color.new(color.blue, 80)) fill(pBasis, pLower2, color=color.new(color.orange, 80)) fill(pLower1, pLower2, color=color.new(color.orange, 80)) // Parameters bbLength = input.int(34, title="Length", minval=1) bbMultiplier = input.float(2.0, title="Multiplier", minval=0.001, maxval=50) // Source priceData = close // Unique name for price data source // Bollinger Bands Calculation bbBasis = ta.sma(priceData, bbLength) bbDeviation = ta.stdev(priceData, bbLength) bbDeviationMultiplied = bbMultiplier * bbDeviation bbUpperBand = bbBasis + bbDeviationMultiplied bbLowerBand = bbBasis - bbDeviationMultiplied // Plot Bollinger Bands plot(bbBasis, color=color.blue, linewidth=2) plot(bbUpperBand, color=color.blue) plot(bbLowerBand, color=color.orange) // Strategy Logic for Entry and Exit enterLong = ta.crossover(priceData, bbUpperBand) enterShort = ta.crossunder(priceData, bbLowerBand) // Enter Long when price crosses over upper band if (enterLong) strategy.entry("Long", strategy.long) // Enter Short when price crosses under lower band if (enterShort) strategy.entry("Short", strategy.short) // Close Long when Short condition is met (i.e., price under lower band) if (enterShort) strategy.close("Long") // Close Short when Long condition is met (i.e., price over upper band) if (enterLong) strategy.close("Short")