samtsui

Connors RSI Test

148
Re Fade2Black request:

The indicator needs to use Connors RSI on candle stick charts.

It basically needs to give an alert if the candle stick closes even or up but the Conors RSI closes down more than 3 points.

Here's a pic showing..

tinypic.com/r/2j62z5v/9

And on the flip side I also need it to give an alert if the candle closes even or down but the conors rsi close up more than 3 points.

Like this..

tinypic.com/r/imjod4/9

I hope I've explained myself well. Let me know how much you'd charge for this.

Thanks
Script open-source

Nello spirito di condivisione promosso da TradingView, l'autore (al quale vanno i nostri ringraziamenti) ha deciso di pubblicare questo script in modalità open-source, così che chiunque possa comprenderlo e testarlo. Puoi utilizzarlo gratuitamente, ma il riutilizzo del codice è subordinato al rispetto del Regolamento. Per aggiungerlo al grafico, mettilo tra i preferiti.

Declinazione di responsabilità

Le informazioni ed i contenuti pubblicati non costituiscono in alcun modo una sollecitazione ad investire o ad operare nei mercati finanziari. Non sono inoltre fornite o supportate da TradingView. Maggiori dettagli nelle Condizioni d'uso.

Vuoi usare questo script sui tuoi grafici?
//--study(title="Connors RSI")
study("Connors RSI Test", shorttitle = "CRSI Test", overlay=false)

//--------------- input parameters

src = input(defval=close, type=source, title="Source")
lenrsi = input(3, minval=1, type=integer, title="RSI Length")
lenupdown = input(2, minval=1, type=integer, title="UpDown Length")
lenroc = input(100, minval=1, type=integer, title="ROC Length")

//--------------- define function

updown(s) => 
    isEqual = s == s[1]
    isGrowing = s > s[1]
    ud = isEqual ? 0 : isGrowing ? (nz(ud[1]) <= 0 ? 1 : nz(ud[1])+1) : (nz(ud[1]) >= 0 ? -1 : nz(ud[1])-1)
    ud

//--------------- calculate RSIs

rsi = rsi(src, lenrsi)
updownrsi = rsi(updown(src), lenupdown)
percentrank = percentrank(roc(src, 1), lenroc)
crsi = avg(rsi, updownrsi, percentrank)

//--------------- calculate signal

sig1 = (close >= open) and (crsi < (crsi[1] - 3)) ? 1 : na
sig2 = (close <= open) and (crsi > (crsi[1] + 3)) ? 1 : na


//-------------- plotting
plot(crsi, color=blue, linewidth=1, title="Connors RSI")
band1 = hline(70, color=gray, linestyle=dashed)
band2 = hline(30, color=gray, linestyle=dashed)
fill(band1, band2)

plotshape(sig1, style=shape.labeldown, size=size.tiny, location=location.top, color=red)
plotshape(sig2, style=shape.labelup, size=size.tiny, location=location.bottom, color=blue)
//--END