
یہ حکمت عملی ایک کثیر تکنیکی اشارے پر مبنی ایک مقداری تجارتی نظام ہے ، جس میں تین بڑے تکنیکی اشارے شامل ہیں۔ اس حکمت عملی میں ای ایم اے کی تیز رفتار لائنوں کے کراس سگنل کو بنیادی انٹری کی بنیاد کے طور پر استعمال کیا جاتا ہے ، جبکہ آر ایس آئی اشارے کے ساتھ مل کر زیادہ خرید و فروخت کی تصدیق کی جاتی ہے ، اور مارکیٹ کے رجحانات کی طاقت کا اندازہ لگانے کے لئے اے ڈی ایکس اشارے کا استعمال کیا جاتا ہے ، تاکہ ایک مکمل تجارتی فیصلہ سازی کا نظام تشکیل دیا جاسکے۔ اس حکمت عملی میں رسک مینجمنٹ ماڈیول بھی شامل ہے ، جس میں ہر تجارت کے اسٹاپ نقصان اور اسٹاپ نقصان کو کنٹرول کرنے کے لئے خطرہ اور منافع کا تناسب طے کیا گیا ہے۔
اس حکمت عملی کی بنیادی منطق مندرجہ ذیل اہم اجزاء پر مبنی ہے:
یہ ایک مناسب اور منطقی طور پر ڈیزائن کردہ کثیر تکنیکی اشارے کی تجارتی حکمت عملی ہے۔ تین کلاسیکی تکنیکی اشارے ، ای ایم اے ، آر ایس آئی اور اے ڈی ایکس کو مربوط کرکے ، حکمت عملی نے رجحان سے باخبر رہنے اور خطرے پر قابو پانے میں اچھی کارکردگی کا مظاہرہ کیا۔ اگرچہ کچھ جگہیں ہیں جہاں اصلاح کی ضرورت ہے ، لیکن مجموعی طور پر اس حکمت عملی میں اچھی عملی قدر اور توسیع کی گنجائش ہے۔ تجویز کردہ اصلاحی سمتوں کے ذریعہ ، حکمت عملی کی کارکردگی کو مزید بہتر بنایا جاسکتا ہے۔
/*backtest
start: 2019-12-23 08:00:00
end: 2024-11-11 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=5
strategy("Enhanced EMA + RSI + ADX Strategy", overlay=true)
// Input parameters
lenFast = input.int(9, title="Fast EMA Length", minval=1)
lenSlow = input.int(21, title="Slow EMA Length", minval=1)
rsiPeriod = input.int(14, title="RSI Period")
adxPeriod = input.int(14, title="ADX Period")
adxSmoothing = input.int(1, title="ADX Smoothing")
adxThreshold = input.int(20, title="ADX Threshold")
riskRewardRatio = input.float(2.0, title="Risk/Reward Ratio")
// EMA Calculations
fastEMA = ta.ema(close, lenFast)
slowEMA = ta.ema(close, lenSlow)
// RSI Calculation
rsiValue = ta.rsi(close, rsiPeriod)
// ADX Calculation
[plusDI, minusDI, adxValue] = ta.dmi(adxPeriod, adxSmoothing)
// Entry Conditions
buyCondition = ta.crossover(fastEMA, slowEMA) and rsiValue < 60 and adxValue > adxThreshold
sellCondition = ta.crossunder(fastEMA, slowEMA) and rsiValue > 40 and adxValue > adxThreshold
// Entry logic
if (buyCondition)
strategy.entry("Buy", strategy.long)
strategy.exit("Sell", from_entry="Buy", limit=close + (close - strategy.position_avg_price) * riskRewardRatio, stop=close - (close - strategy.position_avg_price))
if (sellCondition)
strategy.close("Buy")
// Plotting EMAs (thinner lines)
plot(fastEMA, color=color.new(color.green, 0), title="Fast EMA", linewidth=1)
plot(slowEMA, color=color.new(color.red, 0), title="Slow EMA", linewidth=1)
// Entry and exit markers (larger shapes)
plotshape(series=buyCondition, style=shape.triangleup, location=location.belowbar, color=color.new(color.green, 0), size=size.normal, title="Buy Signal")
plotshape(series=sellCondition, style=shape.triangledown, location=location.abovebar, color=color.new(color.red, 0), size=size.normal, title="Sell Signal")
// Displaying price labels for buy/sell signals
if (buyCondition)
label.new(bar_index, low, text="Buy\n" + str.tostring(close), color=color.new(color.green, 0), style=label.style_label_down, textcolor=color.white)
if (sellCondition)
label.new(bar_index, high, text="Sell\n" + str.tostring(close), color=color.new(color.red, 0), style=label.style_label_up, textcolor=color.white)
// Optional: Add alerts for entry signals
alertcondition(buyCondition, title="Buy Alert", message="Buy signal triggered")
alertcondition(sellCondition, title="Sell Alert", message="Sell signal triggered")