دوہری حرکت پذیر اوسط رجحان ٹریکنگ کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-12-21 11:45:35
ٹیگز:

img

جائزہ

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

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

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

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

خاص طور پر اسٹریٹیجی کے سگنل جنریشن کے قواعد یہ ہیں:

  1. جب تیز رفتار لائن سست لائن سے اوپر ہوتی ہے تو لمبا اور جب تیز رفتار لائن سست لائن سے نیچے ہوتی ہے تو مختصر ہوتا ہے
  2. صرف اس صورت میں طویل اور مختصر کی اجازت دیں جب ADX>25 ہو

یہ مؤثر طریقے سے کمزور رجحان کی طاقت کے ساتھ غلط سگنل کو فلٹر کر سکتا ہے، تجارتی نظام کے استحکام کو مزید بہتر بناتا ہے.

حکمت عملی کے فوائد

اس حکمت عملی کے مندرجہ ذیل اہم فوائد ہیں:

  1. درمیانی اور طویل مدتی قیمتوں کے رجحانات کو ظاہر کرتا ہے: دوہری ای ایم اے نظام درمیانی اور طویل مدتی قیمتوں کے رجحانات کو مؤثر طریقے سے طے کرسکتا ہے اور قلیل مدتی مارکیٹ شور سے مداخلت سے بچ سکتا ہے۔

  2. جھوٹے بریکآؤٹس فلٹر کرتا ہے: اے ڈی ایکس اشارے کے ذریعے رجحان کی طاقت کا اندازہ لگاتے ہوئے ، یہ رجحان کے موڑ کے مقامات کے ارد گرد جھوٹے بریک آؤٹ کی وجہ سے ہونے والے غیر ضروری نقصانات سے بچتا ہے۔

  3. بڑی پیرامیٹر کی اصلاح کی جگہ: تیز رفتار اور سست لائن پیرامیٹرز، ADX پیرامیٹرز اور زیادہ سے زیادہ اصلاحات کے لئے گنجائش ہے جو پیرامیٹر کے مجموعے کے ذریعے بہتر تجارتی نتائج فراہم کرسکتے ہیں.

  4. اعلی موافقت: یہ حکمت عملی زیادہ تر اسٹاک اور ٹائم فریم کے لئے موزوں ہے، اور مختلف مارکیٹوں میں تصدیق کی گئی ہے.

  5. لاگو کرنے میں آسان: اس حکمت عملی میں صرف سادہ چلتی اوسط اشارے کی ضرورت ہوتی ہے، کم وسائل استعمال کرتا ہے، پروگرام کرنے میں آسان ہے، اور عملی درخواست کی کم لاگت ہے.

اسٹریٹجی کے خطرات

اس حکمت عملی میں کچھ خطرات بھی شامل ہیں ، جو بنیادی طور پر مندرجہ ذیل شعبوں میں مرکوز ہیں:

  1. رجحان کی تبدیلی کا خطرہ: کوئی بھی رجحان کی حکمت عملی رجحان کے الٹ پوائنٹس کو کامل طور پر طے نہیں کرسکتی ہے ، اور جب اصل رجحان اصل میں الٹ جاتا ہے تو اس کے بڑے نقصانات ہونے کا امکان ہے۔

  2. زیادہ سے زیادہ اصلاح کا خطرہ: پیرامیٹرز کو انتہائی حد تک بہتر بنانا بھی حکمت عملی کو تاریخی اعداد و شمار سے زیادہ فٹ ہونے کا باعث بن سکتا ہے ، جس سے حکمت عملی کا استحکام اور عملی اثر کم ہوگا۔

  3. بلیک سوان واقعہ کا خطرہ: اہم غیر متوقع واقعات اصل قیمت رجحان ماڈل کو توڑ دیں گے، جس کی وجہ سے حرکت پذیر اوسط اشارے میں ناکامی ہوگی، نقصانات کو کنٹرول کرنے کے لئے دستی مداخلت یا سٹاپ نقصان کی ترتیبات کی ضرورت ہوگی.

مذکورہ بالا خطرات سے نمٹنے کے لئے ، ہم مندرجہ ذیل پہلوؤں سے اصلاح کرسکتے ہیں:

  1. قیمتوں میں موڑ کے مقامات کا تعین کرنے کے لئے اضافی اشارے متعارف کروائیں۔ مثال کے طور پر ، تجارتی حجم متعارف کروائیں ، جو قیمتوں میں موڑ کے مقامات ظاہر ہونے پر بڑھے گا۔

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

  3. پیرامیٹر کے مجموعوں کی کثیر گروپ کی تربیت اور جانچ کریں ، اور اچھے استحکام اور عملی اثر کے ساتھ مجموعوں کا انتخاب کریں۔ اس سے واحد پیرامیٹر گروپوں کے زیادہ سے زیادہ اصلاح کے خطرات سے بچنا ہے۔

حکمت عملی کی اصلاح کے لئے ہدایات

اس حکمت عملی کو بہتر بنانے کے لئے کچھ سمتیں بھی ہیں:

  1. سٹاپ نقصان کے طریقہ کار متعارف کروائیں: متحرک سٹاپ نقصان یا فیصد سٹاپ نقصان مقرر کریں، جو بہت زیادہ نقصان سے بچنے کے لئے رجحانات کے الٹ جانے پر نقصانات کو فعال طور پر روک سکتا ہے.

  2. تجارت کے حجم کے اشارے کو یکجا کریںمثال کے طور پر تجارتی حجم، جو غلط سگنل سے بچ سکتا ہے جب قیمتوں میں موڑ کے مقامات پر تجارتی حجم میں اضافہ ہوتا ہے۔

  3. پیرامیٹر خود کو اپنانے کی اصلاح: مقررہ جامد پیرامیٹرز کے بجائے ، اشارے کے پیرامیٹرز کو حقیقی وقت کی مارکیٹ میں ہونے والی تبدیلیوں کے مطابق موافقت پذیر ہونے کی اجازت دیں ، جو حکمت عملیوں کے استحکام کو بہت بہتر بنا سکتا ہے۔

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

  5. کراس سائیکل اصلاح: مختلف ٹریڈنگ سائیکل پیرامیٹرز کو مختلف طریقے سے مقرر کیا جا سکتا ہے، اور ہر سائیکل کے تحت زیادہ سے زیادہ ترتیب کی جانچ پڑتال کی جا سکتی ہے.

خلاصہ

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


/*backtest
start: 2022-12-14 00:00:00
end: 2023-11-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
strategy("Kitaec Strategy4", shorttitle = "Kitaec str4", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0)

//Settings
needlong = input(true, defval = true, title = "Long")
needshort = input(true, defval = true, title = "Short")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot")
len = input(14, defval=14, minval=1, maxval=1000, title="Smoothing")
len2 = input(14, defval=14, minval=1, maxval=1000, title="Smoothing2")
len3=input(550)
src = close
ema1=ema(src, len)
ema2=ema(ema1, len2)
d=ema1-ema2
zlema=ema1+d

ema21=ema(src, (len/3)*2)
ema22=ema(ema21, (len2/3)*2)
d2=ema21-ema22
zlema2=ema21+d2

ema31=ema(src, len3)
ema32=ema(ema21, len3)
d3=ema31-ema32
zlema3=ema31+d2

fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year")
toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year")
frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month")
tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month")
fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day")
today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day")

//MAs
//ma1 = security(tickerid, "60", vwma(src, len)[1])
//ma2 = security(tickerid, "120", vwma(src, len)[1])
//plot(ma1, linewidth = 2, color = blue, title = "MA")
//plot(ma2, linewidth = 2, color = red, title = "MA2")

// ADX
lenadx = 14
lensig = 14
limadx = 18

up = change(high)
down = -change(low)
trur = rma(tr, lenadx)
plus = fixnan(100 * rma(up > down and up > 0 ? up : 0, lenadx) / trur)
minus = fixnan(100 * rma(down > up and down > 0 ? down : 0, lenadx) / trur)
sum = plus + minus 
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), lensig)
adx2 = ema(adx, 14)
adx2i = ema(adx2,14)
dadx2 = adx2 - adx2i
zladx2 = adx2 + dadx2
plus2 = ema(plus, 14)
plus2i = ema (plus2, 14)
dplus2 = plus2 - plus2i
zlplus2 = plus2 + dplus2

minus2 = ema(minus, 14)
minus2i = ema (minus2, 14)
dminus2 = minus2 - minus2i
zlminus2 = minus2 + dminus2

vwma = vwma(close, 150)
vwma2 = ema(vwma, 9)
vwma2i = ema(vwma2, 9)
dvwma2 = vwma2 - vwma2i
zlvwma2 = vwma2 + dvwma2


rmax=rma(src, len)
rmax2=rma(rmax, len2)
rmd=rmax-rmax2
zlrmax=rmax+rmd
rmaxz=rma(src, (len/3)*2)
rmaxz2=rma(rmaxz, (len2/3)*2)
rmzd=rmaxz-rmaxz2
zlrmaxz=rmaxz+rmzd
rmaxcol2=zlrmaxz[1] > zlema2[1] ? red:lime
rmaxcol= zlrmax[1] > zlema[1] ? red:lime


rmazlema3=rma(zlema3, 100)
plot(rmazlema3, color=gray, linewidth=2)
plot(zlema, color=green)
plot(zlema2, color=yellow)
plot(zlema3, color=teal, linewidth=2)
plot(ema2, color=na)
plot(rmax, color=rmaxcol2, linewidth=3)
plot(zlrmax, color=rmaxcol, linewidth=3)


//Trading
size = strategy.position_size
lot = 0.0 
lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1]

if zlrmax[1] < zlema[1]
    strategy.entry("Buy", strategy.long, needlong ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
if zlrmax[1] > zlema[1]
    strategy.entry("Sell", strategy.short, needshort ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))


مزید