
یہ حکمت عملی ایک ٹرینڈ بریک ٹریڈنگ سسٹم ہے جو ایک سے زیادہ تکنیکی اشارے کے نیٹ ورک پر مبنی ہے۔ یہ متعدد تکنیکی اشارے جیسے انڈیکس منتقل کرنے والی اوسط ((EMA) ، ٹرانسمیشن وزن کی اوسط قیمت ((VWAP) ، نسبتا strong مضبوط اشارے ((RSI)) ، اوسط رجحان اشارے ((ADX) وغیرہ کو جامع طور پر استعمال کرتا ہے۔ اس حکمت عملی میں متعدد سگنل کی شناخت کے ذریعہ جعلی بریک کو فلٹر کرنے اور تجارت کی درستگی کو بہتر بنانے کے لئے۔ یہ حکمت عملی اعلی ٹائم پیریڈ کے رجحانات کے فیصلے کو بھی جوڑتی ہے ، اور اے ٹی آر پر مبنی متحرک اسٹاپ نقصان کی روک تھام کا نظام استعمال کرتی ہے ، جس سے خطرے پر موثر کنٹرول حاصل ہوتا ہے۔
حکمت عملی کی بنیادی منطق درج ذیل کلیدی عناصر پر مبنی ہے:
اس حکمت عملی نے متعدد تکنیکی اشارے کے ہم آہنگی سے کام کرکے ایک نسبتا 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)