یہ ایک ایسی حکمت عملی ہے جو قیمتوں میں ممکنہ الٹ پھیر کی نشاندہی کرتی ہے جس میں قیمتوں کے ہموار سائیکلوں کے ساتھ مل کر ایک اپنی مرضی کے مطابق گوسین ڈٹرنڈ پرائس آسکیلیٹر (جی ڈی پی او) کا استعمال کیا جاتا ہے۔ یہ گوسین ہموار کے ساتھ ڈٹرنڈ آسکیلیٹر کا استعمال کرتا ہے اور الٹ پھیر کے مواقع پر قبضہ کرنے کے لئے مخصوص انٹری اور آؤٹ پٹ قوانین طے کرتا ہے۔
حکمت عملی پہلے قلیل مدتی قیمتوں کے دوروں کی نشاندہی کرنے کے لئے ایک مخصوص مدت میں قریب کی قیمت کو ایک تیزی سے چلتی اوسط (ای ایم اے) سے موازنہ کرکے ڈٹرنڈ پرائس آسکیلیٹر (ڈی پی او) کا حساب لگاتی ہے۔ پھر شور کو فلٹر کرنے کے لئے گوسین ہموار کرنے کی تکنیک کے ساتھ آرنو لیگو چلتی اوسط (اے ایل ایم اے) کا استعمال کرتے ہوئے ڈی پی او کی اقدار کو ہموار کیا جاتا ہے۔
انٹری اور آؤٹ پٹ کے قوانین کو ہموار جی ڈی پی او اور اس کے پسماندہ ورژن کے مابین کراس اوور واقعات کی بنیاد پر بیان کیا گیا ہے۔ جب ہموار جی ڈی پی او لیگ سے اوپر عبور کرتا ہے اور منفی ہوتا ہے تو ایک لمبی پوزیشن درج کی جاتی ہے۔ جب ہموار جی ڈی پی او لیگ یا صفر لائن سے نیچے عبور کرتا ہے تو لمبی پوزیشن باہر نکل جاتی ہے۔ جب ہموار جی ڈی پی او لیگ سے نیچے عبور کرتا ہے اور مثبت ہوتا ہے تو مختصر پوزیشن درج کی جاتی ہے۔ جب ہموار جی ڈی پی او لیگ یا صفر لائن سے اوپر عبور کرتا ہے تو مختصر پوزیشن باہر نکل جاتی ہے۔
ہموار جی ڈی پی او اور اس کی تاخیر کو مختلف رنگوں میں پلاٹ کیا گیا ہے۔ صفر لائن بھی بطور حوالہ دکھائی جاتی ہے۔ جب حکمت عملی کسی پوزیشن میں داخل ہوتی ہے تو چارٹ کے پس منظر کا رنگ بدل جاتا ہے۔ کراس مارکر کراس اوور پوائنٹس پر آؤٹ پٹ سگنل کے طور پر پلاٹ کیے جاتے ہیں۔
اسٹریٹجی میں ڈٹرنڈنگ تکنیک اور گوسین ہموار کرنے کا امتزاج ہوتا ہے تاکہ دیگر آسکیلیٹرز کے مقابلے میں الٹ جانے کے مواقع کو واضح طور پر پہچانا جاسکے۔ جی ڈی پی او ڈٹرنڈنگ کے ساتھ سائیکل تجزیہ کو شامل کرکے درستگی کو بہتر بناتا ہے۔ گوسین ہموار کرنے سے واضح سگنل کے ل noise شور ختم ہوجاتا ہے۔ مخصوص اندراج اور باہر نکلنے کے قوانین مؤثر طریقے سے نقصانات پر قابو پاتے ہیں۔
حکمت عملی پیرامیٹر ٹوننگ جیسے مدت کی لمبائی اور ہموار پیرامیٹرز کے لئے حساس ہے۔ زیادہ سے زیادہ پیرامیٹرز کا تعین کرنے کے لئے وسیع پیمانے پر بیک ٹیسٹنگ کی ضرورت ہوتی ہے ، ورنہ زیادہ سے زیادہ غلط سگنل پیدا ہوسکتے ہیں۔ حکمت عملی رجحان سازی کی منڈیوں میں لگاتار نقصانات پیدا کرسکتی ہے۔ اسٹاپ نقصان کو ایک ہی تجارت کے نقصان کو کنٹرول کرنے کے لئے استعمال کیا جانا چاہئے۔ ناکام الٹ بھی ایک بڑا خطرہ ہے۔ چارٹ پیٹرن اور رجحان کی طاقت کا استعمال کرتے ہوئے الٹ کے امکان کی تصدیق کی جانی چاہئے۔
استحکام کو بہتر بنانے کے لئے پیرامیٹرز کو متحرک طور پر ایڈجسٹ کرکے اور رجحان کے اشارے شامل کرکے اصلاح کی جاسکتی ہے۔ متحرک رکاوٹیں خطرات کو بھی کنٹرول کرسکتی ہیں۔
حکمت عملی کو کئی پہلوؤں میں بہتر بنایا جا سکتا ہے:
رجحانات میں ہموار کو بڑھانے اور جھوٹے سگنل کو کم کرنے کے لئے متحرک طور پر ہموار پیرامیٹرز کو ایڈجسٹ کریں.
رجحان کی مارکیٹوں میں نقصانات سے بچنے کے لئے ADX جیسے رجحان کے اشارے شامل کریں.
سٹاپ نقصان کے طریقہ کار کو شامل کریں جیسے متحرک یا ٹریلنگ اسٹاپ.
زیادہ سے زیادہ اندراج کی درستگی کے لئے اضافی اشارے یا پیٹرن کا استعمال کرتے ہوئے اندراج کے حالات کو بہتر بنائیں.
مارکیٹ کے حالات کی بنیاد پر پوزیشن سائزنگ اور اسٹاپ کو ایڈجسٹ کرکے کیپٹل مینجمنٹ کو بہتر بنائیں۔
روزانہ یا ہفتہ وار اعداد و شمار کی طرح مختلف وقت کے فریم میں حکمت عملی کی جانچ کریں.
گوسین ڈٹرنڈ ریورسشن حکمت عملی جی ڈی پی او کا استعمال کرتے ہوئے قلیل مدتی سائیکلوں کی نشاندہی کرتی ہے اور گوسین فلٹرنگ کے ساتھ سگنل نکالتی ہے تاکہ مقررہ انٹری اور ایگزٹ قوانین کے تحت ریورس کو پکڑ سکے۔ یہ ریورس ٹریڈنگ کے خطرات کو مؤثر طریقے سے کنٹرول کرتی ہے لیکن پیرامیٹر کی اصلاح اور رجحان کی توثیق کی ضرورت ہوتی ہے۔ متحرک ایڈجسٹمنٹ ، اشارے کی تصدیق اور اسٹاپ نقصان کی حکمت عملیوں کے ذریعے استحکام میں مزید بہتری لائی جاسکتی ہے۔
/*backtest start: 2022-10-31 00:00:00 end: 2023-11-06 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 // © DraftVenture //@version=5 strategy(title="Gaussian Detrended Reversion Strategy", overlay=false, default_qty_type=strategy.percent_of_equity, default_qty_value=15) //Detrended Price Oscillator for price cycles period_ = input.int(50, title="Price Length", minval=1) barsback = period_/2 + 1 ma = ta.ema(close, period_) dpo = close - ma[barsback] // Rounded ALMA Calculations for gaussian smoothing almaSource = dpo almaWindowSize = input(title="Smoothing Length", defval=50) lagLength = input(title="Lag Length", defval=25) almaSmoothed = ta.alma(almaSource, almaWindowSize, 0.85, 6) almaLag = almaSmoothed[lagLength] // Reversion entry conditions entryL = ta.crossover(almaSmoothed, almaLag) and almaSmoothed < 0 exitL = ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0) entryS = ta.crossunder(almaSmoothed, almaLag) and almaSmoothed > 0 exitS = ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0) // Long entry and exit if entryL strategy.entry("Long", strategy.long) if exitL strategy.close("Long") // Short entry and exit if entryS strategy.entry("Short", strategy.short) if exitS strategy.close("Short") // Plot the oscillator plot(almaSmoothed, title="GDPO", color=color.green) plot(almaLag, title="Lag", color=color.white) hline(0, title="Zero Line", color=color.white) bgcolor(entryL ? color.new(color.green, 40) : na) bgcolor(entryS ? color.new(color.red, 40) : na) plotshape(series=ta.crossunder(almaSmoothed, almaLag) or ta.crossunder(almaSmoothed, 0), style=shape.xcross, location=location.top, color=color.white, size=size.tiny) plotshape(series=ta.crossover(almaSmoothed, almaLag) or ta.crossover(almaSmoothed, 0), style=shape.xcross, location=location.bottom, color=color.white, size=size.tiny) //Strategy by KP