یہ ایک بریکآؤٹ ٹریڈنگ حکمت عملی ہے جس میں مختلف ادوار کے ساتھ پیرابولک SAR اشارے اور ٹرپل ایس ایم ایم اے لائنز کا امتزاج ہوتا ہے۔ جب تینوں ایس ایم ایم اے لائنیں بڑھ رہی ہیں تو یہ لمبی ہوتی ہے اور جب سب گر رہی ہیں تو مختصر ہوجاتی ہے ، جبکہ SAR اشارے کا استعمال کرتے ہوئے رجحان کی سمت کا تعین کرنے اور جب SAR سمتوں کو پلٹاتا ہے تو انسداد رجحان اندراجات لینے کے ل. یہ حکمت عملی اسٹاپ نقصان اور منافع حاصل کرنے کو بھی شامل کرتی ہے۔
یہ حکمت عملی مندرجہ ذیل اہم نکات پر مبنی ہے:
موجودہ رجحان کی سمت کا تعین کرنے کے لئے پیرابولک SAR اشارے کا استعمال کرنا۔ SAR متحرک طور پر قیمتوں میں ہونے والی تبدیلیوں کا سراغ لگاسکتا ہے اور اوپر اور نیچے کے رجحانات کی نشاندہی کرسکتا ہے۔
مختلف ادوار کے ساتھ تین ایس ایم ایم اے لائنیں مرتب کرنا (فاسٹ لائن 21 ، مڈ لائن 50 ، سست لائن 200) ۔ جب تینوں لائنیں بڑھ رہی ہیں تو ، یہ ایک اپ ٹرینڈ کا اشارہ کرتی ہے۔ جب سب گر رہے ہیں تو ، یہ ایک ڈاؤن ٹرینڈ کا اشارہ کرتی ہے۔
جب SAR نیچے گھومتا ہے جب تینوں SMMA لائنیں بڑھ رہی ہیں.
جب SAR اوپر کی طرف پلٹ جاتا ہے جبکہ تینوں SMMA لائنیں گر رہی ہیں تو مختصر ہو جاتا ہے۔
SAR کی بنیاد پر سٹاپ نقصان شامل کرنا اور انٹری قیمت کے ایک مخصوص فیصد پر منافع لینا۔
خاص طور پر ، حکمت عملی سب سے پہلے چیک کرتی ہے کہ آیا SAR موجودہ بار پر سمتوں کو پلٹاتا ہے۔ اگر ایس ایم ایم اے بڑھتے ہوئے SAR اوپر سے نیچے کی طرف پلٹتا ہے تو ، یہ لمبا ہوجاتا ہے۔ اگر ایس ایم ایم اے گرتے ہوئے SAR نیچے سے اوپر کی طرف پلٹتا ہے تو ، یہ مختصر ہوجاتا ہے۔
لاگ ان ہونے کے بعد ، اسٹاپ نقصان کو اگلے بار پر SAR قیمت پر مقرر کیا جاتا ہے ، SAR کو متحرک ٹریلنگ اسٹاپ نقصان کے طور پر استعمال کرتے ہوئے۔ منافع حاصل کرنا لاگ ان کی قیمت کا 10٪ مقرر کیا جاتا ہے۔ جب قیمت منافع یا اسٹاپ نقصان کی سطح تک پہنچ جاتی ہے تو ، پوزیشن بند کردی جاتی ہے۔
اس حکمت عملی میں رجحان کی پیروی کرنے والے اشارے اور متعدد ٹائم فریم چلنے والی اوسط کے فوائد کو جوڑ دیا گیا ہے ، جس سے ایس ایم ایم اے کے ذریعہ جھوٹے وقفوں کو فلٹر کرتے ہوئے رجحان کی تبدیلیوں میں بروقت اندراج کی اجازت ملتی ہے۔ اہم فوائد یہ ہیں:
SAR تیزی سے رجحان کی تبدیلیوں کا پتہ لگاسکتا ہے اور الٹ جانے کے مواقع کو پکڑ سکتا ہے۔
ٹرپل ایس ایم ایم اے مؤثر طریقے سے مارکیٹ شور کو فلٹر کرتے ہیں اور جھوٹے وقفے سے بچتے ہیں.
ایس ایم ایم اے کا استعمال کرتے ہوئے ہموار منحنی خطوط اور ایم اے وپساؤ سے کم مداخلت کا نتیجہ ہوتا ہے۔
سٹاپ نقصان اور منافع لینے کو شامل کرنے سے واحد تجارت کے نقصان کو کنٹرول کرنے اور جزوی منافع میں مقفل کرنے میں مدد ملتی ہے۔
لچکدار پیرامیٹر کی ترتیبات مختلف مارکیٹوں کے لئے اصلاح کی اجازت دیتی ہیں.
اس کے علاوہ کچھ خطرات پر بھی غور کرنا چاہئے:
سی اے آر متضاد رجحانات کے دوران کثرت سے تبدیل ہوسکتا ہے ، جس سے زیادہ تجارت سے اخراجات بڑھ جاتے ہیں۔
ایس ایم ایم اے کی ترتیبات تمام آلات کو اچھی طرح سے فٹ نہیں ہوسکتی ہیں ، انفرادی اصلاح کی ضرورت ہے۔
SAR سٹاپ نقصان وقت تاخیر ہے، ممکنہ طور پر نقصانات میں اضافہ.
SAR مستحکم رجحانات میں جھوٹے وقفوں پر پلٹ سکتا ہے۔ SAR پیرامیٹرز کو ہموار کرنے میں مدد مل سکتی ہے۔
خراب ایس ایم ایم اے کی ترتیبات کھوئے ہوئے رجحانات یا خراب سگنل کا سبب بن سکتی ہیں۔ محتاط جانچ کی ضرورت ہے۔
خطرات سے نمٹنے کے لئے، اصلاحات پر توجہ مرکوز کی جا سکتی ہے:
اتار چڑھاؤ کو کم کرنے کے لئے اتار چڑھاؤ کی بنیاد پر SAR پیرامیٹرز کو ایڈجسٹ کرنا.
آلہ کی خصوصیات کو ایڈجسٹ کرنے کے لئے ایس ایم ایم اے کی مدت کو ایڈجسٹ کرنا.
سٹاپ نقصان کو بہتر بنانا، مثال کے طور پر پیچھے یا حد کے احکامات کے ساتھ.
فعال ٹریڈنگ میں سٹاپ نقصان کے لئے حد کے احکامات کا استعمال.
وسیع پیمانے پر ٹیسٹنگ اور پیرامیٹرز کی ترتیب.
مندرجہ بالا تجزیہ کی بنیاد پر، اصلاحات میں شامل ہوسکتا ہے:
ہموار منحنی خطوط اور کم پھینکنے کے لئے SAR پیرامیٹرز کو بہتر بنانا.
ایس ایم ایم اے کی لمبائی کو تجارتی آلات سے ملانے کے لئے ایڈجسٹ کرنا۔
متحرک سٹاپ نقصان کا استعمال کرتے ہوئے جیسے پیچھے رکنے یا حد کے احکامات.
ہائی فریکوئنسی ٹریڈنگ میں سٹاپ نقصان کے لئے حد کے احکامات کا استعمال کرنا۔
سگنل کے معیار کو بہتر بنانے کے لیے آر ایس آئی، کے ڈی جیسے فلٹرز کا اضافہ۔
داخلے کے حالات کو بہتر بنانا، مثال کے طور پر SAR پھینکنے کے ساتھ موم بتی کے پیٹرن کی جانچ پڑتال.
سٹاپ نقصان ٹرگرز کے بعد دوبارہ داخل ہونے کی شرائط کا اضافہ.
پیچھے رہ جانے والے، جزوی طور پر قریبی، حیران کن سطحوں کے ساتھ منافع حاصل کرنے میں اضافہ.
backtest نتائج اور حساسیت تجزیہ کی بنیاد پر پیرامیٹر کی ترتیب.
خلاصہ یہ ہے کہ ، یہ ایک سادہ اور عملی بریک آؤٹ حکمت عملی ہے جس میں رجحان کی تبدیلیوں کو پکڑنے میں SAR کی حساسیت اور چلتی اوسط کے فلٹرنگ اثر کو جوڑتا ہے۔ یہ رجحان کے الٹ پوائنٹس کی تیزی سے نشاندہی کرسکتا ہے۔ اسٹاپ نقصان اور منافع حاصل کرنے کا استعمال خطرات کو کنٹرول کرنے اور منافع میں مقفل کرنے میں مدد کرتا ہے۔ پیرامیٹر کی ترتیبات ، انٹری / ایگزٹ قوانین ، اور جھوٹے وقفوں کے خلاف استحکام پر مزید اصلاحات مختلف تجارتی آلات کے لئے حکمت عملی کی کارکردگی کو بہتر بناسکتی ہیں۔
/*backtest start: 2023-10-08 00:00:00 end: 2023-11-07 00:00:00 period: 3h basePeriod: 15m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=5 strategy(title="SAR + 3SMMA with SL & TP", overlay=true, calc_on_order_fills=false, calc_on_every_tick=false, default_qty_type=strategy.percent_of_equity, default_qty_value=100, currency=currency.USD, commission_type= strategy.commission.percent, commission_value=0.03) start = input.float(0.02, step=0.01, group="SAR") increment = input.float(0.02, step=0.01, group="SAR") maximum = input.float(0.2, step=0.01, group="SAR") //Take Profit Inputs take_profit = input.float(title="Take Profit (%)", minval=0.0, step=0.1, defval = 0.1, group="Stop Loss and Take Profit", inline="TP") * 0.01 //Stop Loss Inputs stop_loss = input.float(title="StopLoss (%)", minval=0.0, step=0.1, defval=1, group="Stop Loss and Take Profit", inline="SL") * 0.01 // Smooth Moving Average fastSmmaLen = input.int(21, minval=1, title="Fast Length", group = "Smooth Moving Average") midSmmaLen = input.int(50, minval=1, title="Mid Length", group = "Smooth Moving Average") slowSmmaLen = input.int(200, minval=1, title="Slow Length", group = "Smooth Moving Average") src = input(close, title="Source", group = "Smooth Moving Average") smma(ma, src, len) => smma = 0.0 smma := na(smma[1]) ? ma : (smma[1] * (len - 1) + src) / len smma fastSma = ta.sma(src, fastSmmaLen) midSma = ta.sma(src, midSmmaLen) slowSma = ta.sma(src, slowSmmaLen) fastSmma = smma(fastSma, src, fastSmmaLen) midSmma = smma(midSma, src, midSmmaLen) slowSmma = smma(slowSma, src, slowSmmaLen) isSmmaUpward = ta.rising(fastSmma, 1) and ta.rising(midSmma, 1) and ta.rising(slowSmma, 1) var bool uptrend = na var float EP = na var float SAR = na var float AF = start var float nextBarSAR = na if bar_index > 0 firstTrendBar = false SAR := nextBarSAR if bar_index == 1 float prevSAR = na float prevEP = na lowPrev = low[1] highPrev = high[1] closeCur = close closePrev = close[1] if closeCur > closePrev uptrend := true EP := high prevSAR := lowPrev prevEP := high else uptrend := false EP := low prevSAR := highPrev prevEP := low firstTrendBar := true SAR := prevSAR + start * (prevEP - prevSAR) if uptrend if SAR > low firstTrendBar := true uptrend := false SAR := math.max(EP, high) EP := low AF := start else if SAR < high firstTrendBar := true uptrend := true SAR := math.min(EP, low) EP := high AF := start if not firstTrendBar if uptrend if high > EP EP := high AF := math.min(AF + increment, maximum) else if low < EP EP := low AF := math.min(AF + increment, maximum) if uptrend SAR := math.min(SAR, low[1]) if bar_index > 1 SAR := math.min(SAR, low[2]) else SAR := math.max(SAR, high[1]) if bar_index > 1 SAR := math.max(SAR, high[2]) nextBarSAR := SAR + AF * (EP - SAR) sarIsUpTrend = uptrend ? true : false sarFlippedDown = sarIsUpTrend and not sarIsUpTrend[1] ? true : false sarFlippedUp = not sarIsUpTrend and sarIsUpTrend[1] ? true : false longEntryCondition = isSmmaUpward and sarFlippedDown shortEntryCondition = not isSmmaUpward and sarFlippedUp if(longEntryCondition) strategy.entry("L", strategy.long, stop=nextBarSAR, comment="L") if(shortEntryCondition) strategy.entry("S", strategy.short, stop=nextBarSAR, comment="S") strategy.exit("CL", when=strategy.position_size > 0, limit=strategy.position_avg_price * (1+take_profit), stop=strategy.position_avg_price*(1-stop_loss)) strategy.exit("CS", when=strategy.position_size < 0, limit=strategy.position_avg_price * (1-take_profit), stop=strategy.position_avg_price*(1+stop_loss)) plot(SAR, style=plot.style_cross, linewidth=1, color=color.orange) plot(nextBarSAR, style=plot.style_cross, linewidth=1, color=color.aqua) plot(series = fastSmma, title="fastSmma", linewidth=1) plot(series = midSmma, title="midSmma", linewidth=2) plot(series = slowSmma, title="slowSmma", linewidth=3) plotchar(series = isSmmaUpward, title="isSmmaUpward", char='') plotchar(series=sarIsUpTrend, title="sarIsUpTrend", char='') plotchar(series=sarFlippedUp, title="sarFlippedUp", char='') plotchar(series=sarFlippedDown, title="sarFlippedDown", char='') plotchar(series=longEntryCondition, title="longEntryCondition", char='') plotchar(series=shortEntryCondition, title="shortEntryCondition", char='') plotchar(series=strategy.position_size > 0, title="inLong", char='') plotchar(series=strategy.position_size < 0, title="inShort", char='') //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr)