اس مضمون میں نورو
I. حکمت عملی کا جائزہ
یہ حکمت عملی بنیادی طور پر RSI اشارے کو تجارتی سگنل پیدا کرنے کے لئے استعمال کرتی ہے ، جو موم بتیوں کی فلٹرنگ اور کم سے کم / زیادہ سے زیادہ پیشرفتوں کے ساتھ مل کر معاون فیصلوں کے طور پر ، ایک مکمل طویل / مختصر فیصلہ سازی کا نظام تشکیل دیتی ہے۔ حکمت عملی کا نام
II. حکمت عملی کی تفصیلات
یہ حکمت عملی تیزی سے RSI نوسانات کے ذریعے مارکیٹ کے رجحانات کی علامتوں کو پکڑنے کے لئے لمبائی 7 تیز RSI کا استعمال کرتی ہے۔ RSI کے خلاف ورزی ہونے پر سگنل کو متحرک کرنے کے لئے 70 اور 30 کی اوپری اور نچلی حدود بھی مقرر کی گئی ہیں۔
حکمت عملی موم بتی کے جسم کے سائز sma کا استعمال کرتے ہوئے RSI سگنلز کو فلٹر کرتی ہے ، صرف موم بتیوں پر RSI سگنلز پر غور کرتی ہے جن کے جسم کا سائز 5 دن کے اوسط جسم کے سائز سے بڑا ہوتا ہے ، وپساؤس سے بچنے کے ل.
یہ حکمت عملی چیک کرتی ہے کہ آیا حالیہ mmbars میں کم سے کم / زیادہ سے زیادہ پیشرفت ہوئی ہے ، جس میں RSI کی سطح کے ساتھ مل کر نچلی تبدیلیوں اور اوپر کی خرابیوں کا تعین کیا گیا ہے۔
لمبا سگنل: آر ایس آئی 30 سے نیچے گزرتا ہے، جسمانی سائز اوسط جسمانی سائز سے زیادہ ہے، اور منٹ ٹوٹ جاتا ہے.
مختصر سگنل: آر ایس آئی 70 سے اوپر گزرتا ہے، جسم کا سائز اوسط جسم کے سائز سے زیادہ ہوتا ہے، اور زیادہ سے زیادہ مزاحمت کو توڑتا ہے۔
باہر نکلنے کا اشارہ: جب آر ایس آئی پوزیشن کی مخالف سمت میں حدود کو دوبارہ عبور کرتا ہے۔
III۔ اسٹریٹیجی کے فوائد
بہتر RSI پیرامیٹرز تیزی سے رجحان کی تبدیلی کو پکڑنے.
شمعدانوں اور کم سے کم / زیادہ سے زیادہ کے ساتھ مل کر غیر ضروری whipsaws کو روکتا ہے.
سٹاپ نقصان کا طریقہ کار جب RSI حدود کو دوبارہ عبور کرتا ہے تو باہر نکل جاتا ہے۔
IV۔ حکمت عملی کے خطرات
RSI جھوٹے سگنل کے لئے موزوں ہے، معاون تصدیق کی ضرورت ہے.
بیک ٹیسٹ اوور فٹنگ کے خطرات۔ بہتر پیرامیٹرز صرف مخصوص مارکیٹ کے ادوار کے مطابق ہوسکتے ہیں۔
سٹاپ نقصان کا طریقہ کار بہت مکینیکل ہوسکتا ہے، ایک سٹاپ نقصان پر بڑے نقصان کو کنٹرول کرنے میں قاصر ہوسکتا ہے.
V. نتیجہ
یہ حکمت عملی مضبوط رجحان کی پیروی کے لئے متعدد تکنیکی اشارے کو مربوط کرتی ہے۔ لیکن بیک ٹیسٹ اوور فٹنگ اور اسٹاپ نقصان کے خطرات کو نوٹ کرنا چاہئے ، اور براہ راست کارکردگی کا محتاط اندازہ لگانا چاہئے۔ براہ راست تجارت کے لئے پیرامیٹرز کی ٹھیک ترتیب اور پوزیشن سائزنگ کے کنٹرول کی سفارش کی جاتی ہے۔
/*backtest start: 2022-09-11 00:00:00 end: 2023-01-11 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=3 strategy(title = "Noro's Fast RSI Strategy v1.6", shorttitle = "Fast RSI str 1.6", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 10) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") usersi = input(true, defval = true, title = "Use Fast RSI Strategy") usemm = input(true, defval = true, title = "Use Min/Max Strategy") usebc = input(true, defval = true, title = "Use BarColor Strategy") usesma = input(false, defval = false, title = "Use SMA Filter") smaperiod = input(20, defval = 20, minval = 2, maxval = 1000, title = "SMA Filter Period") fast = input(7, defval = 7, minval = 2, maxval = 50, title = "Fast RSI Period") limit = input(30, defval = 30, minval = 1, maxval = 100, title = "RSI limit") rsisrc = input(close, defval = close, title = "RSI Price") rsibars = input(1, defval = 1, minval = 1, maxval = 20, title = "RSI Bars") mmbars = input(1, defval = 1, minval = 1, maxval = 5, title = "Min/Max Bars") showsma = input(false, defval = false, title = "Show SMA Filter") showarr = input(false, defval = false, title = "Show Arrows") fromyear = input(2018, defval = 2018, 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") //Fast RSI fastup = rma(max(change(rsisrc), 0), fast) fastdown = rma(-min(change(rsisrc), 0), fast) fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown)) //Limits bar = close > open ? 1 : close < open ? -1 : 0 uplimit = 100 - limit dnlimit = limit //RSI Bars upsignal = fastrsi > uplimit ? 1 : 0 dnsignal = fastrsi < dnlimit ? 1 : 0 uprsi = sma(upsignal, rsibars) == 1 dnrsi = sma(dnsignal, rsibars) == 1 //Body body = abs(close - open) abody = sma(body, 10) //MinMax Bars min = min(close, open) max = max(close, open) minsignal = min < min[1] and bar == -1 and bar[1] == -1 ? 1 : 0 maxsignal = max > max[1] and bar == 1 and bar[1] == 1 ? 1 : 0 mins = sma(minsignal, mmbars) == 1 maxs = sma(maxsignal, mmbars) == 1 //SMA Filter sma = sma(close, smaperiod) colorsma = showsma ? blue : na plot(sma, color = colorsma, linewidth = 3) //Signals up1 = bar == -1 and (strategy.position_size == 0 or close < strategy.position_avg_price) and dnrsi and body > abody / 5 and usersi dn1 = bar == 1 and (strategy.position_size == 0 or close > strategy.position_avg_price) and uprsi and body > abody / 5 and usersi up2 = mins and (close > sma or usesma == false) and fastrsi < 70 and usemm dn2 = maxs and (close < sma or usesma == false) and fastrsi > 30 and usemm up3 = sma(bar, 2) == -1 and usebc dn3 = sma(bar, 2) == 1 and usebc exit = ((strategy.position_size > 0 and fastrsi > dnlimit and bar == 1) or (strategy.position_size < 0 and fastrsi < uplimit and bar == -1)) and body > abody / 2 //Arrows col = exit ? black : up1 or dn1 ? blue : up2 or dn2 ? red : na needup = up1 or up2 needdn = dn1 or dn2 needexitup = exit and strategy.position_size < 0 needexitdn = exit and strategy.position_size > 0 plotarrow(showarr and needup ? 1 : na, colorup = blue, colordown = blue, transp = 0) plotarrow(showarr and needdn ? -1 : na, colorup = blue, colordown = blue, transp = 0) plotarrow(showarr and needexitup ? 1 : na, colorup = black, colordown = black, transp = 0) plotarrow(showarr and needexitdn ? -1 : na, colorup = black, colordown = black, transp = 0) //Trading if up1 or up2 or up3 if strategy.position_size < 0 strategy.close_all() strategy.entry("Long", strategy.long, needlong == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if dn1 or dn2 or dn3 if strategy.position_size > 0 strategy.close_all() strategy.entry("Short", strategy.short, needshort == false ? 0 : na, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if time > timestamp(toyear, tomonth, today, 23, 59) or exit strategy.close_all()