موونگ ایوریج کراس اوور ٹرینڈ فالو کرنے کی حکمت عملی ایک مقداری تجارتی حکمت عملی ہے جو مارکیٹ کے رجحانات کو ٹریک کرتی ہے۔ یہ حکمت عملی تیز اور سست حرکت پذیر اوسطوں کا حساب کتاب کرکے اور جب کراس اوورز ہوتے ہیں تو مارکیٹ کے رجحانات میں موڑ کے مقامات کو پکڑ کر تجارتی سگنل تیار کرتی ہے۔
اس حکمت عملی کا بنیادی اصول مختلف پیرامیٹرز کے ساتھ تیزی سے چلنے والے اوسط (ای ایم اے) کا استعمال کرتے ہوئے مارکیٹ کے رجحانات کا جائزہ لینا ہے۔ حکمت عملی ایک تیز ای ایم اے اور ایک سست ای ایم اے کی وضاحت کرتی ہے۔ جب تیز ای ایم اے سست ای ایم اے کے اوپر عبور کرتی ہے تو ، یہ مارکیٹ میں تیزی کے رجحان کی تبدیلی کی نشاندہی کرتی ہے۔ جب تیز ای ایم اے سست ای ایم اے سے نیچے عبور کرتی ہے تو ، یہ ایک bearish رجحان کی تبدیلی کی نشاندہی کرتی ہے۔
اوپر کی کراسنگ پر ، حکمت عملی طویل پوزیشنیں کھولے گی۔ نیچے کی کراسنگ پر ، حکمت عملی مختصر پوزیشنیں کھولے گی۔ حکمت عملی اپنی پوزیشن کو اس وقت تک برقرار رکھے گی جب تک کہ منافع یا اسٹاپ نقصان کو متحرک نہ کیا جائے ، یا مخالف سمت میں کراس اوور دوبارہ نہ ہو۔
اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
اس حکمت عملی میں کچھ خطرات بھی ہیں:
خطرات کو کم کرنے کے لئے، رجحان کی اقسام کا تعین کرنے کے لئے دیگر اشارے کو یکجا کرنے پر غور کریں، یا وسیع سٹاپ نقصان کے تناسب مقرر کریں.
اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں بھی بہتر بنایا جاسکتا ہے:
خلاصہ یہ کہ ، چلتی اوسط کراس اوور ٹرینڈ فالونگ حکمت عملی ایک سادہ اور عملی ٹرینڈ ٹریڈنگ حکمت عملی ہے۔ حکمت عملی کے بنیادی خیالات واضح اور لاگو کرنے میں آسان ہیں ، اور اس میں اصلاح کی گنجائش بھی ہے۔ پیرامیٹرز کو ایڈجسٹ کرکے ، ملٹی ٹائم فریم تجزیہ ، متحرک اسٹاپس وغیرہ شامل کرکے ، حکمت عملی کے استحکام اور منافع کو مستقل طور پر بہتر بنایا جاسکتا ہے۔
/*backtest start: 2024-01-28 00:00:00 end: 2024-02-04 00:00:00 period: 5m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy('Zhukov trade', overlay=true, calc_on_every_tick=true, currency=currency.USD) // INPUT: // Options to enter fast and slow Exponential Moving Average (EMA) values emaFast = input.int(title='Fast EMA', defval=10, minval=1, maxval=9999) emaSlow = input.int(title='Slow EMA', defval=20, minval=1, maxval=9999) // Option to select trade directions tradeDirection = input.string(title='Trade Direction', options=['Long', 'Short', 'Both'], defval='Both') // Options that configure the backtest date range startDate = input(title='Start Date', defval=timestamp('01 Jan 2023 00:00')) endDate = input(title='End Date', defval=timestamp('31 Dec 2030 23:59')) // Set take profit and stop loss percentages take_profit_percent = input(1.0, title ="Take Profit Percent") / 100.0 stop_loss_percent = input(1.0, title ="Stop Loss Percent") / 100.0 // CALCULATIONS: // Use the built-in function to calculate two EMA lines fastEMA = ta.ema(close, emaFast) slowEMA = ta.ema(close, emaSlow) emapos = ta.ema(close, 200) // PLOT: // Draw the EMA lines on the chart plot(series=fastEMA, color=color.new(color.orange, 0), linewidth=2) plot(series=slowEMA, color=color.new(color.blue, 0), linewidth=2) plot(series=emapos, color=color.new(color.red, 0), linewidth=2) // CONDITIONS: // Check if the close time of the current bar falls inside the date range inDateRange = true // Translate input into trading conditions longOK = tradeDirection == 'Long' or tradeDirection == 'Both' shortOK = tradeDirection == 'Short' or tradeDirection == 'Both' // Decide if we should go long or short using the built-in functions longCondition = ta.crossover(fastEMA, slowEMA) and inDateRange shortCondition = ta.crossunder(fastEMA, slowEMA) and inDateRange // ORDERS: // Submit entry (or reverse) orders if longCondition and longOK strategy.entry(id='long', direction=strategy.long) if shortCondition and shortOK strategy.entry(id='short', direction=strategy.short) // Exit orders if strategy.position_size > 0 and longOK strategy.exit(id='exit long', from_entry='long', limit=strategy.position_avg_price * (1 + take_profit_percent), stop=strategy.position_avg_price * (1 - stop_loss_percent)) if strategy.position_size < 0 and shortOK strategy.exit(id='exit short', from_entry='short', limit=strategy.position_avg_price * (1 - take_profit_percent), stop=strategy.position_avg_price * (1 + stop_loss_percent))