متحرک اوپر کی طرف ADX رجحان کی پیروی کرنے والی حکمت عملی


تخلیق کی تاریخ: 2023-12-11 17:18:32 آخر میں ترمیم کریں: 2023-12-11 17:18:32
کاپی: 0 کلکس کی تعداد: 433
1
پر توجہ دیں
1212
پیروکار

متحرک اوپر کی طرف ADX رجحان کی پیروی کرنے والی حکمت عملی

جائزہ

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

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

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

خاص طور پر ، حکمت عملی میں داخلے کے فیصلے میں درج ذیل شرائط شامل ہیں:

  1. ADX پر مقررہ حد سے گزرنا ((جیسے 10)
  2. ADX تیزی سے اوپر
  3. قیمت پر سادہ منتقل اوسط یا اشاریہ منتقل اوسط پہننا

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

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

طاقت کا تجزیہ

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

اس کے علاوہ ، حکمت عملی میں ایک متحرک اوسط بھی شامل ہے جو اس کی مدد سے اس کی استحکام کو بہتر بنانے کے لئے کچھ غلط تشخیصوں کو مؤثر طریقے سے فلٹر کرسکتا ہے۔

خطرہ اور اصلاحی تجزیہ

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

اس کے علاوہ ، رجحانات کے بارے میں ADX اشارے 100 فیصد درست نہیں ہیں ، اور اس کی وجہ سے کچھ غلط تشخیص بھی ہوسکتی ہے۔ اگرچہ چلتی اوسط متعارف کرانے سے کچھ شور کو فلٹر کیا جاسکتا ہے ، لیکن اس میں مزید اصلاح کی ضرورت ہے۔

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

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-12-03 00:00:00
end: 2023-12-10 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © dhilipthegreat

//@version=4
//Rising ADX strategy

strategy(title="Rising ADX strategy", overlay=false)

adxlen = input(14, title="ADX Length", minval=1)
threshold = input(10, title="threshold", minval=5)

hline(threshold, color=color.black, linestyle=hline.style_dashed)

atype = input(2,minval=1,maxval=7,title="1=SMA, 2=EMA, 3=WMA, 4=HullMA")
malen=input(20, title="Moving average 1 ",minval=1, maxval=50)
avg = atype == 1 ? sma(close,malen) : atype == 2 ? ema(close,malen) : atype == 3 ? wma(close,malen) : atype == 4 ? hma(close,malen) : na

atype2 = input(2,minval=1,maxval=7,title="1=SMA, 2=EMA, 3=WMA, 4=HullMA")
malen2=input(20, title="Moving average 2",minval=1, maxval=200)
avg2 = atype2 == 1 ? sma(close,malen2) : atype2 == 2 ? ema(close,malen2) : atype2 == 3 ? wma(close,malen2) : atype2 == 4 ? hma(close,malen2) : na

//ADX&DI
dilen = 14
dirmov(len,_high,_low,_tr) =>
	up = change(_high)
	down = -change(_low)
	plusDM = na(up) ? na : (up > down and up > 0 ? up : 0)
    minusDM = na(down) ? na : (down > up and down > 0 ? down : 0)
	truerange = rma(_tr, len)
	
	plus = fixnan(100 * rma(plusDM, len) / truerange)
	minus = fixnan(100 * rma(minusDM, len) / truerange)

	[plus, minus]

adx(dilen, adxlen,_high,_low,_tr) =>
	[plus, minus] = dirmov(dilen,_high,_low,_tr)
	sum = plus + minus
	adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxlen)

[plus, minus] = dirmov(dilen,high,low,tr)
sig = adx(dilen, adxlen,high,low,tr)
prev_sig = adx(dilen, adxlen,high[1],low[1],tr)
plot(sig ? sig : na, color = rising(sig, 1) ? color.lime : falling(sig, 1) ? color.orange : color.purple, title="ADX",linewidth=2)

//////
longCondition=  sig > threshold  and rising(sig, 1) and falling(prev_sig, 1) and close > avg and close > avg2
barcolor(longCondition ? color.yellow: na)
Long_side = input(true, "Long side")
if Long_side
    strategy.entry(id="Long", long=true,  when= longCondition  and strategy.position_size<1)
    exitCondition=  (rising(prev_sig, 1) and falling(sig, 1)) or close < avg and close < avg2
    strategy.close(id="Long",comment="L exit",    qty=strategy.position_size ,   when= exitCondition)   //close all

shortCondition=  sig > threshold  and rising(sig, 1) and falling(prev_sig, 1) and close < avg and close < avg2
barcolor(shortCondition ? color.gray: na)
Short_side = input(true, "Short side")
if Short_side
    strategy.entry(id="Short", long=false,  when= shortCondition  and strategy.position_size<1)
    sell_exitCondition=  (rising(prev_sig, 1) and falling(sig, 1)) or close > avg and close > avg2
    strategy.close(id="Short",comment="S exit",    qty=strategy.position_size ,   when= sell_exitCondition)   //close all

barcolor(strategy.position_size>1 ? color.lime: na)
bgcolor(strategy.position_size>1 ? color.lime: na)

barcolor(strategy.position_size<0 ? color.orange: na)
bgcolor(strategy.position_size<0 ? color.orange: na)