ملٹی لیول شفٹ موونگ ایوریج ٹریڈنگ حکمت عملی مختلف پیرامیٹرز کے ساتھ کئی شفٹ موونگ ایوریج لائنز کی ترتیب کے ذریعہ متعدد سطحوں پر نقصانات میں داخل ہوتی ہے اور روکتی ہے۔ یہ حکمت عملی پہلے 3 لمبی لائنوں اور 3 مختصر لائنوں کا حساب لگاتی ہے۔ جب لمبی لائنیں مختصر لائنوں سے نیچے ہوتی ہیں تو یہ لمبی ہوتی ہے ، اور جب مختصر لائنیں لمبی لائنوں سے نیچے ہوتی ہیں تو یہ مختصر ہوجاتی ہے۔ یہ حکمت عملی پیرامیٹرز کی تخصیص کی اجازت دیتی ہے جیسے چلتی اوسط مدت ، شفٹ تناسب ، قابل تجارت ٹائم رینج وغیرہ۔ یہ درمیانی اور طویل مدتی ٹرینڈ ٹریڈنگ کے لئے موزوں ہے۔
بیس لائن کے طور پر ایس آر سی قیمت کے لین مدت سادہ چلتی اوسط کا حساب لگائیں.
لمبی اور مختصر لائنوں کی تعداد طویل اور مختصر پیرامیٹرز کی بنیاد پر مقرر کریں.
لانگ لائن1 وغیرہ کو لانگ لیول1 وغیرہ کے تناسب کے مطابق بیس لائن کو منتقل کرکے مقرر کیا جاتا ہے۔ مختصر لائنیں اسی طرح مقرر کی جاتی ہیں۔
جب قیمت قابل تجارت اوقات کے اندر لائنوں کو عبور کرتی ہے تو متعدد سطحوں پر تجارت کریں۔
سٹاپ نقصان جب قیمت بیس لائن کو چھوتی ہے.
اختتام وقت کے بعد تمام پوزیشنوں کو بند کرنے کی طاقت.
اس حکمت عملی کے مندرجہ ذیل فوائد ہیں:
ملٹی لیول انٹری رجحان کے مختلف مراحل میں منافع حاصل کرنے کی اجازت دیتی ہے۔
مختلف مصنوعات اور تجارتی طرز کے لئے پیرامیٹرز کے ساتھ انتہائی حسب ضرورت.
قابل اعتماد بریکآؤٹ سسٹم جو چلتی اوسط پر مبنی ہے۔
تجارتی وقت کی حد مقرر کرکے بڑے واقعات سے بچیں۔
اسٹاپ نقصان کے ذریعے نقصانات کو روکنا۔
اس حکمت عملی کے کچھ خطرات:
ہائی خطرہ pyramiding پوزیشنوں سے، کافی سرمایہ کی ضرورت ہے.
ناقص پیرامیٹرز سے زیادہ تجارت ہوسکتی ہے۔
فکسڈ باہر نکلنے کا وقت دیر سے رجحان منافع کو یاد کر سکتا ہے.
راتوں رات کی پوزیشنوں اور لے جانے کی لاگت کے لئے کوئی معاوضہ نہیں.
پوزیشن سائزنگ پر کوئی کنٹرول نہیں.
اسٹریٹیجی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
فکسڈ آؤٹ ٹائم کے بجائے ٹریلنگ اسٹاپ نقصان شامل کریں۔
راتوں رات پوزیشنوں کے لئے لے جانے کی قیمت پر غور کریں.
تاخیر سے منافع حاصل کرنے کے لئے پیچھے سٹاپ نقصان شامل کریں.
موجودہ نمائش کی بنیاد پر متحرک طور پر سائز پوزیشن.
مختلف مصنوعات پر پیرامیٹرز کی جانچ اور تعمیراتی اصلاح کے طریقوں.
غیر ضروری رکاوٹوں سے بچنے کے لئے سٹاپ نقصان کی سطح کو بہتر بنائیں.
ملٹی لیول شفٹ موونگ اوسط حکمت عملی چلتی اوسط کی بنیاد پر ملٹی لیول انٹری کے ذریعہ رجحانات سے منافع حاصل کرتی ہے۔ قابل تجارت اوقات اور اسٹاپ نقصان کنٹرولز کا خطرہ اچھا ہے۔ لے جانے والے اخراجات کے کنٹرول ، پیرامیٹر کی اصلاح ، اسٹاپ نقصان کی اصلاح وغیرہ میں مزید بہتری حکمت عملی کو بڑھا سکتی ہے اور تحقیق کے قابل ہے۔
/*backtest start: 2022-09-16 00:00:00 end: 2023-09-22 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2019 //@version=4 strategy(title = "Noro's ShiftMA-multi Strategy v1.1", shorttitle = "ShiftMA-multi", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 3) //Settings long = input(3, defval = 3, minval = 0, maxval = 3, title = "Lines for long") short = input(3, defval = 3, minval = 0, maxval = 3, title = "Lines for short") capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Lot") len = input(3, minval = 1, title = "MA Length") src = input(ohlc4, title = "MA Source") shortlevel3 = input(15.0, title = "Short line 3") shortlevel2 = input(10.0, title = "Short line 2") shortlevel1 = input(5.0, title = "Short line 1") longlevel1 = input(-5.0, title = "Long line 1") longlevel2 = input(-10.0, title = "Long line 2") longlevel3 = input(-15.0, title = "Long line 3") needoffset = input(true, title = "Offset") 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") //Variables size = strategy.position_size mult = 1 / syminfo.mintick //MA ma = sma(src, len) longline1 = long >= 1 ? round(ma * ((100 + longlevel1) / 100) * mult) / mult : close longline2 = long >= 2 ? round(ma * ((100 + longlevel2) / 100) * mult) / mult : close longline3 = long >= 3 ? round(ma * ((100 + longlevel3) / 100) * mult) / mult : close shortline1 = short >= 1 ? round(ma * ((100 + shortlevel1) / 100) * mult) / mult : close shortline2 = short >= 2 ? round(ma * ((100 + shortlevel2) / 100) * mult) / mult : close shortline3 = short >= 3 ? round(ma * ((100 + shortlevel3) / 100) * mult) / mult : close //Lines colorlong1 = long >= 1 ? color.lime : na colorlong2 = long >= 2 ? color.lime : na colorlong3 = long >= 3 ? color.lime : na colorshort1 = short >= 1 ? color.red : na colorshort2 = short >= 2 ? color.red : na colorshort3 = short >= 3 ? color.red : na offset = needoffset ? 1 : 0 plot(shortline3, offset = offset, color = colorshort1) plot(shortline2, offset = offset, color = colorshort2) plot(shortline1, offset = offset, color = colorshort3) plot(ma, offset = offset, color = color.blue) plot(longline1, offset = offset, color = colorlong1) plot(longline2, offset = offset, color = colorlong2) plot(longline3, offset = offset, color = colorlong3) //Trading lot = 0.0 lot := size == 0 ? strategy.equity / close * capital / 100 : lot[1] lots = 0.0 needtime = time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59) if ma > 0 lots := round(size / lot) strategy.entry("L1", strategy.long, lot, limit = longline1, when = (lots == 0 and long >= 1 and needtime)) lots := round(size / lot) strategy.entry("L2", strategy.long, lot, limit = longline2, when = (lots <= 1 and long >= 2 and needtime)) lots := round(size / lot) strategy.entry("L3", strategy.long, lot, limit = longline3, when = (lots <= 2 and long >= 3 and needtime)) lots := round(size / lot) strategy.entry("S1", strategy.short, lot, limit = shortline1, when = (lots == 0 and short >= 1 and needtime)) lots := round(size / lot) strategy.entry("S2", strategy.short, lot, limit = shortline2, when = (lots >= -1 and short >= 2 and needtime)) lots := round(size / lot) strategy.entry("S3", strategy.short, lot, limit = shortline3, when = (lots >= -2 and short >= 3 and needtime)) if size > 0 strategy.entry("TPL", strategy.short, 0, limit = ma) if size < 0 strategy.entry("TPS", strategy.long, 0, limit = ma) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all()