Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //by quakefiend
- //this script takes values from bollinger bands, keltner channels, and RSI to add buy and
- //sell signals to the chart. its basically an extreme oversold/overbought indicator that combines
- //multiple indicators to signal long/short opportunities. It also helps to see actual swing
- //lows and highs, as opposed to signalling in the middle of the trend like say a MA crossover.
- //be wary of signals in high volatility; it may be better to use other signals to enter the trade
- //and use these signals as an exit (e.g. long signal would become a signal to cover your
- //short position)
- //
- //if you like it, consider a small BTC donation: 13kPjJkstrGtH9nk1ZZZPfvWR8YxpFFEzB
- //if you hate it, email me at nuklear@gmail.com and tell me what I did wrong =)
- study(title = "Extreme Range", shorttitle="XR",overlay=true)
- //reusable vars
- source = close
- //get bollinger band values
- bollength = input(defval=20,title="bollinger length",type=integer, minval=1,maxval=300)
- mult = input(defval=2.5,title="bollinger std dev",type=float, minval=0.1, maxval=50)
- basis = sma(source, bollength)
- dev = mult * stdev(source, bollength)
- bolupper = basis + dev
- bollower = basis - dev
- //get keltner channel values
- useTrueRange = input(true)
- keltlength = input(defval=20,title="keltner length",type=integer, minval=1,maxval=300)
- keltmult = input(defval=2.5,title="keltner multiplier",type=float,minval=.1,maxval=50)
- ma = ema(source, keltlength)
- keltrange = useTrueRange ? tr : high - low
- keltrangema = ema(keltrange, keltlength)
- keltupper = ma + keltrangema * keltmult
- keltlower = ma - keltrangema * keltmult
- //get RSI value
- rsilength = input(defval=13,title="RSI length",type=integer,minval=1,maxval=300)
- rsival = rsi(source,rsilength)
- //plot long signals
- longplot = lowest(1) < keltlower and lowest(1) < bollower and rsival < 40 ? lowest(1) : na
- plot(longplot,color=#00CC25,style=circles,linewidth=3)
- //plot short signals
- shortplot = highest(1) > keltupper and highest(1) > bolupper and rsival > 60 ? highest(1) : na
- plot(shortplot,color=#CC0000,style=circles,linewidth=3)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement