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

مصنف:چاؤ ژانگ، تاریخ: 2023-12-13 17:25:33
ٹیگز:

img

جائزہ

یہ حکمت عملی کاوف مین کے انکولی چلتی اوسط (کاما) کا استعمال کرتا ہے تاکہ درمیانے اور طویل مدتی رجحانات کو پکڑنے کے لئے رجحان کی سمت کا تعین کیا جاسکے۔ جب کاما لائن اوپر کی طرف بڑھتی ہے تو یہ لمبی ہوجاتی ہے اور جب کاما لائن نیچے کی طرف بڑھتی ہے تو مختصر ہوجاتی ہے۔ یہ حکمت عملی ٹریڈنگ سگنل کے معیار کو بہتر بنانے کے لئے حرکت پذیر اوسط کی رجحان سے باخبر رہنے کی صلاحیت اور کاما کی متحرک ایڈجسٹمنٹ کی خصوصیت کو یکجا کرتی ہے۔

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

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

حکمت عملی سب سے پہلے KAMA کی قیمت کا حساب لگاتی ہے۔ پھر یہ KAMA لائن کی لمبی / مختصر حالت کا تعین کرتی ہے۔ جب بند ہونے والی قیمت KAMA لائن سے اوپر ہوتی ہے تو خرید کا سگنل تیار کیا جاتا ہے ، اور جب بند ہونے والی قیمت KAMA لائن سے نیچے ہوتی ہے تو فروخت کا سگنل تیار کیا جاتا ہے۔ ان تجارتی سگنلز کی بنیاد پر پوزیشنیں کھولی جاتی ہیں۔

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

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

اس کے علاوہ ، حکمت عملی میں صرف KAMA کی لمبی / مختصر حالت کا استعمال رجحان کی سمت کا تعین کرنے کے لئے کیا جاتا ہے۔ کوئی اضافی فلٹرز نہیں ہیں ، جو حکمت عملی کی منطق کو آسان بناتا ہے اور پیرامیٹرز کی تعداد کو کم کرتا ہے ، جس سے زیادہ فٹ ہونے کا خطرہ کم ہوتا ہے اور مارکیٹوں میں استحکام اور موافقت کو بہتر بناتا ہے۔

خطرے کا تجزیہ

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

خطرے کو کم کرنے کے لئے ، تجارتی اشاروں کی تصدیق کے لئے دوسرے اشارے کو جوڑا جاسکتا ہے ، جیسے اتار چڑھاؤ کے اشارے ، حجم کے اشارے وغیرہ۔ پیرامیٹرز کو بھی ایڈجسٹ کیا جاسکتا ہے تاکہ KAMA منحنی خطوط کو ہموار بنایا جاسکے۔

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

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

  1. سگنل کو بہتر بنانے کے لیے سگنل فلٹرنگ کے لیے دیگر اشارے، جیسے ایم اے سی ڈی، آسکیلیٹر وغیرہ کو یکجا کریں۔

  2. اسٹاپ نقصان کی حکمت عملی شامل کریں جیسے اسٹاپ نقصان کو منتقل کرنا یا ایکوئٹی وکر پر مبنی اسٹاپ کو کنٹرول کرنا۔

  3. پیرامیٹرز کو بہتر بنائیں تاکہ KAMA رجحانات کو پکڑنے میں زیادہ موثر ہو۔

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

  5. آلہ سیکھنے کے طریقوں کا استعمال آلہ کے درمیان موافقت کے لئے پیرامیٹرز کو خود بخود بہتر بنانے کے لئے.

نتیجہ

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


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

//Noro
//2019

//@version=3
strategy(title = "Noro's KAMA Strategy", shorttitle="KAMA str", 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")
length = input(3, minval = 1) 
fast = input(2, minval = 1)
slow = input(30, minval = 1)
src = input(title = "Source",  defval = close)
type = input(defval = "Trend", options = ["Trend", "Crossing"], title = "Type")
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")

//KAMA
volatility = sum(abs(src-src[1]), length)
change = abs(src[1]-src[length])
er = iff(volatility != 0, change/volatility, 0)
fastSC = 2/(fast+1)
slowSC = 2/(slow+1)
sc = pow((er*(fastSC-slowSC))+slowSC, 2)
bid = hl2
kama = 0.0
kama := nz(kama[1])+(sc*(bid-nz(kama[1])))
plot(kama, color = black, title = "KAMA", trackprice = false, style = line, linewidth = 3)

//Signals
up = false
dn = false
up := (type == "Crossing" and kama > kama[1]) or (type == "Trend" and close > kama)
dn := (type == "Crossing" and kama < kama[1]) or (type == "Trend" and close < kama)

//Trading
size = strategy.position_size
lot = 0.0
lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1]
if up
    strategy.entry("L", strategy.long, needlong ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))
    
if dn
    strategy.entry("S", strategy.short, needshort ? lot : 0, when = (time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59)))

مزید