یہ حکمت عملی ایک مقداری تجارتی نظام ہے جو دوہری توسیع پذیر چلتی اوسط (ای ایم اے) کو اسٹوکاسٹک آسکیلیٹر کے ساتھ جوڑتا ہے۔ یہ اسٹوکاسٹک آسکیلیٹر کا استعمال کرتے ہوئے زیادہ خریدنے اور زیادہ فروخت والے زونوں میں تجارتی مواقع کی نشاندہی کرنے کے لئے 20 مدت اور 50 مدت کے ای ایم اے کا استعمال کرتے ہوئے مارکیٹ کے رجحانات کا تعین کرتا ہے ، جس سے رجحان اور رفتار کا بہترین امتزاج حاصل ہوتا ہے۔ حکمت عملی میں سخت رسک مینجمنٹ اقدامات نافذ کیے جاتے ہیں ، بشمول فکسڈ اسٹاپ نقصان اور منافع کے اہداف۔
بنیادی منطق میں تین اجزاء شامل ہیں: رجحان کی نشاندہی ، انٹری ٹائمنگ ، اور رسک کنٹرول۔ رجحان کی نشاندہی بنیادی طور پر تیز ای ایم اے (20 مدت) اور سست ای ایم اے (50 مدت) کی نسبتا position پوزیشن پر منحصر ہے ، جہاں جب تیز لائن سست لائن سے اوپر ہوتی ہے تو اپ ٹرینڈ کی تصدیق ہوجاتی ہے ، اور اس کے برعکس۔ اسٹوکاسٹک آسکیلیٹر کراس اوورز کے ذریعہ انٹری سگنل کی تصدیق ہوتی ہے ، جو زیادہ خریدے اور زیادہ فروخت والے علاقوں میں اعلی امکان کی تجارت کی تلاش کرتے ہیں۔ رسک کنٹرول میں مقررہ فیصد اسٹاپ نقصانات اور 2: 1 منافع کے اہداف کا استعمال ہوتا ہے ، جس سے ہر تجارت کے لئے واضح رسک انعام تناسب کو یقینی بنایا جاتا ہے۔
یہ حکمت عملی رجحان اور رفتار کے اشارے کو جوڑ کر ایک مکمل تجارتی نظام قائم کرتی ہے۔ اس کی بنیادی طاقت اس کے واضح منطقی فریم ورک اور سخت رسک کنٹرول میں ہے ، حالانکہ عملی اطلاق میں مخصوص مارکیٹ کے حالات کی بنیاد پر پیرامیٹر کی اصلاح کی ضرورت ہوتی ہے۔ مسلسل بہتری اور اصلاح کے ذریعے ، حکمت عملی میں مختلف مارکیٹ کے ماحول میں مستحکم کارکردگی برقرار رکھنے کی صلاحیت ہے۔
/*backtest start: 2024-12-06 00:00:00 end: 2025-01-04 08:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=6 strategy("EMA + Stochastic Strategy", overlay=true) // Inputs for EMA emaShortLength = input.int(20, title="Short EMA Length") emaLongLength = input.int(50, title="Long EMA Length") // Inputs for Stochastic stochK = input.int(14, title="Stochastic %K Length") stochD = input.int(3, title="Stochastic %D Smoothing") stochOverbought = input.int(85, title="Stochastic Overbought Level") stochOversold = input.int(15, title="Stochastic Oversold Level") // Inputs for Risk Management riskRewardRatio = input.float(2.0, title="Risk-Reward Ratio") stopLossPercent = input.float(1.0, title="Stop Loss (%)") // EMA Calculation emaShort = ta.ema(close, emaShortLength) emaLong = ta.ema(close, emaLongLength) // Stochastic Calculation k = ta.stoch(high, low, close, stochK) d = ta.sma(k, stochD) // Trend Condition isUptrend = emaShort > emaLong isDowntrend = emaShort < emaLong // Stochastic Signals stochBuyCrossover = ta.crossover(k, d) stochBuySignal = k < stochOversold and stochBuyCrossover stochSellCrossunder = ta.crossunder(k, d) stochSellSignal = k > stochOverbought and stochSellCrossunder // Entry Signals buySignal = isUptrend and stochBuySignal sellSignal = isDowntrend and stochSellSignal // Strategy Execution if buySignal strategy.entry("Buy", strategy.long) stopLoss = close * (1 - stopLossPercent / 100) takeProfit = close * (1 + stopLossPercent * riskRewardRatio / 100) strategy.exit("Take Profit/Stop Loss", from_entry="Buy", stop=stopLoss, limit=takeProfit) if sellSignal strategy.entry("Sell", strategy.short) stopLoss = close * (1 + stopLossPercent / 100) takeProfit = close * (1 - stopLossPercent * riskRewardRatio / 100) strategy.exit("Take Profit/Stop Loss", from_entry="Sell", stop=stopLoss, limit=takeProfit) // Plotting plot(emaShort, color=color.blue, title="Short EMA") plot(emaLong, color=color.red, title="Long EMA")