
یہ حکمت عملی ایک سال کے دوران ایڈجسٹ پر مبنی آر ایس آئی شاک ٹریڈنگ حکمت عملی ہے جس میں آر ایس آئی اشارے کے درمیان طے شدہ اوپر اور نیچے کے درمیان شاک کی خصوصیات کو ٹریک کرکے ٹریڈنگ سگنل جاری کیا جاتا ہے جب آر ایس آئی اشارے اوپر اور نیچے کی ٹریک کو چھوتا ہے۔
آر ایس آئی پیرامیٹرز ، ٹریڈنگ سائیکل ٹائم رینج ، اسٹاپ اسٹاپ نقصان تناسب وغیرہ کو ایڈجسٹ کرکے اصلاح کی جاسکتی ہے۔
اس حکمت عملی نے سال کے دوران آر ایس آئی اشارے کے مخصوص دورانیے کی لرزتی خصوصیات کے ذریعہ رجحانات کی پیروی کی تجارت کی ، جس سے تجارتی خطرے کو مؤثر طریقے سے کنٹرول کیا جاسکے۔ پیرامیٹرز کی اصلاح اور قواعد کی اصلاح کے ذریعہ حکمت عملی کی اعلی تاثیر حاصل کی جاسکتی ہے۔
/*backtest
start: 2024-01-01 00:00:00
end: 2024-01-31 23:59:59
period: 2h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=3
strategy(title = "Bitlinc MARSI Study AST",shorttitle="Bitlinc MARSI Study AST",default_qty_type = strategy.percent_of_equity, default_qty_value = 100,commission_type=strategy.commission.percent,commission_value=0.1,initial_capital=1000,currency="USD",pyramiding=0, calc_on_order_fills=false)
// === General Inputs ===
lengthofma = input(62, minval=1, title="Length of MA")
len = input(31, minval=1, title="Length")
upperband = input(89, minval=1, title='Upper Band for RSI')
lowerband = input(10, minval=1, title="Lower Band for RSI")
takeprofit =input(1.25, title="Take Profit Percent")
stoploss =input(.04, title ="Stop Loss Percent")
monthfrom =input(8, title = "Month Start")
monthuntil =input(12, title = "Month End")
dayfrom=input(1, title= "Day Start")
dayuntil=input(31, title= "Day End")
// === Innput Backtest Range ===
//FromMonth = input(defval = 9, title = "From Month", minval = 1, maxval = 12)
//FromDay = input(defval = 1, title = "From Day", minval = 1, maxval = 31)
//FromYear = input(defval = 2018, title = "From Year", minval = 2017)
//ToMonth = input(defval = 1, title = "To Month", minval = 1, maxval = 12)
//ToDay = input(defval = 1, title = "To Day", minval = 1, maxval = 31)
//ToYear = input(defval = 9999, title = "To Year", minval = 2017)
// === Create RSI ===
src=sma(close,lengthofma)
up = rma(max(change(src), 0), len)
down = rma(-min(change(src), 0), len)
rsi = down == 0 ? 100 : up == 0 ? 0 : 100 - (100 / (1 + up / down))
plot(rsi,linewidth = 2, color=purple)
// === Plot Bands ===
band1 = hline(upperband)
band0 = hline(lowerband)
fill(band1, band0, color=blue, transp=95)
// === Entry and Exit Methods ===
longCond = crossover(rsi,lowerband)
shortCond = crossunder(rsi,upperband)
// === Long Entry Logic ===
if ( longCond )
strategy.entry("LONG", strategy.long, stop=close, oca_name="TREND", comment="LONG")
else
strategy.cancel(id="LONG")
// === Short Entry Logic ===
if ( shortCond )
strategy.entry("SHORT", strategy.short,stop=close, oca_name="TREND", comment="SHORT")
else
strategy.cancel(id="SHORT")
// === Take Profit and Stop Loss Logic ===
//strategy.exit("Take Profit LONG", "LONG", profit = close * takeprofit / syminfo.mintick, loss = close * stoploss / syminfo.mintick)
//strategy.exit("Take Profit SHORT", "SHORT", profit = close * takeprofit / syminfo.mintick, loss = close * stoploss / syminfo.mintick)
strategy.exit("LONG TAKE PROFIT", "LONG", profit = close * takeprofit / syminfo.mintick)
strategy.exit("SHORT STOP LOSS", "SHORT", profit = close * takeprofit / syminfo.mintick)
strategy.exit("LONG STOP LOSS", "LONG", loss = close * stoploss / syminfo.mintick)
strategy.exit("SHORT STOP LOSS", "SHORT", loss = close * stoploss / syminfo.mintick)