
دو طرفہ آر ایس آئی توڑنے کی حکمت عملی ایک الگورتھم ٹریڈنگ حکمت عملی ہے جو آر ایس آئی اشارے کو قیمتوں کے الٹ پوائنٹس کی نشاندہی کرنے کے لئے استعمال کرتی ہے۔ یہ آر ایس آئی اشارے کو مقررہ اوپر اور نیچے کی قیمتوں کے ساتھ موازنہ کرکے فیصلہ کرتا ہے کہ آیا مارکیٹ میں اوور بُو اور اوور سیل ہے یا نہیں اور اس کے بعد ٹریڈنگ سگنل جاری کرتا ہے۔
اس حکمت عملی کا انحصار بنیادی طور پر آر ایس آئی اشارے پر ہوتا ہے۔ آر ایس آئی اشارے کا حساب کتاب ایک خاص دورانیے کے دوران اختتامی قیمت میں ہونے والی تبدیلیوں پر مبنی ہوتا ہے ، جو اسٹاک کی خرید و فروخت کی طاقت کی عکاسی کرتا ہے۔ جب آر ایس آئی اوپر کی مقررہ اوپری قیمت ((ڈیفالٹ 75) سے تجاوز کرتا ہے تو ، اسٹاک اوور خرید علاقے میں داخل ہوتا ہے۔ جب آر ایس آئی نیچے کی مقررہ اوپری قیمت ((ڈیفالٹ 25) سے تجاوز کرتا ہے تو ، اسٹاک اوور سیل علاقے میں داخل ہوتا ہے۔
حکمت عملی کے فیصلے کے قواعد:
اس کی ٹریڈنگ منطق سادہ اور واضح ہے ، حوالہ پیرامیٹرز کو معقول حد تک ترتیب دیا گیا ہے ، اور اس کی جگہ بڑی ہے ، جو مارکیٹ میں بڑے رجحانات کو پکڑنے کے لئے موزوں ہے۔
اس حکمت عملی کے فوائد یہ ہیں:
مجموعی طور پر ، اس حکمت عملی کے حوالہ پیرامیٹرز کو مناسب طریقے سے ترتیب دیا گیا ہے ، اس کا نفاذ آسان ہے ، آر ایس آئی اشارے کے ذریعہ قیمتوں کے الٹ کو مؤثر طریقے سے فیصلہ کیا جاسکتا ہے ، اور یہ ایک آسان اور آسان استعمال کرنے والی مقداری حکمت عملی ہے۔
اگرچہ یہ ایک سادہ اور قابل اعتماد حکمت عملی ہے، ہم اس کے ممکنہ خطرات کو نظر انداز نہیں کر سکتے ہیں:
خطرے کو کنٹرول کرنے کے لئے، ہمیں مندرجہ ذیل چیزوں پر توجہ دینے کی ضرورت ہے۔
اس حکمت عملی کو بنیادی طور پر ریورس غلط فہمیوں اور ہنگامی صورتحال کے نقصانات کے خطرے کو مدنظر رکھتے ہوئے ، ہم مندرجہ ذیل پہلوؤں سے اصلاح کرسکتے ہیں:
دو طرفہ آر ایس آئی توڑنے کی حکمت عملی مجموعی طور پر ایک آسان عملی مقدار کی حکمت عملی ہے۔ یہ آر ایس آئی اشارے کے ذریعہ قیمتوں میں الٹ جانے کا فیصلہ کرتا ہے ، جس سے رجحان کی پیروی آسان ہوجاتی ہے۔ اگرچہ کچھ غلط فہمی کا خطرہ موجود ہے ، لیکن پیرامیٹرز کی ایڈجسٹمنٹ اور سگنل فلٹرنگ کے ذریعہ اس کو بہتر بنایا جاسکتا ہے ، جو وسط اور لمبی لائن کے رجحانات کو پکڑنے میں اہم کردار ادا کرتا ہے۔ اس کی منطق آسان ہے ، جو مقدار میں تجارت کرنے والے ابتدائی افراد کے لئے مناسب ہے۔
/*backtest
start: 2023-12-19 00:00:00
end: 2023-12-26 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("RSI Algo", overlay=true)
// Calculate start/end date and time condition
DST = 1 //day light saving for usa
//--- Europe
London = iff(DST==0,"0000-0900","0100-1000")
//--- America
NewYork = iff(DST==0,"0400-1500","0500-1600")
//--- Pacific
Sydney = iff(DST==0,"1300-2200","1400-2300")
//--- Asia
Tokyo = iff(DST==0,"1500-2400","1600-0100")
//-- Time In Range
timeinrange(res, sess) => time(res, sess) != 0
london = timeinrange(timeframe.period, London)
newyork = timeinrange(timeframe.period, NewYork)
time_cond = true
myPeriod = input(defval=14, type=input.integer, title="Period")
myThresholdUp = input(defval=75, type=input.float, title="Upper Threshold")
myThresholdDn = input(defval=25, type=input.float, title="Lower Threshold")
myAlgoFlipToggle = input(defval=false, type=input.bool, title="Imverse Algorthim")
myLineToggle = input(defval=true, type=input.bool, title="Show Lines")
myLabelToggle = input(defval=true, type=input.bool, title="Show Labels")
myRSI=rsi(close, myPeriod)
buy = myAlgoFlipToggle ? falling(myRSI,1) and cross(myRSI, myThresholdDn) : rising(myRSI, 1) and cross(myRSI,myThresholdUp) //and time_cond
sell = myAlgoFlipToggle ? rising(myRSI, 1) and cross(myRSI,myThresholdUp) : falling(myRSI,1) and cross(myRSI, myThresholdDn) //and time_cond
myPosition = 0
myPosition := buy==1 ? 0 : sell==1 or myPosition[1]==1 ? 1 : 0
trendColor = buy ? color.red : sell ? color.green : na
plot(myLineToggle ? buy and myPosition[1]==1 ? low - 0.004: sell and myPosition[1]==0 ? high + 0.004 : na : na, color=trendColor, style=plot.style_line, linewidth=4, editable=false)
plotshape(myLabelToggle ? buy and myPosition[1]==1 ? low - 0.005 : na : na, style=shape.labelup, location=location.absolute, text="Buy", transp=0, textcolor = color.white, color=color.black, editable=false)
plotshape(myLabelToggle ? sell and myPosition[1]==0 ? high + 0.005 : na : na, style=shape.labeldown, location=location.absolute, text="Sell", transp=0, textcolor = color.white, color=color.black, editable=false)
strategy.initial_capital = 50000
//Calculate the size of the next trade
balance = strategy.netprofit + strategy.initial_capital //current balance
floating = strategy.openprofit //floating profit/loss
risk = input(2,type=input.float,title="Risk %")/100 //risk % per trade
isTwoDigit = input(false,"Is this a 2 digit pair? (JPY, XAU, XPD...")
stop = input(250, title="stop loss pips")
tp = input(2500, title="take profit pips")
if(isTwoDigit)
stop := stop/100
temp01 = balance * risk //Risk in USD
temp02 = temp01/stop //Risk in lots
temp03 = temp02*100000 //Convert to contracts
size = 1
strategy.entry("long",1,size,when=buy and myPosition[1]==1 )
strategy.entry("short",0,size,when=sell and myPosition[1]==0)
strategy.exit("exit_long","long",loss=stop, profit=tp) //Long exit (stop loss)
strategy.exit("exit_short","short",loss=stop, profit=tp) //Short exit (stop loss)
//strategy.close_all(when= not time_cond)