
یہ حکمت عملی ایک جامع رجحان سے باخبر رہنے والا تجارتی نظام ہے جس میں مارکیٹ کے رجحانات اور تجارت کے وقت کا تعین کرنے کے لئے متعدد تکنیکی اشارے شامل ہیں۔ حکمت عملی کا مرکز تیز رفتار اور سست رفتار سادہ حرکت پذیر اوسط (ایس ایم اے) کے کراس سگنل پر مبنی ہے ، اور نسبتا weak مضبوط اشارے (آر ایس آئی) اور اوسط رجحان اشارے (ای ڈی ایکس) کے ذریعہ رجحان کی تصدیق کی جاتی ہے ، جبکہ حقیقی طول و عرض (اے ٹی آر) کا استعمال کرتے ہوئے خطرے کا انتظام کیا جاتا ہے۔ حکمت عملی میں فنڈ مینجمنٹ کے اصولوں کا استعمال کیا گیا ہے ، جس میں اکاؤنٹ میں فنڈز کے 2٪ سے زیادہ نہیں ہونے والے ایک ہی تجارت کے خطرے کو محدود کیا گیا ہے۔
حکمت عملی کے عمل میں بنیادی طور پر درج ذیل اہم اجزاء شامل ہیں:
اس حکمت عملی نے متعدد تکنیکی اشارے کے مجموعی استعمال کے ذریعے ایک نسبتا complete مکمل رجحان سے باخبر رہنے والے تجارتی نظام کی تشکیل کی۔ اس حکمت عملی میں سگنل کی وشوسنییتا اور خطرے کے انتظام پر توجہ دی گئی ہے ، جس میں عمدہ عملی افادیت ہے۔ اس حکمت عملی کو بہتر بنانے کی سفارشات پر عمل درآمد کے ذریعہ ، اس کی کارکردگی کو مزید بہتر بنانے کی امید ہے۔ یہ تجویز کی گئی ہے کہ ریئل اسٹیٹ پر لاگو ہونے سے پہلے کافی حد تک جانچ پڑتال کی جائے اور مخصوص تجارتی اقسام کی خصوصیات کے مطابق پیرامیٹرز کو بہتر بنایا جائے۔
/*backtest
start: 2025-02-16 17:00:00
end: 2025-02-20 00:00:00
period: 4m
basePeriod: 4m
exchanges: [{"eid":"Binance","currency":"ETH_USDT"}]
*/
//@version=6
strategy("SMA + RSI + ADX + ATR Strategy", overlay=true, default_qty_type=strategy.percent_of_equity, default_qty_value=2)
// === Input Parameters ===
sma_fast_length = input(10, title="SMA Fast Period")
sma_slow_length = input(200, title="SMA Slow Period")
rsi_length = input(14, title="RSI Period")
adx_length = input(14, title="ADX Period")
adx_smoothing = input(14, title="ADX Smoothing Period") // <-- New parameter!
atr_length = input(14, title="ATR Period")
// === Filtering Levels for RSI and ADX ===
rsi_buy_level = input(50, title="RSI Buy Level")
rsi_sell_level = input(50, title="RSI Sell Level")
adx_min_trend = input(20, title="ADX Minimum Trend Strength")
// === Trailing Stop ===
use_trailing_stop = input(true, title="Enable Trailing Stop")
trailing_stop_pips = input(30, title="Trailing Stop (Pips)")
trailing_step_pips = input(5, title="Trailing Step (Pips)")
// === Indicators ===
sma_fast = ta.sma(close, sma_fast_length)
sma_slow = ta.sma(close, sma_slow_length)
rsi_value = ta.rsi(close, rsi_length)
[diPlus, diMinus, adx_value] = ta.dmi(adx_length, adx_smoothing) // <-- Corrected: added `adx_smoothing`
atr_value = ta.atr(atr_length)
// === Entry Logic ===
longCondition = ta.crossover(sma_fast, sma_slow) and rsi_value > rsi_buy_level and adx_value > adx_min_trend
shortCondition = ta.crossunder(sma_fast, sma_slow) and rsi_value < rsi_sell_level and adx_value > adx_min_trend
// === Open Positions ===
if longCondition
strategy.entry("BUY", strategy.long)
if shortCondition
strategy.entry("SELL", strategy.short)
// === Trailing Stop ===
if use_trailing_stop
strategy.exit("Exit Long", from_entry="BUY", trail_points=trailing_stop_pips, trail_offset=trailing_step_pips)
strategy.exit("Exit Short", from_entry="SELL", trail_points=trailing_stop_pips, trail_offset=trailing_step_pips)
// === Visualization ===
plot(sma_fast, color=color.blue, title="SMA 10")
plot(sma_slow, color=color.red, title="SMA 200")
hline(rsi_buy_level, title="RSI Buy Level", color=color.green)
hline(rsi_sell_level, title="RSI Sell Level", color=color.red)
hline(adx_min_trend, title="ADX Min Trend Level", color=color.orange)