یہ دوہری حرکت پذیر اوسطوں پر مبنی ایک سادہ انٹرا ڈے ٹریڈنگ حکمت عملی ہے۔ یہ مختلف ادوار کے ساتھ دو سادہ حرکت پذیر اوسطوں کا استعمال کرتا ہے اور جب حرکت پذیر اوسط عبور کرتے ہیں تو لمبی یا مختصر پوزیشن لیتا ہے۔ سگنل میں تبدیلی کے وقت پوزیشن کو ڈبل مقدار کا استعمال کرتے ہوئے الٹ کردیا جاتا ہے۔ تمام کھلی پوزیشنیں انٹرا ڈے سیشن ختم ہونے پر مربع ہوجاتی ہیں۔
یہ حکمت عملی 10 دن اور 40 دن کی سادہ حرکت پذیر اوسط کا استعمال کرتی ہے۔ جب مختصر مدت کی حرکت پذیر اوسط لمبی مدت کے اوپر عبور کرتی ہے تو یہ طویل ہوجاتی ہے اور جب ریورس کراس اوور ہوتا ہے تو مختصر ہوجاتی ہے۔ جب سگنل میں تبدیلی آتی ہے تو ، پوزیشن کو ڈبل مقدار کا استعمال کرتے ہوئے بند کردیا جاتا ہے اور ریورس پوزیشن شروع کردی جاتی ہے۔ تجارت صرف ایک مخصوص انٹرا ڈے سیشن کے دوران حرکت پذیر اوسط سگنلز کے بعد ہوتی ہے۔ جب سیشن ختم ہوتا ہے تو کوئی بھی کھلی پوزیشن باقی رہ جاتی ہے۔
یہ حکمت عملی بنیادی طور پر مختصر مدت کی حرکت پذیر اوسط کی تیزی سے قیمت کی تبدیلی کو پکڑنے کی صلاحیت کا استعمال کرتی ہے۔ جب مختصر ایس ایم اے طویل ایس ایم اے سے اوپر جاتا ہے تو ، اس سے قلیل مدتی میں قیمتوں میں اضافے کا اشارہ ہوتا ہے لہذا طویل عرصے تک جانا اس کو پکڑ سکتا ہے۔ اس کے برعکس قلیل مدتی ڈاؤن ٹرینڈ کی نشاندہی کرتا ہے۔ ڈبل مقدار کا ریورس انٹری منافع کی صلاحیت کو بڑھا دیتا ہے۔
خطرے کو کم کرنا:
بہترین فٹ کے لئے زیادہ سے زیادہ مجموعے کی جانچ کے ذریعے ایم اے پیرامیٹرز کو بہتر بنائیں.
جھوٹے سگنل کو کم کرنے کے لئے MACD تصدیق جیسے فلٹرز شامل کریں.
پیرامیٹر ٹیوننگ کے ذریعے ریورس انٹری مقدار ضرب کو بہتر بنائیں.
بہتر واپسی کے لئے دن کے اندر سیشن کی مدت میں توسیع کی جانچ کریں.
یہ حکمت عملی ایم اے کراس اوور سگنلز سے بنی قلیل مدتی رجحانات کو پکڑتی ہے ، ڈبل مقدار کے ریورس ٹریڈنگ کا استعمال کرتے ہوئے منافع میں توسیع کرتی ہے اور صرف ایک دن کے سیشن میں تجارت کرکے راتوں رات کے خطرات کو محدود کرتی ہے۔ پیرامیٹرز پر مزید اصلاحات اور فلٹرز کا اضافہ حکمت عملی کی کارکردگی کو بہتر بنا سکتا ہے۔ مجموعی طور پر ، یہ ایک موثر حکمت عملی ہے جو دن کے اندر تجارت کے لئے موزوں ہے۔
/*backtest start: 2024-02-19 00:00:00 end: 2024-02-26 00:00:00 period: 1m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ // This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © Pritesh-StocksDeveloper //@version=4 strategy("Moving Average - Intraday", shorttitle = "MA - Intraday", overlay=true, calc_on_every_tick = true) // Used for intraday handling // Session value should be from market start to the time you want to square-off // your intraday strategy var i_marketSession = input(title="Market session", type=input.session, defval="0915-1455", confirm=true) // Short & Long moving avg. period var int i_shortPeriod = input(title = "Short MA Period", type = input.integer, defval = 10, minval = 2, maxval = 20, confirm=true) var int i_longPeriod = input(title = "Long MA Period", type = input.integer, defval = 40, minval = 3, maxval = 120, confirm=true) // A function to check whether the bar is in intraday session barInSession(sess) => time(timeframe.period, sess) != 0 // Calculate moving averages shortAvg = sma(close, i_shortPeriod) longAvg = sma(close, i_longPeriod) // Plot moving averages plot(series = shortAvg, color = color.red, title = "Short MA", linewidth = 2) plot(series = longAvg, color = color.blue, title = "Long MA", linewidth = 2) // Long/short condition longCondition = crossover(shortAvg, longAvg) shortCondition = crossunder(shortAvg, longAvg) // See if intraday session is active bool intradaySession = barInSession(i_marketSession) // Trade only if intraday session is active // Long position strategy.entry(id = "Long", long = strategy.long, when = longCondition and intradaySession) // Short position strategy.entry(id = "Short", long = strategy.short, when = shortCondition and intradaySession) // Square-off position (when session is over and position is open) squareOff = (not intradaySession) and (strategy.position_size != 0) strategy.close_all(when = squareOff, comment = "Square-off")