EMA ڈبل موونگ ایوریج کراس اوور ڈائنامک اسٹاپ پرافٹ اور اسٹاپ لاس مقداری تجارتی حکمت عملی

EMA
تخلیق کی تاریخ: 2024-11-18 15:53:49 آخر میں ترمیم کریں: 2024-11-18 15:53:49
کاپی: 5 کلکس کی تعداد: 611
1
پر توجہ دیں
1617
پیروکار

جائزہ

یہ حکمت عملی ایک متحرک سٹاپ اور نقصان کے نظام کے ساتھ ایک مساوی لائن کراسنگ پر مبنی ایک مقداری تجارتی نظام ہے۔ حکمت عملی کا بنیادی مقصد مارکیٹ کے رجحانات کو 10 دوروں اور 26 دوروں کے انڈیکس کے متحرک اوسط ((ای ایم اے) کے کراسنگ کے ذریعے شناخت کرنا ہے اور واپسی کے وقت تجارت کرنا ہے۔ یہ نظام ایک مقررہ اسٹاپ نقصان کی پوزیشن کی ترتیب کو اپناتا ہے ، جس میں سخت خطرے کے کنٹرول کے ذریعہ فنڈز کی حفاظت کی جاتی ہے۔ یہ حکمت عملی خاص طور پر زیادہ اتار چڑھاؤ والی تجارتی اقسام کے لئے موزوں ہے ، کیونکہ اس قسم کی مصنوعات زیادہ واضح مارکیٹ کی واپسی کے سگنل اور زیادہ سے زیادہ منافع بخش جگہ فراہم کرتی ہیں۔

حکمت عملی کا اصول

حکمت عملی دو مختلف دورانیہ ای ایم اے کی اوسط لائنوں کو بنیادی اشارے کے طور پر استعمال کرتی ہے: مختصر 10 دورانیہ ای ایم اے اور طویل 26 دورانیہ ای ایم اے۔ جب قلیل مدتی اوسط لائن طویل مدتی اوسط لائن کو اوپر کی طرف سے عبور کرتی ہے تو ، نظام کو اوپر کی طرف جانے والا رجحان سمجھا جاتا ہے ، جس سے خریدنے کا اشارہ ہوتا ہے۔ جب قلیل مدتی اوسط لائن طویل مدتی اوسط لائن کو نیچے کی طرف سے عبور کرتی ہے تو ، نظام کو نیچے کی طرف جانے والا رجحان سمجھا جاتا ہے ، جس سے فروخت کا اشارہ ملتا ہے۔ رجحان کی تصدیق کے بعد ، جب قیمت کی واپسی کا انتظار کیا جاتا ہے تو ، اس میں 30 پوائنٹس اسٹاپ اور 15 پوائنٹس اسٹاپ نقصان کا خطرہ ہوتا ہے۔ حکمت عملی ایک سنگل سگنل میکانزم کا استعمال کرتی ہے ، جس میں ایک ہی وقت میں صرف ایک ہی سمت میں تجارت کی اجازت دی جاتی ہے ، جس سے نظام کی پیچیدگی کو کم کرنے اور وشوسنییتا کو بڑھانے میں مدد ملتی ہے۔

اسٹریٹجک فوائد

  1. سگنل کی وضاحت: ٹریڈنگ سگنل کے طور پر یکساں کراسنگ کا استعمال کرتے ہوئے ، قواعد سادہ اور واضح ہیں ، ان پر عمل درآمد اور نگرانی آسان ہے
  2. خطرے کو کنٹرول کریں: فکسڈ اسٹاپ نقصان کی پوزیشنوں کے ساتھ ، ہر تجارت کے خطرے کو مؤثر طریقے سے کنٹرول کیا جاسکتا ہے
  3. ٹرینڈ ٹریکنگ: ایکویریم کراسنگ اور قیمتوں میں واپسی کے ساتھ ، رجحانات کے رجحانات کو بہتر طور پر پکڑنے کے لئے
  4. اعلی درجے کی آٹومیشن: حکمت عملی کی منطق واضح ہے اور خود کار طریقے سے تجارت کرنے کے لئے پروگرام کرنا آسان ہے
  5. لچکدار: مختلف تجارتی اقسام کے لئے موزوں ، خاص طور پر زیادہ اتار چڑھاؤ والی اقسام

اسٹریٹجک رسک

  1. زلزلے کا خطرہ: زلزلے کے بازاروں میں اکثر غلط سگنل پیدا ہوسکتے ہیں
  2. سلائڈ پوائنٹ کا خطرہ: مارکیٹ میں شدید اتار چڑھاو کے دوران بڑے پیمانے پر سلائڈ پوائنٹس کا سامنا کرنا پڑ سکتا ہے
  3. اسٹاپ نقصان کا خطرہ: بعض مارکیٹ کے حالات میں اسٹاپ نقصان کی مقررہ حد لچکدار نہیں ہوسکتی ہے۔
  4. سگنل کی تاخیر: اوسط لائن کراس سگنل میں کچھ تاخیر ہوتی ہے ، جو ممکنہ طور پر بہترین نقطہ اندراج سے محروم ہوجاتا ہے
  5. فنڈ مینجمنٹ کا خطرہ: ہر ٹرانزیکشن میں فنڈز کے تناسب پر مناسب کنٹرول کی ضرورت ہے

حکمت عملی کی اصلاح کی سمت

  1. متحرک اسٹاپ: مارکیٹ میں اتار چڑھاو کی رفتار کے مطابق اسٹاپ پوزیشن کو متحرک طور پر ایڈجسٹ کرنے پر غور کیا جاسکتا ہے
  2. سگنل فلٹرنگ: غلط سگنل کو فلٹر کرنے کے لئے ٹرانزیکشن ، اتار چڑھاؤ اور دیگر معاون اشارے میں اضافہ کریں
  3. ٹائم فلٹرنگ: ٹریڈنگ کے اوقات میں فلٹرنگ کو بڑھانا ، شدید اتار چڑھاؤ کے اوقات سے گریز کرنا
  4. پوزیشن مینجمنٹ: رجحانات کو برقرار رکھنے کے لئے کچھ پوزیشنوں کو برقرار رکھنے کی اجازت دینے کے لئے جزوی روک تھام کا طریقہ کار شامل کیا گیا ہے
  5. فنڈ مینجمنٹ: متحرک فنڈ مینجمنٹ سسٹم میں اضافہ ، جو اکاؤنٹ کے خالص مالیت کے مطابق خود بخود لین دین کے سائز کو ایڈجسٹ کرتا ہے

خلاصہ کریں۔

یہ حکمت عملی EMA اوسط لائن کراسنگ اور قیمت کی واپسی کے ساتھ مل کر ایک مکمل ٹریڈنگ سسٹم بناتی ہے۔ حکمت عملی کا ڈیزائن سادہ اور بدیہی ہے ، خطرے پر قابو پانے کے لئے واضح ہے ، اور زیادہ اتار چڑھاؤ والی تجارت کی اقسام کے لئے موزوں ہے۔ معقول اصلاح اور پیرامیٹرز کی ایڈجسٹمنٹ کے ذریعہ ، اس حکمت عملی کو حقیقی تجارت میں مستحکم آمدنی حاصل کرنے کا امکان ہے۔ اس سے پہلے کہ اس کا استعمال حقیقی تجارت میں کیا جائے ، تاجروں کو مشورہ دیا جاتا ہے کہ وہ کافی حد تک واپسی کریں اور تجارت کا مظاہرہ کریں ، اور پیرامیٹرز کو حقیقی حالات کے مطابق بہتر بنائیں۔

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-11-18 00:00:00
end: 2024-11-17 00:00:00
period: 1d
basePeriod: 1d
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("30 Pips Target & 15 Pips Stop-Loss with One Signal at a Time", overlay=true)

// Define settings for target and stop-loss in pips
target_in_pips = 30
stoploss_in_pips = 10

// Convert pips to price value based on market (for forex, 1 pip = 0.0001 for major pairs like GBP/JPY)
pip_value = syminfo.mintick * 10  // For forex, 1 pip = 0.0001 or 0.01 for JPY pairs
target_value = target_in_pips * pip_value
stoploss_value = stoploss_in_pips * pip_value

// Define EMAs (10-EMA and 26-EMA) for the crossover strategy
ema10 = ta.ema(close, 10)
ema26 = ta.ema(close, 26)

// Buy signal: when 10 EMA crosses above 26 EMA
longCondition = ta.crossover(ema10, ema26)
// Sell signal: when 10 EMA crosses below 26 EMA
shortCondition = ta.crossunder(ema10, ema26)

// Define price levels with explicit type float
var float long_entry_price = na
var float long_take_profit = na
var float long_stop_loss = na
var float short_entry_price = na
var float short_take_profit = na
var float short_stop_loss = na

// Variable to track if a trade is active
var bool inTrade = false

// Check if the trade hit stop loss or take profit
if (inTrade)
    if (not na(long_take_profit) and close >= long_take_profit)
        inTrade := false  // Exit the trade after hitting target
        long_entry_price := na
        long_take_profit := na
        long_stop_loss := na
        strategy.close("Long")

    if (not na(long_stop_loss) and close <= long_stop_loss)
        inTrade := false  // Exit the trade after hitting stoploss
        long_entry_price := na
        long_take_profit := na
        long_stop_loss := na
        strategy.close("Long")

    if (not na(short_take_profit) and close <= short_take_profit)
        inTrade := false  // Exit the trade after hitting target
        short_entry_price := na
        short_take_profit := na
        short_stop_loss := na
        strategy.close("Short")

    if (not na(short_stop_loss) and close >= short_stop_loss)
        inTrade := false  // Exit the trade after hitting stoploss
        short_entry_price := na
        short_take_profit := na
        short_stop_loss := na
        strategy.close("Short")

// Only generate new signals if not already in a trade
if (not inTrade)
    if (longCondition)
        long_entry_price := close
        long_take_profit := close + target_value
        long_stop_loss := close - stoploss_value
        strategy.entry("Long", strategy.long)  // Enter a long trade
        strategy.exit("Take Profit/Stop Loss", "Long", limit=long_take_profit, stop=long_stop_loss)
        inTrade := true  // Mark trade as active

    if (shortCondition)
        short_entry_price := close
        short_take_profit := close - target_value
        short_stop_loss := close + stoploss_value
        strategy.entry("Short", strategy.short)  // Enter a short trade
        strategy.exit("Take Profit/Stop Loss", "Short", limit=short_take_profit, stop=short_stop_loss)
        inTrade := true  // Mark trade as active

// Plot the levels on the chart only when in a trade
plot(inTrade and not na(long_take_profit) ? long_take_profit : na, color=color.green, linewidth=2, style=plot.style_linebr, title="Take Profit (Long)")
plot(inTrade and not na(long_stop_loss) ? long_stop_loss : na, color=color.red, linewidth=2, style=plot.style_linebr, title="Stop Loss (Long)")

plot(inTrade and not na(short_take_profit) ? short_take_profit : na, color=color.green, linewidth=2, style=plot.style_linebr, title="Take Profit (Short)")
plot(inTrade and not na(short_stop_loss) ? short_stop_loss : na, color=color.red, linewidth=2, style=plot.style_linebr, title="Stop Loss (Short)")

plotshape(series=longCondition and not inTrade, title="Buy Signal", location=location.belowbar, color=color.green, style=shape.labelup, text="Buy")
plotshape(series=shortCondition and not inTrade, title="Sell Signal", location=location.abovebar, color=color.red, style=shape.labeldown, text="Sell")