
یہ حکمت عملی آر ایس آئی اشارے پر مبنی کراس ٹائم فریم بی ٹی سی کو ڈیفائی کرنے کی حکمت عملی ہے۔ اس حکمت عملی کو ہر K لائن کی کراسنگ ویٹڈ اوسط قیمت ((VWAP) کے حساب سے ایک VWAP وکر حاصل کیا جاتا ہے ، اور پھر اس وکر پر آر ایس آئی اشارے کا اطلاق ہوتا ہے۔ جب آر ایس آئی اشارے میں اوور بائڈ زون سے نیچے کی طرف جانے والا ڈائی فورک سگنل ظاہر ہوتا ہے تو ، بی ٹی سی کو ڈیفائی کریں۔
اس حکمت عملی میں وی ڈبلیو اے پی اور آر ایس آئی کے ساتھ مل کر بی ٹی سی کی اوورلوڈ اور اوورلوڈ اسٹیٹس کی نشاندہی کی گئی ہے ، جو ٹائم فریم کے ذریعہ کام کرتی ہے ، جو خطرے کو مؤثر طریقے سے کنٹرول کرسکتی ہے۔ حکمت عملی کا نظریہ واضح اور سمجھنے میں آسان ہے ، مزید ٹیسٹ اور اصلاح کے قابل ہے ، جو ریل اسٹیٹ ٹریڈنگ پر لاگو ہوتا ہے۔
/*backtest
start: 2023-12-21 00:00:00
end: 2023-12-28 00:00:00
period: 1m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("Soran Strategy 2 - SHORT SIGNALS", pyramiding=1, initial_capital=1000, default_qty_type=strategy.percent_of_equity, default_qty_value=50, overlay=false)
// ----------------- Inputs ----------------- //
reso = input(title="Resolution", type=input.resolution, defval="")
length = input(20, title="RSI Length", type=input.integer)
ovrsld = input(30, "RSI Oversold level", type=input.float)
ovrbgt = input(85, "RSI Overbought level", type=input.float)
lateleave = input(28, "Number of candles", type=input.integer)
// lateleave : numbers of bars in overbought/oversold zones where the position is closed. The position is closed when this number is reached or when the zone is left (the first condition).
// best parameters BTCUSDTPERP M15 : 20 / 30 / 85 / 28
stratbull = input(title="Enter longs ?", type = input.bool, defval=true)
stratbear = input(title="Enter shorts ?", type = input.bool, defval=true)
stratyear = input(2020, title = "Strategy Start Year")
stratmonth = input(1, title = "Strategy Start Month")
stratday = input(1, title = "Strategy Start Day")
stratstart = timestamp(stratyear,stratmonth,stratday,0,0)
// --------------- Laguerre ----------------- //
laguerre = input(title="Use Laguerre on RSI ?", type=input.bool, defval=false)
gamma = input(0.06, title="Laguerre Gamma")
laguerre_cal(s,g) =>
l0 = 0.0
l1 = 0.0
l2 = 0.0
l3 = 0.0
l0 := (1 - g)*s+g*nz(l0[1])
l1 := -g*l0+nz(l0[1])+g*nz(l1[1])
l2 := -g*l1+nz(l1[1])+g*nz(l2[1])
l3 := -g*l2+nz(l2[1])+g*nz(l3[1])
(l0 + 2*l1 + 2*l2 + l3)/6
// ---------------- Rsi VWAP ---------------- //
rsiV = security(syminfo.tickerid, reso, rsi(vwap(close), length))
rsiVWAP = laguerre ? laguerre_cal(rsiV,gamma) : rsiV
// ------------------ Plots ----------------- //
prsi = plot(rsiVWAP, color = rsiVWAP>ovrbgt ? color.red : rsiVWAP<ovrsld ? color.green : color.white, title="RSI on VWAP", linewidth=1, style=plot.style_line)
hline = plot(ovrbgt, color = color.gray, style=plot.style_line)
lline = plot(ovrsld, color = color.gray, style=plot.style_line)
fill(prsi,hline, color = rsiVWAP > ovrbgt ? color.red : na, transp = 30)
fill(prsi,lline, color = rsiVWAP < ovrsld ? color.green : na, transp = 30)
// ---------------- Positions: only shows the Short and close shoret positions --------------- //
timebull = stratbull and time > stratstart
timebear = stratbear and time > stratstart
strategy.entry("Short", false, when = timebear and crossunder(rsiVWAP, ovrbgt), comment="")
strategy.close("Short", when = timebear and crossunder(rsiVWAP, ovrsld)[lateleave] or crossover(rsiVWAP, ovrsld), comment="")