کثیر دورانیہ متحرک چلتی اوسط کی حکمت عملی

مصنف:چاؤ ژانگ، تاریخ: 2023-10-27 16:07:16
ٹیگز:

img

یہ حکمت عملی تجارتی سگنل پیدا کرنے کے لئے متعدد ٹائم فریموں میں متحرک اوسط کی مختلف اقسام کو متحرک طور پر منتخب کرتی ہے۔

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

یہ حکمت عملی SMA ، EMA ، TEMA ، WMA اور HMA چلتی اوسطوں میں سے انتخاب کرنے کی اجازت دیتی ہے ، جس میں مدت کی لمبائی کو اپنی مرضی کے مطابق بنایا جاسکتا ہے۔ انتخاب کی بنیاد پر متحرک طور پر مختلف قسم کے چلتے ہوئے اوسطوں کا خاکہ تیار کیا جائے گا۔ جب اختتامی قیمت چلتی اوسط سے اوپر ہوتی ہے تو یہ طویل ہوجاتا ہے ، اور جب اختتامی قیمت نیچے ہوتی ہے تو مختصر ہوجاتا ہے۔

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

  • SMA سادہ چلتی اوسط
  • ای ایم اے افقی چلتی اوسط
  • ٹی ای ایم اے ٹرپل ایکسپونینشل چلتی اوسط
  • ڈبلیو ایم اے وزن شدہ چلتی اوسط
  • ایچ ایم اے ہیل چلتی اوسط

اس سے متعلق حرکت پذیر اوسط کو انتخاب کے مطابق پلاٹ کیا جاتا ہے۔ جب اختتامی قیمت حرکت پذیر اوسط سے اوپر ہوتی ہے تو یہ طویل ہوجاتا ہے ، اور جب اس سے نیچے ہوتا ہے تو مختصر ہوجاتا ہے۔

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

فوائد

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

خطرات

  • چلتی اوسطوں کی تاخیر رجحان کی موڑ کے مقامات کو یاد کر سکتی ہے
  • مقررہ پیرامیٹرز کے ساتھ اوور فٹنگ ، براہ راست تجارت میں کم کارکردگی کا امکان
  • جارحانہ طویل / مختصر سگنل سرمایہ کاری کے استعمال کی کارکردگی پر اثر انداز

خطرات کو کم کیا جا سکتا ہے:

  • اندراجات کو زیادہ درست طریقے سے طے کرنے کے لئے دیگر اشارے شامل کرنا
  • مختلف مارکیٹ سسٹم کے لئے پیرامیٹرز کی حقیقی تجارت کی اصلاح
  • اکاؤنٹ کے سائز اور رسک مینجمنٹ کی بنیاد پر پوزیشن سائزنگ کو بہتر بنانا

بہتر مواقع

اسٹریٹیجی کو کئی پہلوؤں میں بہتر بنایا جاسکتا ہے:

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

    مثال کے طور پر حجم کی تصدیق کے بغیر جھوٹے بریک آؤٹ سے بچنے کے لئے حجم کے اشارے۔

  2. انٹری اور آؤٹ پٹ منطق کو بہتر بنائیں

    غیر ضروری نقصانات کو کم کرنے کے لئے قیمت چینلز مقرر کریں اور نقصانات کو روکیں۔

  3. متحرک اوسط دورانیے

    مضبوط رجحانات کے دوران طویل عرصے تک اور مضبوطی کے دوران مختصر مدت کا استعمال کریں.

  4. پیسے کے انتظام کو بہتر بنائیں

    ڈراؤنڈ اور منافع لینے کی بنیاد پر پوزیشن سائز کو ایڈجسٹ کریں۔

نتیجہ

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


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

//@version=3
strategy("MA_strategy ", shorttitle="MA_strategy", overlay=true, initial_capital=100000)

qty = input(100000000, "Buy quantity")

testStartYear = input(2017, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testStartHour = input(0, "Backtest Start Hour")
testStartMin = input(0, "Backtest Start Minute")

testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,testStartMin)

testStopYear = input(2099, "Backtest Stop Year")
testStopMonth = input(1, "Backtest Stop Month")
testStopDay = input(30, "Backtest Stop Day")
testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,0,0)


testPeriodBackground = input(title="Color Background?", type=bool, defval=true)
testPeriodBackgroundColor = testPeriodBackground and (time >= testPeriodStart) and (time <= testPeriodStop) ? #00FF00 : na
bgcolor(testPeriodBackgroundColor, transp=97)

testPeriod() =>
    time >= testPeriodStart and time <= testPeriodStop ? true : false


ma1 = input( "SMA",title="Select MA", options=["SMA", "EMA","TEMA", "WMA","HMA"])


len1 = input(7, minval=1, title="Period")

s=sma(close,len1)

e=ema(close,len1)


xEMA1 = ema(close, len1)
xEMA2 = ema(xEMA1, len1)
xEMA3 = ema(xEMA2, len1)
t = 3 * xEMA1 - 3 * xEMA2 + xEMA3


f_hma(_src, _length)=>
    _return = wma((2 * wma(_src, _length / 2)) - wma(_src, _length), round(sqrt(_length)))

h = f_hma(close, len1)

w = wma(close, len1)

ma = ma1 == "SMA"?s:ma1=="EMA"?e:ma1=="WMA"?w:ma1=="HMA"?h:ma1=="TEMA"?t:na

buy= close>ma
sell= close<ma

alertcondition(buy, title='buy', message='buy')
alertcondition(sell, title='sell', message='sell')

ordersize=floor(strategy.equity/close)

if testPeriod()
    strategy.entry("long",strategy.long,ordersize,when=buy)
    strategy.close("long", when = sell )


    
  









مزید