Examples
Four complete scripts that compile as-is: RSI with bands, a volatility squeeze, a VWAP deviation band and an inside-bar breakout.
Copy one with the button in its corner, paste it into the OxScript editor and press Add to chart.
//@oxscript=1
indicator("RSI bands", format=format.price, precision=2)
len = input.int(14, "Length", minval=1)
ob = input.int(70, "Overbought")
os = input.int(30, "Oversold")
r = ta.rsi(close, len)
plot(r, "RSI", color=color.purple)
hOb = hline(ob, "Overbought", color=color.gray)
hOs = hline(os, "Oversold", color=color.gray)
fill(hOb, hOs, color=color.new(color.purple, 90))
bgcolor(r > ob ? color.new(color.red, 90) : r < os ? color.new(color.green, 90) : na)//@oxscript=1
indicator("Squeeze", overlay=true)
[bbBasis, bbUp, bbLo] = ta.bb(close, 20, 2)
[kcBasis, kcUp, kcLo] = ta.kc(close, 20, 1.5)
squeeze = bbUp < kcUp and bbLo > kcLo
barcolor(squeeze ? color.orange : na)
plot(kcUp, "KC upper", color=color.new(color.blue, 40))
plot(kcLo, "KC lower", color=color.new(color.blue, 40))//@oxscript=1
indicator("VWAP band", overlay=true)
mult = input.float(1.5, "Band width", step=0.1)
v = ta.vwap(hlc3)
dev = ta.stdev(close - v, 50)
up = plot(v + mult * dev, "Upper", color=color.new(color.teal, 40))
lo = plot(v - mult * dev, "Lower", color=color.new(color.teal, 40))
plot(v, "VWAP", color=color.teal, linewidth=2)
fill(up, lo, color=color.new(color.teal, 92))//@oxscript=1
indicator("Inside-bar breakout", overlay=true)
inside = high[1] < high[2] and low[1] > low[2]
breakUp = inside and close > high[1]
breakDown = inside and close < low[1]
plotshape(breakUp, "Break up", style=shape.triangleup, location=location.belowbar, color=color.green)
plotshape(breakDown, "Break down", style=shape.triangledown, location=location.abovebar, color=color.red)
alertcondition(breakUp or breakDown, "Inside-bar break", "Inside bar broke on {{ticker}}")For strategies, see Strategy scripts.