وسائل لوڈ ہو رہے ہیں... لوڈنگ...

پیرابولک SAR متحرک بریک آؤٹ ٹرپل ایس ایم ایم اے حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-11-08 11:53:09
ٹیگز:

img

جائزہ

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

حکمت عملی منطق

یہ حکمت عملی مندرجہ ذیل اہم نکات پر مبنی ہے:

  1. موجودہ رجحان کی سمت کا تعین کرنے کے لئے پیرابولک SAR اشارے کا استعمال کرنا۔ SAR متحرک طور پر قیمتوں میں ہونے والی تبدیلیوں کا سراغ لگاسکتا ہے اور اوپر اور نیچے کے رجحانات کی نشاندہی کرسکتا ہے۔

  2. مختلف ادوار کے ساتھ تین ایس ایم ایم اے لائنیں مرتب کرنا (فاسٹ لائن 21 ، مڈ لائن 50 ، سست لائن 200) ۔ جب تینوں لائنیں بڑھ رہی ہیں تو ، یہ ایک اپ ٹرینڈ کا اشارہ کرتی ہے۔ جب سب گر رہے ہیں تو ، یہ ایک ڈاؤن ٹرینڈ کا اشارہ کرتی ہے۔

  3. جب SAR نیچے گھومتا ہے جب تینوں SMMA لائنیں بڑھ رہی ہیں.

  4. جب SAR اوپر کی طرف پلٹ جاتا ہے جبکہ تینوں SMMA لائنیں گر رہی ہیں تو مختصر ہو جاتا ہے۔

  5. SAR کی بنیاد پر سٹاپ نقصان شامل کرنا اور انٹری قیمت کے ایک مخصوص فیصد پر منافع لینا۔

خاص طور پر ، حکمت عملی سب سے پہلے چیک کرتی ہے کہ آیا SAR موجودہ بار پر سمتوں کو پلٹاتا ہے۔ اگر ایس ایم ایم اے بڑھتے ہوئے SAR اوپر سے نیچے کی طرف پلٹتا ہے تو ، یہ لمبا ہوجاتا ہے۔ اگر ایس ایم ایم اے گرتے ہوئے SAR نیچے سے اوپر کی طرف پلٹتا ہے تو ، یہ مختصر ہوجاتا ہے۔

لاگ ان ہونے کے بعد ، اسٹاپ نقصان کو اگلے بار پر SAR قیمت پر مقرر کیا جاتا ہے ، SAR کو متحرک ٹریلنگ اسٹاپ نقصان کے طور پر استعمال کرتے ہوئے۔ منافع حاصل کرنا لاگ ان کی قیمت کا 10٪ مقرر کیا جاتا ہے۔ جب قیمت منافع یا اسٹاپ نقصان کی سطح تک پہنچ جاتی ہے تو ، پوزیشن بند کردی جاتی ہے۔

فوائد کا تجزیہ

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

  1. SAR تیزی سے رجحان کی تبدیلیوں کا پتہ لگاسکتا ہے اور الٹ جانے کے مواقع کو پکڑ سکتا ہے۔

  2. ٹرپل ایس ایم ایم اے مؤثر طریقے سے مارکیٹ شور کو فلٹر کرتے ہیں اور جھوٹے وقفے سے بچتے ہیں.

  3. ایس ایم ایم اے کا استعمال کرتے ہوئے ہموار منحنی خطوط اور ایم اے وپساؤ سے کم مداخلت کا نتیجہ ہوتا ہے۔

  4. سٹاپ نقصان اور منافع لینے کو شامل کرنے سے واحد تجارت کے نقصان کو کنٹرول کرنے اور جزوی منافع میں مقفل کرنے میں مدد ملتی ہے۔

  5. لچکدار پیرامیٹر کی ترتیبات مختلف مارکیٹوں کے لئے اصلاح کی اجازت دیتی ہیں.

خطرے کا تجزیہ

اس کے علاوہ کچھ خطرات پر بھی غور کرنا چاہئے:

  1. سی اے آر متضاد رجحانات کے دوران کثرت سے تبدیل ہوسکتا ہے ، جس سے زیادہ تجارت سے اخراجات بڑھ جاتے ہیں۔

  2. ایس ایم ایم اے کی ترتیبات تمام آلات کو اچھی طرح سے فٹ نہیں ہوسکتی ہیں ، انفرادی اصلاح کی ضرورت ہے۔

  3. SAR سٹاپ نقصان وقت تاخیر ہے، ممکنہ طور پر نقصانات میں اضافہ.

  4. SAR مستحکم رجحانات میں جھوٹے وقفوں پر پلٹ سکتا ہے۔ SAR پیرامیٹرز کو ہموار کرنے میں مدد مل سکتی ہے۔

  5. خراب ایس ایم ایم اے کی ترتیبات کھوئے ہوئے رجحانات یا خراب سگنل کا سبب بن سکتی ہیں۔ محتاط جانچ کی ضرورت ہے۔

خطرات سے نمٹنے کے لئے، اصلاحات پر توجہ مرکوز کی جا سکتی ہے:

  1. اتار چڑھاؤ کو کم کرنے کے لئے اتار چڑھاؤ کی بنیاد پر SAR پیرامیٹرز کو ایڈجسٹ کرنا.

  2. آلہ کی خصوصیات کو ایڈجسٹ کرنے کے لئے ایس ایم ایم اے کی مدت کو ایڈجسٹ کرنا.

  3. سٹاپ نقصان کو بہتر بنانا، مثال کے طور پر پیچھے یا حد کے احکامات کے ساتھ.

  4. فعال ٹریڈنگ میں سٹاپ نقصان کے لئے حد کے احکامات کا استعمال.

  5. وسیع پیمانے پر ٹیسٹنگ اور پیرامیٹرز کی ترتیب.

اصلاح کی ہدایات

مندرجہ بالا تجزیہ کی بنیاد پر، اصلاحات میں شامل ہوسکتا ہے:

  1. ہموار منحنی خطوط اور کم پھینکنے کے لئے SAR پیرامیٹرز کو بہتر بنانا.

  2. ایس ایم ایم اے کی لمبائی کو تجارتی آلات سے ملانے کے لئے ایڈجسٹ کرنا۔

  3. متحرک سٹاپ نقصان کا استعمال کرتے ہوئے جیسے پیچھے رکنے یا حد کے احکامات.

  4. ہائی فریکوئنسی ٹریڈنگ میں سٹاپ نقصان کے لئے حد کے احکامات کا استعمال کرنا۔

  5. سگنل کے معیار کو بہتر بنانے کے لیے آر ایس آئی، کے ڈی جیسے فلٹرز کا اضافہ۔

  6. داخلے کے حالات کو بہتر بنانا، مثال کے طور پر SAR پھینکنے کے ساتھ موم بتی کے پیٹرن کی جانچ پڑتال.

  7. سٹاپ نقصان ٹرگرز کے بعد دوبارہ داخل ہونے کی شرائط کا اضافہ.

  8. پیچھے رہ جانے والے، جزوی طور پر قریبی، حیران کن سطحوں کے ساتھ منافع حاصل کرنے میں اضافہ.

  9. 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)



مزید