یہ دوہری حرکت پذیر اوسط کراس اوور سگنلز پر مبنی ایک مقداری تجارتی حکمت عملی ہے۔ اس حکمت عملی میں دو حرکت پذیر اوسط استعمال ہوتے ہیں ، ایک اہم سگنل لائن کے طور پر اور دوسرا ہموار سگنل لائن کے طور پر۔ یہ ہموار سگنل لائن کے ساتھ قیمت کراس اوورز کی نگرانی کرکے تجارتی سگنل تیار کرتا ہے ، جس سے مارکیٹ کے رجحان کو پکڑنے اور رفتار کو ٹریک کرنے میں مدد ملتی ہے۔ اس حکمت عملی کی بنیادی طاقت اس کی سادہ لیکن موثر سگنل جنریشن میکانزم اور لچکدار پیرامیٹر ترتیب کے اختیارات میں ہے۔
یہ حکمت عملی دو سطحوں پر چلتی اوسط حساب کتاب کا استعمال کرتی ہے۔ یہ پہلے بنیادی چلتی اوسط (ڈیفالٹ مدت 9) کا حساب لگاتا ہے ، اس کے بعد ثانوی ہموار کرنے کا عمل (ڈیفالٹ مدت 5) ہوتا ہے۔ یہ حکمت عملی مختلف چلتی اوسط حساب کتاب کے طریقوں کی پیش کش کرتی ہے ، بشمول سادہ چلتی اوسط (ایس ایم اے) ، توسیعی چلتی اوسط (ای ایم اے) ، ہموار چلتی اوسط (ایس ایم ایم اے) ، وزن شدہ چلتی اوسط (ڈبلیو ایم اے) ، اور حجم وزن شدہ چلتی اوسط (وی ڈبلیو ایم اے) ۔ جب اختتامی قیمت ہموار سگنل لائن سے اوپر عبور کرتی ہے تو لانگ سگنل پیدا ہوتے ہیں ، جبکہ اختتامی قیمت اس سے نیچے عبور کرتے وقت مختصر سگنل پیدا ہوتے ہیں۔
یہ کلاسیکی رجحان کی پیروی کرنے والی حکمت عملی کا ایک بہتر ورژن ہے جو دو تہوں کے متحرک اوسط ڈیزائن کے ذریعہ سادگی کو برقرار رکھتے ہوئے استحکام کو بڑھا دیتا ہے۔ حکمت عملی پیرامیٹر کی اصلاح اور فنکشن کی توسیع کے ذریعہ مختلف مارکیٹ کے ماحول میں موافقت پذیر ، اچھی اسکیل ایبلٹی اور لچک پیش کرتی ہے۔ تاہم ، صارفین کو لین دین کے اخراجات پر قابو پانے اور رسک مینجمنٹ پر توجہ دینے کی ضرورت ہے ، اور براہ راست تجارت سے پہلے مکمل بیک ٹیسٹنگ کرنے کی سفارش کی جاتی ہے۔
/*backtest start: 2019-12-23 08:00:00 end: 2024-11-25 08:00:00 period: 1d basePeriod: 1d exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Moving Average 1.0 Strategy", overlay=true) // Input for Moving Average Length len = input.int(9, minval=1, title="Length") src = input(close, title="Source") offset = input.int(title="Offset", defval=0, minval=-500, maxval=500) // Calculate the Moving Average out = ta.sma(src, len) // Plot the Moving Average plot(out, color=color.blue, title="MA", offset=offset) // Function to choose the type of moving average 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) // Input for Smoothing Method and Length typeMA = input.string(title="Method", defval="SMA", options=["SMA", "EMA", "SMMA (RMA)", "WMA", "VWMA"], group="Smoothing") smoothingLength = input.int(title="Smoothing Length", defval=5, minval=1, maxval=100, group="Smoothing") // Calculate the Smoothing Line smoothingLine = ma(out, smoothingLength, typeMA) // Plot the Smoothing Line plot(smoothingLine, title="Smoothing Line", color=color.rgb(120, 66, 134, 35), offset=offset) // Strategy Logic if (ta.crossover(close, smoothingLine)) strategy.entry("Buy", strategy.long) if (ta.crossunder(close, smoothingLine)) strategy.entry("Sell", strategy.short)