یہ متعدد ٹائم فریم ای ایم اے کراس اوورز پر مبنی ایک رجحان کی پیروی کرنے والی حکمت عملی ہے۔ یہ حکمت عملی بنیادی طور پر انٹری پوائنٹس کا تعین کرنے کے لئے 20 ، 50 ، اور 200 پیریڈ ایکسپونینشل موونگ میڈیز (ای ایم اے) اور پرائس ای ایم اے تعلقات کے مابین کراس اوور تعلقات پر انحصار کرتی ہے ، جبکہ رسک مینجمنٹ کے لئے فیصد پر مبنی منافع اور اسٹاپ نقصان کی سطح کو شامل کرتی ہے۔ یہ حکمت عملی خاص طور پر بڑے ٹائم فریم جیسے 1 گھنٹے ، روزانہ ، اور ہفتہ وار چارٹس پر موثر ہے۔
بنیادی منطق ایک متعدد چلتی اوسط نظام اور قیمت کے عمل کے تجزیہ پر مبنی ہے:
یہ واضح منطق کے ساتھ حکمت عملی کے بعد ایک اچھی طرح سے ڈیزائن کیا گیا رجحان ہے۔ متعدد تکنیکی اشارے کے امتزاج کے ذریعے ، یہ حکمت عملی کی وشوسنییتا اور واضح رسک مینجمنٹ حل دونوں کو یقینی بناتا ہے۔ یہ حکمت عملی خاص طور پر بڑے ٹائم فریم چارٹس کے لئے موزوں ہے اور اس میں درمیانے اور طویل مدتی رجحانات کو پکڑنے میں انوکھے فوائد ہیں۔ تجویز کردہ اصلاح کی سمتوں کے ذریعے ، مزید بہتری کی گنجائش ہے۔ تاجروں کو مشورہ دیا جاتا ہے کہ وہ براہ راست تجارت سے پہلے بیک ٹیسٹنگ سسٹم میں حکمت عملی کی مکمل جانچ کریں اور مخصوص تجارتی آلے کی خصوصیات کے مطابق پیرامیٹرز کو ایڈجسٹ کریں۔
/*backtest start: 2024-10-28 00:00:00 end: 2024-11-27 00:00:00 period: 1h basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy("EMA Cross Strategy with Targets and Fill", overlay=true) // Define EMAs ema20 = ta.ema(close, 20) ema50 = ta.ema(close, 50) ema200 = ta.ema(close, 200) // Plot EMAs (hidden) plot(ema20, color=color.blue, title="EMA 20", display=display.none) plot(ema50, color=color.red, title="EMA 50", display=display.none) plot(ema200, color=color.green, title="EMA 200", display=display.none) // Define the conditions priceCrossAboveEMA20 = ta.crossover(close, ema20) priceCloseAboveEMA20 = close > ema20 ema20AboveEMA50 = ema20 > ema50 ema50AboveEMA200 = ema50 > ema200 // Buy condition buyCondition = priceCrossAboveEMA20 and priceCloseAboveEMA20 and ema20AboveEMA50 and ema50AboveEMA200 // Plot buy signals plotshape(series=buyCondition, location=location.belowbar, color=color.green, style=shape.labelup, text="BUY") // Declare and initialize variables for take profit and stop loss levels var float longTakeProfit = na var float longStopLoss = na var float buyPrice = na // Update levels and variables on buy condition if (buyCondition) // Enter a new buy position strategy.entry("Buy", strategy.long) // Set new take profit and stop loss levels longTakeProfit := strategy.position_avg_price * 1.10 // Target is 10% above the buy price longStopLoss := strategy.position_avg_price * 0.95 // Stop loss is 5% below the buy price buyPrice := strategy.position_avg_price // Plot levels for the new trade plotTakeProfit = plot(longTakeProfit, color=color.green, title="Take Profit", linewidth=1, offset=-1) plotStopLoss = plot(longStopLoss, color=color.red, title="Stop Loss", linewidth=1, offset=-1) plotBuyPrice = plot(buyPrice, color=color.blue, title="Buy Price", linewidth=1, offset=-1) // Fill areas between buy price and take profit/stop loss levels fill(plotBuyPrice, plotTakeProfit, color=color.new(color.green, 90), title="Fill to Take Profit") // Light green fill to target fill(plotBuyPrice, plotStopLoss, color=color.new(color.red, 90), title="Fill to Stop Loss") // Light red fill to stop loss // Exit conditions strategy.exit("Take Profit/Stop Loss", from_entry="Buy", limit=longTakeProfit, stop=longStopLoss)