یہ حکمت عملی ایک تجارتی نظام ہے جو ایکسپونینشل موونگ ایوریج (ای ایم اے) کراس اوورز پر مبنی ہے ، جو متحرک رسک مینجمنٹ کے لئے اوسط حقیقی رینج (اے ٹی آر) کے ساتھ مل کر ہے۔ یہ حکمت عملی قیمت کے رجحانات میں رفتار کی تبدیلیوں کو پکڑنے کے لئے قلیل مدتی اور طویل مدتی ای ایم اے لائنوں کا استعمال کرتی ہے ، جبکہ اے ٹی آر کو متحرک طور پر منافع اور اسٹاپ نقصان کی سطح مقرر کرنے کے لئے استعمال کرتی ہے ، جس سے تجارتی خطرات پر عین مطابق کنٹرول حاصل ہوتا ہے۔
اس حکمت عملی کا بنیادی منطق مختلف ادوار کے دو ای ایم اے (9 اور 21) کے مابین کراس اوور سگنلز پر مبنی ہے۔ جب قلیل مدتی ای ایم اے طویل مدتی ای ایم اے سے تجاوز کرتا ہے تو خرید کا سگنل پیدا ہوتا ہے ، جبکہ جب قلیل مدتی ای ایم اے طویل مدتی ای ایم اے سے تجاوز کرتا ہے تو فروخت کا سگنل پیدا ہوتا ہے۔ خطرے کے بہتر انتظام کے ل the ، حکمت عملی میں 14 پیریڈ اے ٹی آر پر مبنی متحرک منافع اور اسٹاپ نقصان کا طریقہ کار شامل ہے ، جس میں منافع لینے کی سطح 2x اے ٹی آر اور اسٹاپ نقصان کی سطح 1x اے ٹی آر پر طے کی جاتی ہے ، جس سے بروقت رسک کنٹرول برقرار رکھتے ہوئے کافی منافع کی صلاحیت کو یقینی بنایا جاسکتا ہے۔
یہ حکمت عملی کلاسیکی ای ایم اے کراس اوور سسٹم کو متحرک اے ٹی آر رسک مینجمنٹ کے ساتھ جوڑ کر ایک جامع تجارتی نظام تشکیل دیتی ہے۔ اس کی اہم طاقتیں متحرک رسک مینجمنٹ کی صلاحیتوں اور موثر رجحان کی پیروی کرنے والی خصوصیات میں ہیں۔ تجویز کردہ اصلاح کی سمتوں کے ذریعہ ، مزید بہتری کی گنجائش ہے۔ براہ راست تجارت کے نفاذ کے لئے ، مارکیٹ کی مخصوص خصوصیات کی بنیاد پر مناسب ایڈجسٹمنٹ کے ساتھ ، مکمل بیک ٹیسٹنگ اور پیرامیٹر کی اصلاح کرنے کی سفارش کی جاتی ہے۔
/*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("Improved EMA Crossover Strategy", overlay=true) // User-defined inputs for EMAs shortTermLength = input(9, title="Short-Term EMA Length") longTermLength = input(21, title="Long-Term EMA Length") // Dynamic Take Profit and Stop Loss atrLength = input(14, title="ATR Length") atrMultiplierTP = input(2.0, title="ATR Multiplier for Take Profit") atrMultiplierSL = input(1.0, title="ATR Multiplier for Stop Loss") // Calculate EMAs and ATR shortTermEMA = ta.ema(close, shortTermLength) longTermEMA = ta.ema(close, longTermLength) atr = ta.atr(atrLength) // Plot the EMAs plot(shortTermEMA, color=color.blue, title="Short-Term EMA") plot(longTermEMA, color=color.red, title="Long-Term EMA") // Generate Entry Conditions longCondition = ta.crossover(shortTermEMA, longTermEMA) shortCondition = ta.crossunder(shortTermEMA, longTermEMA) // Optional Debugging: Print conditions (you can remove this later) var label longLabel = na var label shortLabel = na if longCondition longLabel := label.new(bar_index, high, "Buy Signal", color=color.green, style=label.style_label_down, textcolor=color.white) if shortCondition shortLabel := label.new(bar_index, low, "Sell Signal", color=color.red, style=label.style_label_up, textcolor=color.white) if (longCondition) strategy.entry("Long", strategy.long) strategy.exit("Long Exit", "Long", limit=close + atr * atrMultiplierTP, stop=close - atr * atrMultiplierSL) if (shortCondition) strategy.entry("Short", strategy.short) strategy.exit("Short Exit", "Short", limit=close - atr * atrMultiplierTP, stop=close + atr * atrMultiplierSL)