RSI مومینٹم ریورسل اسٹریٹیجی


تخلیق کی تاریخ: 2023-11-07 15:45:15 آخر میں ترمیم کریں: 2023-11-07 15:45:15
کاپی: 0 کلکس کی تعداد: 773
1
پر توجہ دیں
1617
پیروکار

RSI مومینٹم ریورسل اسٹریٹیجی

جائزہ

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

حکمت عملی کا اصول

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

  1. کونرز RSI اشارے

باقاعدہ RSI، RSI جیت کی شرح اشارے، اور RSI پیرس شار اشارے کا حساب لگائیں، اور ان تینوں کا اوسط کونورز RSI کے طور پر لیں۔

  1. فوری RSI اشارے

قیمت میں تبدیلی کا استعمال کرتے ہوئے RSI کا حساب لگانا ، جو انتہائی مختصر سائیکل کی عکاسی کرتا ہے۔

  1. K لائن انٹرفیس فلٹر

اصل سورج کی لائن زیادہ کرنے کی ضرورت ہے، سورج کی لائن خالی ہے، جعلی توڑنے سے بچنے کے لئے.

  1. زیادہ خالی حالت

کونرز RSI 20 سے کم ہے، اور فوری RSI 25 سے کم ہے جب، جسمانی سورج کی لکیریں ظاہر ہوتے ہیں، زیادہ سے زیادہ کریں.

کونرز آر ایس آئی 80 سے زیادہ ہے اور فاسٹ آر ایس آئی 75 سے زیادہ ہے تو ، جسمانی لائنیں ظاہر ہوتی ہیں ، خالی ہوجاتی ہیں۔

  1. روکنے کے نقصان سے باہر نکلیں

جب ادارہ موڑتا ہے تو اسٹاپ نقصان سے باہر نکل جاتا ہے۔

کونورز RSI کے ذریعے طویل لائن رجحان الٹ پوائنٹس کا تعین کرنے کے لئے، فوری RSI مختصر لائن الٹ پوائنٹس کا تعین کرنے کے لئے، K لائن اداروں کو توڑنے کی طاقت کو یقینی بنانے کے لئے، اس طرح الٹ کے مواقع کو مؤثر طریقے سے تلاش کرنے کے لئے، اور وقت پر اوورلوڈ اور اوورلوڈ دونوں کو کھولنے کے لئے.

طاقت کا تجزیہ

یہ حکمت عملی مندرجہ ذیل فوائد رکھتی ہے:

  1. لمبی اور چھوٹی لائن کے اشارے کے ساتھ

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

  1. جسمانی فلٹرنگ

صرف حقیقی توڑ کے دوران کام کرنے سے جعلی توڑ سے ہونے والے نقصان کو کم کیا جاسکتا ہے۔

  1. پیرامیٹرز ایڈجسٹ

RSI پیرامیٹرز، ٹریڈنگ کی قسم اور ٹریڈنگ کا وقت مختلف مارکیٹوں کے مطابق آزادانہ طور پر ایڈجسٹ کیا جا سکتا ہے.

  1. سادہ اور بدیہی

RSI اور K لائن ادارے بنیادی اشارے ہیں ، حکمت عملی کی منطق آسان اور سمجھنے میں آسان ہے۔

  1. لاگو کرنے کے لئے آسان

صرف بلٹ ان اشارے کا استعمال کرتے ہوئے، کوڈ کی کم مقدار، لاگو کرنے کی کم مشکل.

خطرے کا تجزیہ

اس حکمت عملی میں مندرجہ ذیل اہم خطرات ہیں:

  1. ریورس ناکامی کا خطرہ

ریورس سگنل جاری ہونے کے بعد قیمتوں میں ابتدائی رجحان کا سلسلہ جاری رہا جس سے نقصان ہوا۔

  1. زلزلے کے خطرات

اس کے نتیجے میں ، بہت سے غیر موثر تجارت کی وجہ سے بار بار سگنل ٹرگر ہوتے ہیں۔

  1. جعلی کامیابی کا خطرہ

اصل فلٹرنگ مکمل طور پر نقالی نقالی سے بچنے کے لئے نہیں ہے.

  1. پیرامیٹرز کا خطرہ

آر ایس آئی پیرامیٹرز کو غلط طریقے سے ترتیب دیا گیا ہے ، جس کی وجہ سے تجارت کے مواقع ضائع ہوسکتے ہیں یا متعدد بار غیر موثر تجارت ہوسکتی ہے۔

  1. خصوصی حالات کا خطرہ

خاص حالات میں RSI اشارے غلط سگنل پیدا.

اصلاح کی سمت

اس حکمت عملی کو مندرجہ ذیل پہلوؤں سے بہتر بنایا جاسکتا ہے:

  1. نقصان کی روک تھام میں اضافہ

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

  1. ایک سے زیادہ انڈیکس

MACD، KD اور دیگر اشارے فلٹر شامل کریں، سگنل زیادہ قابل اعتماد بنانے کے لئے

  1. امکانات کو فلٹر کریں

رجحانات ، معاون مزاحمت ، اور اس طرح کے فیصلے کے امکانات کو جوڑیں ، اور کم امکانات والے تجارت سے گریز کریں۔

  1. پیرامیٹرز کو بہتر بنائیں

مختلف ٹرانزیکشن کی اقسام اور ادوار کے لئے پیرامیٹرز کی جانچ کریں اور بہترین پیرامیٹرز تلاش کریں۔

  1. غیر معمولی حالات سے بچیں

غیر معمولی حالات کی نشاندہی کریں اور بڑے نقصانات سے بچنے کے لئے تجارت کو روک دیں۔

خلاصہ کریں۔

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

حکمت عملی کا ماخذ کوڈ
/*backtest
start: 2023-10-07 00:00:00
end: 2023-11-06 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//Noro
//2018

//@version=2
strategy(title = "Noro's Connors RSI Strategy v1.0", shorttitle = "CRSI str 1.0", overlay = false, 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")
usemar = input(false, defval = false, title = "Use Martingale")
capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %")
usecrsi = input(true, defval = true, title = "Use CRSI Strategy")
usefrsi = input(true, defval = true, title = "Use FRSI Strategy")
usemod = input(true, defval = true, title = "CRSI+FRSI Mode")
limit = input(25, defval = 25, minval = 1, maxval = 100, title = "RSI limit")
usebod = input(true, defval = true, title = "Use Body-filter")
usecol = input(true, defval = true, title = "Use Color-filter")
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")

//CRSI
rsilen = 3
streaklen = 2
lookback = 100
rsi = rsi(close,rsilen)
upday = close > close[1] ? 1 : 0
downday = close < close[1] ? -1 : 0
upstreak = upday!=0 ? upstreak[1] + upday : 0
downstreak = downday!=0 ? downstreak[1] + downday : 0
streak = upstreak + downstreak
streakrsi = rsi(streak,streaklen)
roc = close/close[1] - 1
roccount = 0
for i=1 to lookback-1
    roccount := roc[i]<roc ? roccount + 1 : roccount
crsi = (rsi + streakrsi + roccount) / 3

//Oscilator
// rsiplot = plot(crsi, title="RSI", style=line, linewidth=1, color=blue)
// band1 = hline(80, title="Upper Line", linestyle=dashed, linewidth=1, color=red)
// band0 = hline(20, title="Lower Line", linestyle=dashed, linewidth=1, color=green)
// fill(band1, band0, color=purple, transp=90)

//Fast RSI
fastup = rma(max(change(close), 0), 7)
fastdown = rma(-min(change(close), 0), 7)
fastrsi = fastdown == 0 ? 100 : fastup == 0 ? 0 : 100 - (100 / (1 + fastup / fastdown))

//Body Filter
nbody = abs(close - open)
abody = sma(nbody, 10)
body = nbody > abody / 3 or usebod == false

//Color Filter
bar = close > open ? 1 : close < open ? -1 : 0
gbar = bar == 1 or usecol == false
rbar = bar == -1 or usecol == false

//Signals

up1 = rbar and (strategy.position_size == 0 or close < strategy.position_avg_price) and crsi < limit and body and usecrsi
dn1 = gbar and (strategy.position_size == 0 or close > strategy.position_avg_price) and crsi > 100 - limit and body and usecrsi
up2 = rbar and (strategy.position_size == 0 or close < strategy.position_avg_price) and fastrsi < limit and body and usefrsi
dn2 = gbar and (strategy.position_size == 0 or close > strategy.position_avg_price) and fastrsi > 100 - limit and body and usefrsi
exit = ((strategy.position_size > 0 and bar == 1) or (strategy.position_size < 0 and bar == -1)) and body

//Trading
profit = exit ? ((strategy.position_size > 0 and close > strategy.position_avg_price) or (strategy.position_size < 0 and close < strategy.position_avg_price)) ? 1 : -1 : profit[1]
mult = usemar ? exit ? profit == -1 ? mult[1] * 2 : 1 : mult[1] : 1
lot = strategy.position_size == 0 ? strategy.equity / close * capital / 100 * mult : lot[1]

if ((up1 or up2) and usemod == false) or (up1 and up2 and usemod)
    if strategy.position_size < 0
        strategy.close_all()
        
    strategy.entry("Long", strategy.long, needlong == false ? 0 : lot)

if ((dn1 or dn2) and usemod == false) or (dn1 and dn2 and usemod)
    if strategy.position_size > 0
        strategy.close_all()
        
    strategy.entry("Short", strategy.short, needshort == false ? 0 : lot)
    
if  exit
    strategy.close_all()