
یہ حکمت عملی MACD ، ADX اور EMA200 اشارے پر مبنی ہے ، جو موجودہ مارکیٹ کے رجحانات اور حرکیات کا اندازہ کرکے متعدد ٹائم فریموں میں رجحان کی تجارت کرتی ہے۔ اس حکمت عملی کا بنیادی خیال یہ ہے کہ مارکیٹ کے رجحانات کا اندازہ لگانے کے لئے MACD اشارے کا استعمال کیا جائے ، ADX اشارے رجحان کی طاقت کی تصدیق کرتے ہیں ، EMA200 رجحان فلٹرنگ کی شرط کے طور پر ، جبکہ زیادہ سے زیادہ ٹائم فریموں پر تجارت کرنے کے لئے استعمال کیا جاتا ہے۔
حل:
مندرجہ بالا اصلاحات کے ذریعے، حکمت عملی کو بہتر بنانے اور منافع بخش بنانے میں مدد ملتی ہے، اور مختلف مارکیٹ کے حالات میں بہتر طور پر اپنانے میں مدد ملتی ہے.
یہ حکمت عملی MACD ، ADX اور EMA200 جیسے اشارے کے ساتھ مل کر ، ایک سے زیادہ ٹائم فریموں میں رجحانات کی تجارت کے ل certain کچھ فوائد اور قابل عمل ہے۔ حکمت عملی کی کلید رجحانات کے فیصلے اور رجحان کی طاقت کی تصدیق میں ہے ، جس میں متعدد اشارے مشترکہ طور پر کام کرتے ہیں ، تاکہ رجحاناتی مواقع کو بہتر طور پر پکڑا جاسکے۔ اس کے علاوہ ، حکمت عملی میں فکسڈ اسٹاپ نقصان کو روکنے میں مدد ملتی ہے ، جو خطرے کو کنٹرول کرنے میں مدد ملتی ہے۔ تاہم ، حکمت عملی میں کچھ حدود بھی ہیں ، جیسے کہ زلزلے کی منڈیوں کے لئے اس کی موافقت خراب ہوسکتی ہے ، اور فکسڈ اسٹاپ نقصان کو روکنے میں مارکیٹ میں تبدیلیوں کے مطابق ڈھالنے میں ناکامی ہوسکتی ہے۔ مستقبل میں ، مزید رجحانات کو متعارف کرانے پر غور کیا جاسکتا ہے ، اشارے کی تصدیق ، اسٹاپ نقصان کو بہتر بنانے کا طریقہ ، فلٹرنگ شرائط کو شامل کرنا ، پیرامیٹرز کی اصلاح ، اور حکمت عملی کی کارکردگی کو بہتر بنانے کے لئے مشین لرنر لرننگ الگورت وغیرہ۔
/*backtest
start: 2024-02-01 00:00:00
end: 2024-02-29 23:59:59
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © colemanrumsey
//@version=5
strategy("15-Minute Trend Trading Strategy", overlay=true)
// Exponential Moving Average (EMA)
ema200 = ta.ema(close, 200)
// MACD Indicator
[macdLine, signalLine, _] = ta.macd(close, 12, 26, 9)
macdHistogram = macdLine - signalLine
// Calculate True Range (TR)
tr = ta.tr
// Calculate +DI and -DI
plusDM = high - high[1]
minusDM = low[1] - low
atr14 = ta.atr(14)
plusDI = ta.wma(100 * ta.sma(plusDM, 14) / atr14, 14)
minusDI = ta.wma(100 * ta.sma(minusDM, 14) / atr14, 14)
// Calculate Directional Movement Index (DX)
dx = ta.wma(100 * math.abs(plusDI - minusDI) / (plusDI + minusDI), 14)
// Calculate ADX
adxValue = ta.wma(dx, 14)
// Long Entry Condition
longCondition = close > ema200 and (macdLine > signalLine) and (macdLine < 0) and (adxValue >= 25)
// Short Entry Condition
shortCondition = close < ema200 and (macdLine < signalLine) and (macdLine > 0) and (adxValue >= 25)
// Calculate ATR for Stop Loss
atrValue = ta.atr(14)
// Initialize Take Profit and Stop Loss
var float takeProfit = na
var float stopLoss = na
// Calculate Risk (Stop Loss Distance)
risk = close - low[1] // Using the previous candle's low as stop loss reference
// Strategy Orders
if longCondition
stopLoss := close * 0.99 // Set Stop Loss 1% below the entry price
takeProfit := close * 1.015 // Set Take Profit 1.5% above the entry price
strategy.entry("Buy", strategy.long, stop=stopLoss, limit=takeProfit)
if shortCondition
stopLoss := close * 1.01 // Set Stop Loss 1% above the entry price
takeProfit := close * 0.985 // Set Take Profit 1.5% below the entry price
strategy.entry("Sell", strategy.short, stop=stopLoss, limit=takeProfit)
// Plot EMA
// plot(ema200, color=color.blue, linewidth=1, title="200 EMA")
// Plot MACD Histogram
// plot(macdHistogram, color=macdHistogram > 0 ? color.green : color.red, style=plot.style_columns, title="MACD Histogram")
// Display ADX Value
// plot(adxValue, color=color.purple, title="ADX Value")