ملٹی ٹائم اسکیل SMA ٹرینڈ ٹریکنگ اور ڈائنامک اسٹاپ نقصان کی حکمت عملی

SMA Trend
تخلیق کی تاریخ: 2024-06-03 10:57:05 آخر میں ترمیم کریں: 2024-06-03 10:57:05
کاپی: 3 کلکس کی تعداد: 553
1
پر توجہ دیں
1617
پیروکار

ملٹی ٹائم اسکیل SMA ٹرینڈ ٹریکنگ اور ڈائنامک اسٹاپ نقصان کی حکمت عملی

جائزہ

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

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

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

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

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

اسٹریٹجک رسک

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

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

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2024-05-01 00:00:00
end: 2024-05-31 23:59:59
period: 6h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=5
strategy("market slayer v3", overlay=true)

// Input parameters
showConfirmationTrend = input(title='Show Trend', defval=true)
confirmationTrendTimeframe = input.timeframe(title='Main Trend', defval='240')
confirmationTrendValue = input(title='Main Trend Value', defval=2)
showConfirmationBars = input(title='Show Confirmation Bars', defval=true)
topCbarValue = input(title='Top Confirmation Value', defval=60)
short_length = input.int(10, minval=1, title="Short SMA Length")
long_length = input.int(20, minval=1, title="Long SMA Length")
takeProfitEnabled = input(title="Take Profit Enabled", defval=false)
takeProfitValue = input.float(title="Take Profit (points)", defval=20, minval=1)
stopLossEnabled = input(title="Stop Loss Enabled", defval=false)
stopLossValue = input.float(title="Stop Loss (points)", defval=50, minval=1)

// Calculate SMAs
short_sma = ta.sma(close, short_length)
long_sma = ta.sma(close, long_length)

// Generate buy and sell signals based on SMAs
buy_signal = ta.crossover(short_sma, long_sma)
sell_signal = ta.crossunder(short_sma, long_sma)

// Plot SMAs
plot(short_sma, color=color.rgb(24, 170, 11), title="Short SMA")
plot(long_sma, color=color.red, title="Long SMA")

// Confirmation Bars
f_confirmationBarBullish(cbValue) =>
    cBarClose = close
    slowConfirmationBarSmaHigh = ta.sma(high, cbValue)
    slowConfirmationBarSmaLow = ta.sma(low, cbValue)
    slowConfirmationBarHlv = int(na)
    slowConfirmationBarHlv := cBarClose > slowConfirmationBarSmaHigh ? 1 : cBarClose < slowConfirmationBarSmaLow ? -1 : slowConfirmationBarHlv[1]
    slowConfirmationBarSslDown = slowConfirmationBarHlv < 0 ? slowConfirmationBarSmaHigh : slowConfirmationBarSmaLow
    slowConfirmationBarSslUp = slowConfirmationBarHlv < 0 ? slowConfirmationBarSmaLow : slowConfirmationBarSmaHigh
    slowConfirmationBarSslUp > slowConfirmationBarSslDown

fastConfirmationBarBullish = f_confirmationBarBullish(topCbarValue)
fastConfirmationBarBearish = not fastConfirmationBarBullish
fastConfirmationBarClr = fastConfirmationBarBullish ? color.green : color.red

fastConfirmationChangeBullish = fastConfirmationBarBullish and fastConfirmationBarBearish[1]
fastConfirmationChangeBearish = fastConfirmationBarBearish and fastConfirmationBarBullish[1]

confirmationTrendBullish = request.security(syminfo.tickerid, confirmationTrendTimeframe, f_confirmationBarBullish(confirmationTrendValue), lookahead=barmerge.lookahead_on)
confirmationTrendBearish = not confirmationTrendBullish
confirmationTrendClr = confirmationTrendBullish ? color.green : color.red

// Plot trend labels
plotshape(showConfirmationTrend, style=shape.square, location=location.top, color=confirmationTrendClr, title='Trend Confirmation Bars')
plotshape(showConfirmationBars and (fastConfirmationChangeBullish or fastConfirmationChangeBearish), style=shape.triangleup, location=location.top, color=fastConfirmationChangeBullish ? color.green : color.red, title='Fast Confirmation Bars')
plotshape(showConfirmationBars and buy_signal and confirmationTrendBullish, style=shape.triangleup, location=location.top, color=color.green, title='Buy Signal')
plotshape(showConfirmationBars and sell_signal and confirmationTrendBearish, style=shape.triangledown, location=location.top, color=color.red, title='Sell Signal')

// Generate trade signals
buy_condition = buy_signal and confirmationTrendBullish and not (strategy.opentrades > 0)
sell_condition = sell_signal and confirmationTrendBearish and not (strategy.opentrades > 0)

strategy.entry("Buy", strategy.long, when=buy_condition, comment ="BUY CALLS")
strategy.entry("Sell", strategy.short, when=sell_condition, comment ="BUY PUTS")

// Take Profit
if (takeProfitEnabled)
    strategy.exit("Take Profit Buy", from_entry="Buy", profit=takeProfitValue)
    strategy.exit("Take Profit Sell", from_entry="Sell", profit=takeProfitValue)

// Stop Loss
if (stopLossEnabled)
    strategy.exit("Stop Loss Buy", from_entry="Buy", loss=stopLossValue)
    strategy.exit("Stop Loss Sell", from_entry="Sell", loss=stopLossValue)

// Close trades based on trend confirmation bars
if strategy.opentrades > 0
    if strategy.position_size > 0
        if not confirmationTrendBullish
            strategy.close("Buy", comment ="CLOSE CALLS")
    else
        if not confirmationTrendBearish
            strategy.close("Sell", comment ="CLOSE PUTS")

// Define alert conditions as booleans
buy_open_alert = buy_condition
sell_open_alert = sell_condition
buy_closed_alert = strategy.opentrades < 0
sell_closed_alert = strategy.opentrades > 0

// Alerts
alertcondition(buy_open_alert, title='Buy calls', message='Buy calls Opened')
alertcondition(sell_open_alert, title='buy puts', message='buy Puts Opened')
alertcondition(buy_closed_alert, title='exit calls', message='exit calls ')
alertcondition(sell_closed_alert, title='exit puts', message='exit puts Closed')