
یہ ایک رجحان کی پیروی کرنے والی حکمت عملی ہے جس کی بنیاد ایکسپونینشل موونگ ایوریج (EMA) کراس اوور اور رشتہ دار طاقت انڈیکس (RSI) کی تصدیق پر ہے۔ یہ حکمت عملی RSI مومینٹم کی تصدیق کے ساتھ قلیل مدتی اور طویل مدتی EMAs کے کراس اوور سگنلز کو یکجا کرتی ہے، جبکہ فیصد روکنے والے نقصان کے طریقہ کار کو مربوط کرتی ہے، جس کا مقصد مارکیٹ کے رجحانات میں اہم موڑ کو حاصل کرنا اور خطرات کو کنٹرول کرنا ہے۔ حکمت عملی کا بنیادی مقصد تکنیکی اشارے کی ہم آہنگی کے ذریعے لین دین کی حفاظت کو یقینی بناتے ہوئے لین دین کی درستگی اور وشوسنییتا کو بہتر بنانا ہے۔
حکمت عملی دوہری تکنیکی اشارے کو فلٹر کرنے کے طریقہ کار کا استعمال کرتی ہے: سب سے پہلے، قلیل مدتی EMA (9 ادوار) اور طویل مدتی EMA (21 ادوار) کے کراس اوور کے ذریعے ممکنہ رجحان کے موڑ کی نشاندہی کی جاتی ہے۔ جب قلیل مدتی EMA طویل مدتی EMA کو اوپر کی طرف کراس کرتا ہے اور RSI قدر مقررہ سطح سے زیادہ ہوتی ہے، تو نظام ایک طویل سگنل پیدا کرتا ہے جب قلیل مدتی EMA کو نیچے کی طرف کراس کرتا ہے اور RSI قدر کم ہوتی ہے۔ مقررہ سطح کے مقابلے میں، نظام ایک مختصر سگنل پیدا کرتا ہے۔ ایک ہی وقت میں، حکمت عملی فیصد پر مبنی سٹاپ لاس کا طریقہ کار متعارف کراتی ہے، جس سے ہر لین دین کے لیے ایک متحرک سٹاپ لاس کی قیمت مقرر کی جاتی ہے تاکہ منفی خطرات کو مؤثر طریقے سے کنٹرول کیا جا سکے۔
یہ حکمت عملی موونگ ایوریج سسٹم اور مومینٹم انڈیکیٹرز کو ملا کر ایک مکمل ٹرینڈ ٹریکنگ ٹریڈنگ سسٹم بناتی ہے۔ حکمت عملی کے اہم فوائد اس کے قابل اعتماد سگنل کی تصدیق کے طریقہ کار اور کامل رسک کنٹرول سسٹم میں ہیں۔ اگرچہ کچھ موروثی حدود ہیں، تاہم تجویز کردہ اصلاحی سمت کے ذریعے حکمت عملی کی مجموعی کارکردگی میں مزید بہتری کی توقع ہے۔ یہ ایک مضبوط حکمت عملی کا فریم ورک ہے جو درمیانی سے طویل مدتی رجحان والے تاجروں کے لیے موزوں ہے۔
/*backtest
start: 2019-12-23 08:00:00
end: 2024-12-25 08:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Simple Trend Following Strategy", overlay=true)
// Inputs
shortEMA = input.int(9, title="Short EMA Length", minval=1)
longEMA = input.int(21, title="Long EMA Length", minval=1)
confirmationRSI = input.int(50, title="RSI Confirmation Level", minval=1, maxval=100)
stopLossPercent = input.float(2, title="Stop Loss Percentage", minval=0.1) // Stop Loss percentage
// Calculations
emaShort = ta.ema(close, shortEMA)
emaLong = ta.ema(close, longEMA)
rsiValue = ta.rsi(close, 14)
// Buy and Sell Conditions
buySignal = ta.crossover(emaShort, emaLong) and rsiValue > confirmationRSI
sellSignal = ta.crossunder(emaShort, emaLong) and rsiValue < confirmationRSI
// Plotting Signals
plotshape(buySignal, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="BUY")
plotshape(sellSignal, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="SELL")
// Plotting EMAs
plot(emaShort, title="Short EMA", color=color.yellow)
plot(emaLong, title="Long EMA", color=color.purple)
// Strategy logic
strategy.entry("Buy", strategy.long, when=buySignal)
strategy.entry("Sell", strategy.short, when=sellSignal)
// Calculate stop loss price based on stopLossPercent
longStopLossPrice = strategy.position_avg_price * (1 - stopLossPercent / 100)
shortStopLossPrice = strategy.position_avg_price * (1 + stopLossPercent / 100)
// Draw stop loss line for long positions
if (strategy.position_size > 0) // For long positions
line.new(x1=bar_index, y1=longStopLossPrice, x2=bar_index + 1, y2=longStopLossPrice, color=color.red, width=2, style=line.style_dashed)
// Draw stop loss line for short positions
if (strategy.position_size < 0) // For short positions
line.new(x1=bar_index, y1=shortStopLossPrice, x2=bar_index + 1, y2=shortStopLossPrice, color=color.green, width=2, style=line.style_dashed)