اوہل ایم اے سسٹم ایک انکولی حرکت پذیر اوسط کراس اوور سسٹم ہے جو روایتی ایم اے سسٹم کی کمیوں پر قابو پانے کے لئے ڈیزائن کیا گیا ہے۔ یہ تجارتی سگنل پیدا کرنے کے لئے تیز اور سست حرکت پذیر اوسط استعمال کرتا ہے ، جس میں سست ایم اے اینڈریاس اوہل کے ذریعہ اصل میں تجویز کردہ درست شدہ ایم اے (سی ایم اے) ہے اور تیز ایم اے درست شدہ رجحان قدم (سی ٹی ایس) ہے جو بھی درست شدہ ایم اے پر مبنی ہے۔ یہ نظام زیادہ قابل اعتماد تجارتی سگنل حاصل کرنے کے لئے ایم اے پیرامیٹرز کو انکولی طور پر ایڈجسٹ کرتا ہے۔
اس حکمت عملی کا بنیادی حصہ یو ایچ ایل ایم اے اور سی ٹی ایس لائنوں کے حساب کتاب میں ہے۔ یو ایچ ایل ایم اے لائن روایتی ایس ایم اے کے مقابلے میں ایک بہتری ہے ، جس میں ایس ایم اے اور پچھلے سی ایم اے کے درمیان وزن کو موافقت پذیر طور پر ایڈجسٹ کرنے کے لئے تغیر (وی اے آر) اور تاریخی مربع انحراف (سی ای سی ایم اے) کا استعمال کیا گیا ہے۔ جب وی اے آر سی ای سی ایم اے سے کم ہے تو ، ایس ایم اے پر زیادہ وزن ڈالا جاتا ہے ، بصورت دیگر سی ایم اے پر زیادہ وزن ڈالا جاتا ہے۔ اس سے کچھ شور کو فلٹر کرنے اور ہموار ایم اے پیدا کرنے میں مدد ملتی ہے۔ سی ٹی ایس لائن ایس آر سی قیمت پر مبنی اسی طرح کے موافقت پذیر حساب کتاب کا استعمال کرتی ہے۔
کراس اوور منطق روایتی ایم اے سسٹم کی طرح ہی ہے۔ جب سی ٹی ایس یو ایچ ایل ایم اے کے اوپر عبور کرتا ہے تو خرید کا اشارہ پیدا ہوتا ہے ، اور جب اس سے نیچے عبور ہوتا ہے تو فروخت کا اشارہ ہوتا ہے۔ یہ ایک انکولی ایم اے ٹریڈنگ سسٹم تشکیل دیتا ہے۔
روایتی ایم اے کراس اوور سسٹم کے مقابلے میں ، اس حکمت عملی کا سب سے بڑا فائدہ انکولی ایم اے کا استعمال ہے ، جو کچھ شور کو فلٹر کرسکتا ہے اور رینج سے منسلک مارکیٹوں میں زیادہ قابل اعتماد سگنل پیدا کرسکتا ہے۔ انکولی کراس اوور مردہ کراس اور سنہری کراس کے مقابلے میں جھوٹے سگنل کو کم کرتا ہے۔ نیز ، تیز اور سست ایم اے امتزاج کچھ ٹرینڈ ٹریڈنگ کے مواقع کو پکڑنے کی اجازت دیتا ہے۔ بیک ٹیسٹ کے نتائج سے ہم واضح رجحانات والے اثاثوں میں اعلی کارکردگی دیکھ سکتے ہیں۔
اس حکمت عملی کا سب سے بڑا خطرہ رینجنگ مارکیٹوں میں بڑھتے ہوئے غلط سگنلز سے آتا ہے ، کیونکہ ایم اے فطرت میں رجحانات کے مطابق اشارے ہیں۔ اس کی بڑی حد تک وجہ سی ایم اے کے انکولی حساب سے ہے ، جو استحکام میں قیمت کی حدوں میں ملتا ہے ، جس سے غیر ضروری سگنل پیدا ہوتے ہیں۔ پیرامیٹرز کی مناسب ترتیب بھی ایک بڑا چیلنج ہے۔ غلط پیرامیٹرز اچھے تجارت کو یاد کرنے یا غلط سگنل میں اضافہ کا باعث بن سکتے ہیں۔
ممکنہ اصلاحات میں شامل ہیں:
سی ایم اے حساب کتاب کو بہتر بنائیں تاکہ مختلف مارکیٹوں میں تبادلوں سے بچنے کے لئے، مثال کے طور پر دیگر اشارے کا استعمال کریں.
جینیاتی الگورتھم کی طرح کثیر متغیر اصلاح کے الگورتھم کے ذریعے پیرامیٹرز کو بہتر بنائیں.
ایک تجارت کے نقصان کو کنٹرول کرنے کے لئے سٹاپ نقصان متعارف کروائیں.
دوسرے اشارے کا استعمال کرتے ہوئے فلٹر شامل کریں تاکہ استحکام میں زیادہ تجارت سے بچنے کے لئے، جیسے اتار چڑھاؤ کے اقدامات، آر ایف ایم انڈیکس وغیرہ.
مجموعی خطرے کو بہتر طریقے سے کنٹرول کرنے کے لیے پوزیشن سائزنگ، رسک میٹرکس سمیت رسک مینجمنٹ کو بہتر بنائیں۔
یو ایچ ایل ایم اے سسٹم ایک بہت ہی جدید موافقت پذیر ایم اے کراس اوور حکمت عملی ہے۔ روایتی حکمت عملیوں کے مقابلے میں ، متحرک ایم اے غلط سگنل کو کم کرنے اور رجحانات کو بہتر طور پر پکڑنے میں مدد کرتے ہیں۔ لیکن مختلف مارکیٹوں میں حدود موجود ہیں۔ حساب کتاب کے طریقہ کار میں مزید بہتری اور فلٹرز کا اضافہ بہت بڑی صلاحیت رکھتا ہے۔ دریں اثنا ، پیرامیٹر ٹیوننگ اور رسک کنٹرول بھی اہم ہیں۔ مجموعی طور پر ، یو ایچ ایل ایم اے حکمت عملی میں اچھی صلاحیت اور تحقیق کی قدر ہے جس کی مزید تلاش کے قابل ہے۔
[/trans]
/*backtest start: 2023-01-01 00:00:00 end: 2023-06-25 00:00:00 period: 1d basePeriod: 1h 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/ // © alexgrover //@version=4 strategy("Uhl MA System - Strategy Analysis") length = input(100),mult = input(1.),src = input(close) //---- out = 0., cma = 0., cts = 0. Var = variance(src,length) ,sma = sma(src,length) secma = pow(nz(sma - cma[1]),2) ,sects = pow(nz(src - cts[1]),2) ka = Var < secma ? 1 - Var/secma : 0 ,kb = Var < sects ? 1 - Var/sects : 0 cma := ka*sma+(1-ka)*nz(cma[1],src) ,cts := kb*src+(1-kb)*nz(cts[1],src) //---- if crossover(cts,cma) strategy.entry("Buy", strategy.long) if crossunder(cts,cma) strategy.entry("Sell", strategy.short) //---- cap = 50000 eq = strategy.equity rmax = 0. rmax := max(eq,nz(rmax[1])) //---- css = eq > cap ? #0cb51a : #e65100 a = plot(eq,"Equity",#2196f3,2,transp=0) b = plot(rmax,"Maximum",css,2,transp=0) fill(a,b,css,80)