یہ حکمت عملی متعدد تکنیکی اشارے فلٹرز پر مبنی ایک رجحان کی پیشرفت ٹریڈنگ سسٹم ہے۔ اس میں متعدد تکنیکی اشارے شامل ہیں جن میں ایکسپونینشل موونگ ایوریج (ای ایم اے) ، حجم وزن والی اوسط قیمت (وی ڈبلیو اے پی) ، رشتہ دار طاقت انڈیکس (آر ایس آئی) ، اوسط سمت انڈیکس (اے ڈی ایکس) وغیرہ شامل ہیں ، تاکہ متعدد سگنل کی تصدیق کے ذریعے جھوٹے بریک آؤٹ کو فلٹر کیا جاسکے اور تجارتی درستگی کو بہتر بنایا جاسکے۔ اس حکمت عملی میں اعلی ٹائم فریم ٹرینڈ فیصلہ بھی شامل ہے اور مؤثر رسک کنٹرول کے لئے اے ٹی آر پر مبنی متحرک اسٹاپ نقصان اور منافع لینے کی اسکیم کو بھی استعمال کیا گیا ہے۔
حکمت عملی کا بنیادی منطق مندرجہ ذیل اہم عناصر پر مبنی ہے:
یہ حکمت عملی متعدد تکنیکی اشارے کے ہم آہنگی کے ذریعے نسبتا complete مکمل تجارتی نظام تشکیل دیتی ہے۔ اس کا بنیادی فائدہ سرمایہ کی حفاظت کے لئے سائنسی رسک مینجمنٹ کے طریقوں کو استعمال کرتے ہوئے کثیر جہتی سگنل کی تصدیق کے ذریعے تجارتی درستگی کو بہتر بنانا ہے۔ اگرچہ کچھ حدود موجود ہیں ، لیکن مسلسل اصلاح اور بہتری کے ذریعے ، اس حکمت عملی میں اصل تجارت میں مستحکم منافع حاصل کرنے کی صلاحیت ہے۔
/*backtest start: 2024-11-19 00:00:00 end: 2024-12-18 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("Trend-Filtered Scalping Strategy", overlay=true, shorttitle="TFSS") // Inputs emaShort = input.int(9, title="EMA Short", minval=1) emaLong = input.int(21, title="EMA Long", minval=1) rsiLength = input.int(14, title="RSI Length", minval=1) atrLength = input.int(14, title="ATR Length", minval=1) adxLength = input.int(20, title="ADX Length", minval=1) adxSmoothing = input.int(14, title="ADX Smoothing", minval=1) volMultiplier = input.float(1.5, title="Volume Spike Multiplier", minval=1.0) riskPercent = input.float(1, title="Risk % of Equity", minval=0.1, step=0.1) // Higher Time Frame for Trend Filter htfTimeframe = input.timeframe("15", title="Higher Time Frame") ema50HTF = request.security(syminfo.tickerid, htfTimeframe, ta.ema(close, 50)) // Indicators ema9 = ta.ema(close, emaShort) ema21 = ta.ema(close, emaLong) vwap = ta.vwap(close) rsi = ta.rsi(close, rsiLength) atr = ta.atr(atrLength) volAvg = ta.sma(volume, 10) // ADX Calculation with Smoothing [_, _, adx] = ta.dmi(adxLength, adxSmoothing) // Entry Conditions longCondition = (ta.crossover(ema9, ema21) and close > vwap and rsi > 55 and adx > 25 and close > ema50HTF and volume > volAvg * volMultiplier) shortCondition = (ta.crossunder(ema9, ema21) and close < vwap and rsi < 45 and adx > 25 and close < ema50HTF and volume > volAvg * volMultiplier) // Position Sizing Based on Risk % capitalPerTrade = (strategy.equity * (riskPercent / 100)) / atr longStop = close - 1.5 * atr longTarget = close + 3 * atr shortStop = close + 1.5 * atr shortTarget = close - 3 * atr // Entry Logic if longCondition and not strategy.opentrades strategy.entry("Long", strategy.long, qty=capitalPerTrade) strategy.exit("Exit Long", from_entry="Long", stop=longStop, limit=longTarget) if shortCondition and not strategy.opentrades strategy.entry("Short", strategy.short, qty=capitalPerTrade) strategy.exit("Exit Short", from_entry="Short", stop=shortStop, limit=shortTarget) // Alerts alertcondition(longCondition, title="Long Entry Alert", message="Long Condition Triggered!") alertcondition(shortCondition, title="Short Entry Alert", message="Short Condition Triggered!") // Plot Indicators plot(ema9, title="EMA 9", color=color.green) plot(ema21, title="EMA 21", color=color.red) plot(vwap, title="VWAP", color=color.blue) plot(ema50HTF, title="HTF EMA 50", color=color.purple) hline(55, "RSI Long Threshold", color=color.green) hline(45, "RSI Short Threshold", color=color.red)