
یہ حکمت عملی ایک ٹرینڈ ٹریکنگ حکمت عملی ہے جو ایک ملٹی ٹائم فریم انڈیکس مووینگ اوسط ((ای ایم اے) اور 200 فریم ای ایم اے فلٹر پر مبنی ہے۔ اس کا بنیادی خیال یہ ہے کہ مختلف ٹائم فریموں میں ای ایم اے کا استعمال کرکے مارکیٹ کی رجحان کی سمت کی نشاندہی کی جائے اور جب قیمت 200 فریم ای ایم اے کے اوپر بڑھتی ہے تو ایک کثیر پوزیشن قائم کی جائے۔ اس طرح یہ یقینی بنایا جاسکتا ہے کہ صرف مضبوط بڑھتی ہوئی رجحان کے دوران ہی تجارت کی جائے ، تاکہ بڑھتی ہوئی بڑھتی ہوئی صورتحال کو برقرار رکھا جاسکے ، جبکہ روک تھام اور نقصان کو روکنے کے طریقہ کار کا استعمال کرتے ہوئے خطرے کو کنٹرول کیا جاسکے۔
حکمت عملی 5 منٹ ، 15 منٹ اور 30 منٹ کے تین ٹائم فریم استعمال کرتی ہے ، جس میں فاسٹ ای ایم اے اور سست ای ایم اے کا حساب لگایا جاتا ہے۔ ہر ٹائم فریم کے فاسٹ ای ایم اے اور سست ای ایم اے کا موازنہ کرکے ، اس ٹائم فریم کی رجحان کی سمت کا اندازہ لگایا جاسکتا ہے۔ اس کے بعد تین ٹائم فریموں کے رجحان کے اشارے کو اکٹھا کرکے ، ایک جامع رجحان کا اشارہ ملتا ہے۔ جب جامع رجحان کا اشارہ 3 ((یعنی تمام ٹائم فریم اوپر کی طرف بڑھتے ہیں) ہوتا ہے اور موجودہ بندش کی قیمت 5 منٹ 200 ای ایم اے کے اوپر ہوتی ہے تو حکمت عملی زیادہ پوزیشن کھولتی ہے۔ جب جامع رجحان کا اشارہ 3 سے کم ہوتا ہے یا قیمت 5 منٹ 200 ای ایم اے کے نیچے ہوتی ہے تو ، حکمت عملی کو فلیٹ کردیا جاتا ہے۔
اس حکمت عملی نے ایک سے زیادہ ٹائم فریموں کے EMAs کا موازنہ کرکے رجحان کی سمت کا فیصلہ کیا ، اور 200 EMAs کو رجحان فلٹر کے طور پر استعمال کیا ، جب رجحان واضح طور پر اوپر کی طرف ہے اور قیمت طویل مدتی اوسط سے اوپر ہے تو اس نے ایک کثیر پوزیشن قائم کی ، تاکہ اس کی مضبوطی کو پکڑ لیا جاسکے۔ سخت پوزیشن کھولنے کی شرائط اور فکسڈ اسٹاپ نقصانات کو روکنے سے خطرے کو کنٹرول کرنے میں مدد ملتی ہے۔ تاہم ، اس حکمت عملی کا رجحان موڑنے کے نقطہ پر رد عمل سست ہوسکتا ہے ، اور اسٹاپ نقصانات کی پوزیشنیں مقرر ہیں ، اور مارکیٹ میں اچانک اتار چڑھاو کے ردعمل میں محدود ہیں۔ مستقبل میں حکمت عملی کی لچک اور استحکام کو بہتر بنانے کے لئے مزید ٹائم فریم متعارف کرانے ، اسٹاپ نقصانات کو بہتر بنانے ، مزید ٹریڈنگ سگنل شامل کرنے ، اور پیرامیٹرز کی اصلاح کے ذریعہ حکمت عملی کو بہتر بنانے کے لئے ، تاکہ وہ مارکیٹ کے مواقع کو بہتر طور پر پکڑ سکیں اور خطرات کو کنٹرول کرسکیں۔
/*backtest
start: 2023-05-17 00:00:00
end: 2024-05-22 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Multi-Timeframe Trend Following with 200 EMA Filter - Longs Only", shorttitle="MTF_TF_200EMA_Longs", overlay=true, initial_capital=1000, default_qty_type=strategy.fixed, default_qty_value=1)
// Inputs
fast_length = input.int(9, title="Fast EMA Length", minval=1)
slow_length = input.int(21, title="Slow EMA Length", minval=1)
filter_length_200 = input.int(200, title="200 EMA Length", minval=1)
stop_loss_perc = input.float(1.0, title="Stop Loss Percentage", minval=0.1) / 100
take_profit_perc = input.float(3.0, title="Take Profit Percentage", minval=0.1) / 100
// Calculate EMAs for 5-minute, 15-minute, and 30-minute timeframes
ema_fast_5min = request.security(syminfo.tickerid, "5", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_5min = request.security(syminfo.tickerid, "5", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
ema_fast_15min = request.security(syminfo.tickerid, "15", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_15min = request.security(syminfo.tickerid, "15", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
ema_fast_30min = request.security(syminfo.tickerid, "30", ta.ema(close, fast_length), lookahead=barmerge.lookahead_on)
ema_slow_30min = request.security(syminfo.tickerid, "30", ta.ema(close, slow_length), lookahead=barmerge.lookahead_on)
// Calculate 200 EMA for the 5-minute timeframe
ema_200_5min = ta.ema(close, filter_length_200)
// Determine the trend for each timeframe
trend_5min = ema_fast_5min > ema_slow_5min ? 1 : -1
trend_15min = ema_fast_15min > ema_slow_15min ? 1 : -1
trend_30min = ema_fast_30min > ema_slow_30min ? 1 : -1
// Combine trend signals
combined_trend = trend_5min + trend_15min + trend_30min
// Define entry and exit conditions with 200 EMA filter
enter_long = combined_trend == 3 and close > ema_200_5min
exit_long = combined_trend < 3 or close < ema_200_5min
// Plot EMAs for the 5-minute timeframe
plot(ema_fast_5min, color=color.blue, linewidth=2, title="Fast EMA 5min")
plot(ema_slow_5min, color=color.red, linewidth=2, title="Slow EMA 5min")
plot(ema_200_5min, color=color.green, linewidth=2, title="200 EMA 5min")
// Strategy execution
if (enter_long)
strategy.entry("Long", strategy.long, stop=close * (1 - stop_loss_perc), limit=close * (1 + take_profit_perc))
if (exit_long)
strategy.close("Long")