سپر ٹرینڈ ٹریڈنگ کی حکمت عملی اوسط حقیقی رینج (اے ٹی آر) اور چلتی اوسط (ایم اے) پر مبنی ایک رجحان کی پیروی کرنے والی حکمت عملی ہے۔ اس میں رجحان کی پیروی اور بریک آؤٹ ٹریڈنگ دونوں کے فوائد شامل ہیں تاکہ انٹرمیڈیٹ ٹرینڈ سمت کی نشاندہی کی جاسکے اور رجحان کی تبدیلیوں کی بنیاد پر تجارتی سگنل تیار کیے جاسکیں۔
اس حکمت عملی کے پیچھے بنیادی خیال یہ ہے کہ جب قیمت سپر ٹرینڈ چینل سے گزرتی ہے تو طویل یا مختصر ہوجاتا ہے ، جو رجحان کی تبدیلی کی نشاندہی کرتا ہے۔ یہ منافع میں مقفل ہونے اور خطرات پر قابو پانے کے ل stop اسٹاپ نقصان اور منافع کی سطح بھی طے کرتا ہے۔
سپر ٹرینڈ کے حساب میں کئی مراحل شامل ہیں:
اس حکمت عملی کا فائدہ یہ ہے کہ یہ رجحان کی پیروی اور رجحان کی الٹ کی تکنیک دونوں کو جوڑتا ہے۔ یہ اہم رجحان کی نشاندہی کرتا ہے جبکہ بروقت طریقے سے الٹ کے مواقع کو بھی حاصل کرنے کے قابل ہوتا ہے۔ اس کے علاوہ ، اسٹاپ نقصان / منافع لینے کا طریقہ کار خطرات پر قابو پانے میں مدد کرتا ہے۔
سپر ٹرینڈ حکمت عملی میں مندرجہ ذیل طاقتیں ہیں:
1۔ انٹرمیڈیٹ ٹرینڈ کو ٹریک کریں
سپر ٹرینڈ چینل کا حساب اے ٹی آر کی بنیاد پر کیا جاتا ہے ، جو مؤثر طریقے سے درمیانی قیمت کی اتار چڑھاؤ کی حد کو ظاہر کرتا ہے۔ یہ سادہ چلتی اوسط سے بہتر درمیانی رجحان کی پیروی کرتا ہے۔
2۔ وقت پر تبدیلیوں کا پتہ لگائیں
چینل سے قیمتوں میں توڑنے سے تیزی سے تجارتی سگنل پیدا ہوتے ہیں تاکہ اہم رجحان کی تبدیلیوں کو وقت پر پکڑا جاسکے۔ اس سے رکاوٹوں سے بچنے کے لئے مناسب دوبارہ پوزیشننگ کی اجازت ملتی ہے۔
3۔ سٹاپ نقصان اور منافع حاصل کریں
یہ حکمت عملی پہلے سے طے شدہ اسٹاپ نقصان اور خطرہ کنٹرول کے ساتھ خود کار طریقے سے باہر نکلنے کے لئے منافع کی سطح طے کرتی ہے۔ اس سے بہت زیادہ اسٹاپ نقصان کا خطرہ نمایاں طور پر کم ہوتا ہے اور بہتر رجحان کی پیروی کی اجازت ملتی ہے۔
4. عمل میں لانا آسان
یہ حکمت عملی بنیادی طور پر بنیادی اشارے جیسے ایم اے اور اے ٹی آر کا استعمال کرتی ہے۔ اس سے براہ راست تجارت کے لئے سمجھنے اور لاگو کرنا کافی آسان ہوجاتا ہے۔
**5. سرمایہ کاری کی اعلی کارکردگی **
انٹرمیڈیٹ رجحانات کو ٹریک کرنے اور انفرادی سلائپ کو کنٹرول کرنے سے، سپر ٹرینڈ حکمت عملی مجموعی طور پر اعلی سرمایہ کاری کی کارکردگی فراہم کرتی ہے.
سپر ٹرینڈ کی حکمت عملی میں بھی کچھ ممکنہ کمزوریاں ہیں:
1۔ مارکیٹ میں کم کارکردگی
یہ حکمت عملی درمیانی سے طویل مدتی رجحان کی تجارت پر مرکوز ہے۔ اس میں مختلف یا مستحکم مارکیٹوں میں ، یہ کم کارکردگی کا مظاہرہ کرنے کا رجحان رکھتا ہے جس میں مختصر تجارتوں کی کمی کی زیادہ قیمت ہوتی ہے۔
2. پیرامیٹر کی اصلاح کے لئے حساس
اے ٹی آر مدت اور ضرب کے لئے منتخب کردہ اقدار کا حکمت عملی کی کارکردگی پر نسبتا large بڑا اثر پڑتا ہے۔ پیرامیٹرز کی نامناسب ترتیب سے تجارتی سگنل کی تاثیر کو نقصان پہنچا سکتا ہے۔
3۔ تاخیر کے مسائل ہو سکتے ہیں
سپر ٹرینڈ چینل کے حساب سے کچھ تاخیر ہوسکتی ہے ، جس کی وجہ سے غیر وقت پر سگنل کی پیداوار ہوتی ہے۔ تاخیر کے مسئلے کو حل کرنا اولین ترجیح ہونی چاہئے۔
سخت سٹاپ نقصان کے انتظام کی ضرورت ہے
انتہائی مارکیٹ کے حالات میں ، غیر مناسب طور پر بڑے اسٹاپ نقصان کی رعایت یا ناکافی رسک مینجمنٹ سے بڑے نقصانات ہوسکتے ہیں۔ اسٹاپ نقصان کے قواعد پر سختی سے عمل کرنا مستقل منافع بخش ہونے کے لئے ضروری ہے۔
اس سپر ٹرینڈ حکمت عملی کو بہتر بنانے کے لئے مزید گنجائش ہے:
1۔ متعدد اے ٹی آر ادوار کو یکجا کریں
10 دن اور 20 دن کی طرح مختلف ادوار میں اے ٹی آر ریڈنگ کو ملا کر ایک جامع اشارے کی تشکیل کی جاتی ہے ، جو حساسیت اور پسماندہ مسائل کو بہتر بنانے میں مدد کرتا ہے۔
2. سٹاپ نقصان ماڈیولز شامل کریں
مزید نفیس سٹاپ نقصان کے طریقہ کار جیسے ٹرپل سٹاپ نقصان، اتار چڑھاؤ سٹاپ نقصان اور ترتیب وار سٹاپ نقصان کو شامل کرنے سے خطرے کے کنٹرول اور ڈراؤونگ میں کمی کو مضبوط کیا جاسکتا ہے۔
پیرامیٹر کی اصلاح
مقداری طریقوں کے ذریعے اے ٹی آر مدت ، ضرب اور دیگر ان پٹ کے لئے اقدار کو بہتر بنانا حکمت عملی کی کارکردگی کو مزید بڑھا دے گا۔ پیرامیٹرز کو مختلف مصنوعات اور مارکیٹ کے نظام کی بنیاد پر متحرک طور پر بھی ایڈجسٹ کیا جاسکتا ہے۔
4۔ مشین لرننگ ماڈلز کو مربوط کریں
آخر میں ، مشین لرننگ ماڈلز کو مربوط کرنے سے خودکار رجحان کی شناخت اور سگنل کی تخلیق کا احساس ہوسکتا ہے ، جس سے ذہنی فیصلوں پر انحصار کم ہوجاتا ہے اور سسٹم کے استحکام میں اضافہ ہوتا ہے۔
سپر ٹرینڈ ٹریڈنگ حکمت عملی ایم اے اور اے ٹی آر اشارے کا استعمال کرتے ہوئے انٹرمیڈیٹ ٹرینڈ سمت کی نشاندہی کرتی ہے ، اور خودکار اسٹاپ نقصان / منافع حاصل کرنے کے نفاذ کے ساتھ رجحان کی تبدیلیوں کے ارد گرد تجارت میں داخل ہونے اور باہر نکلنے کے سگنل پیدا کرتی ہے۔ بڑے رجحانات کو برقرار رکھتے ہوئے ، یہ کچھ الٹ جانے کے مواقع بھی حاصل کرتی ہے۔ اہم فوائد انٹرمیڈیٹ ٹرینڈ ٹریکنگ ، رجحان کی تبدیلی کی نشاندہی اور اسٹاپ نقصان / منافع حاصل کرنے کے ذریعے رسک کنٹرول میں ہیں۔
تاہم ، حد سے محدود مارکیٹ کی گرفتاری اور پسماندگی کے مسائل کے بارے میں بھی کچھ خامیاں موجود ہیں۔ متعدد جہتوں میں مزید اصلاحات کی تلاش کی جاسکتی ہے ، بشمول جامع اے ٹی آر کا استعمال ، اسٹاپ نقصان کے ماڈیولز کو مضبوط بنانا ، ٹیوننگ پیرامیٹرز ، اور مشین لرننگ ماڈلز کو مربوط کرنا۔ ان بہتریوں سے سپر ٹرینڈ حکمت عملی کے استحکام اور کارکردگی کو بہتر بنانے کا امکان ہے۔
/*backtest start: 2022-11-30 00:00:00 end: 2023-11-30 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 strategy("Supertrend V1.0 - Buy or Sell Signal",overlay=true) Factor=input(3, minval=1,maxval = 100) Pd=input(7, minval=1,maxval = 100) //Calculating ATR atrLength = input(title="ATR Length:", defval=14, minval=1) Stop_Loss_Factor = input(1.5, minval=0,step=0.01) factor_profit = input(1.0, minval=0,step=0.01) // === INPUT BACKTEST RANGE === FromMonth = input(defval = 4, title = "From Month", minval = 1, maxval = 12) FromDay = input(defval = 10, title = "From Day", minval = 1, maxval = 31) FromYear = input(defval = 2016, title = "From Year", minval = 2009) ToMonth = input(defval = 4, title = "To Month", minval = 1, maxval = 12) ToDay = input(defval = 10, title = "To Day", minval = 1, maxval = 31) ToYear = input(defval = 2039, title = "To Year", minval = 2017) // === FUNCTION EXAMPLE === start = timestamp(FromYear, FromMonth, FromDay, 00, 00) // backtest start window finish = timestamp(ToYear, ToMonth, ToDay, 23, 59) // backtest finish window window() => time >= start and time <= finish ? true : false // create function "within window of time" // Calculate ATR atrValue=atr(atrLength) decimals = abs(log(syminfo.mintick) / log(10)) Atr = atrValue if(decimals == 5) Atr := atrValue * 10000 if(decimals == 4) Atr := atrValue * 1000 if(decimals == 3) Atr := atrValue * 100 if(decimals == 2) Atr := atrValue * 10 //VJ2 Supertrend Up=hl2-(Factor*atr(Pd)) Dn=hl2+(Factor*atr(Pd)) TrendUp = 0.0 TrendUp:=close[1]>TrendUp[1]? max(Up,TrendUp[1]) : Up TrendDown = 0.0 TrendDown:=close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : Dn Trend = 0.0 Trend := close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1) Tsl = 0.0 Tsl := Trend==1? TrendUp: TrendDown linecolor = Trend == 1 ? green : red plot(Tsl, color = linecolor , style = line , linewidth = 2,title = "SuperTrend") plotshape(cross(close,Tsl) and close>Tsl , "Up Arrow", shape.triangleup,location.belowbar,green,0,0) plotshape(cross(Tsl,close) and close<Tsl , "Down Arrow", shape.triangledown , location.abovebar, red,0,0) //plot(Trend==1 and Trend[1]==-1,color = linecolor, style = circles, linewidth = 3,title="Trend") plotarrow(Trend == 1 and Trend[1] == -1 ? Trend : na, title="Up Entry Arrow", colorup=lime, maxheight=60, minheight=50, transp=0) plotarrow(Trend == -1 and Trend[1] == 1 ? Trend : na, title="Down Entry Arrow", colordown=red, maxheight=60, minheight=50, transp=0) //Strategy Trend_buy = Trend == 1 Trend_buy_prev = Trend[1] == -1 algo_buy_pre = Trend_buy and Trend_buy_prev algo_buy = algo_buy_pre == 1 ? 1 : na Trend_sell= Trend == -1 Trend_sell_prev = Trend[1] == 1 algo_sell_pre = Trend_sell and Trend_sell_prev algo_sell = algo_sell_pre == 1 ? 1:na strategy.entry("Long1", strategy.long, when= window() and algo_buy==1) strategy.entry("Short1", strategy.short, when=window() and algo_sell==1) bought = strategy.position_size > strategy.position_size sold = strategy.position_size < strategy.position_size longStop = Stop_Loss_Factor * valuewhen(bought, Atr, 0) shortStop = Stop_Loss_Factor * valuewhen(sold, Atr, 0) longProfit = factor_profit * longStop shortProfit = factor_profit * shortStop if(decimals == 5) longStop := longStop *100000 longProfit := longProfit *100000 if(decimals == 4) longStop := longStop * 10000 longProfit := longProfit * 10000 if(decimals == 3) longStop := longStop * 1000 longProfit := longProfit * 1000 if(decimals == 2) longStop := longStop * 100 longProfit := longProfit *100 if(decimals == 5) shortStop := shortStop * 100000 shortProfit := shortProfit * 100000 if(decimals == 4) shortStop := shortStop * 10000 shortProfit := shortProfit * 10000 if(decimals == 3) shortStop := shortStop * 1000 shortProfit := shortProfit * 1000 if(decimals == 2) shortStop := shortStop * 100 shortProfit := shortProfit * 100 strategy.exit("Exit Long", from_entry = "Long1", loss =longStop, profit = longProfit) strategy.exit("Exit Short", from_entry = "Short1", loss =shortStop, profit = shortProfit)