//@version=4 study(title="RSC Trend Trading Study", shorttitle="RSC TTS", overlay=true) lengthHigher = input(title="Buy Donchian Channel Period", defval=20, minval=1) lengthLower = input(title="Buy Donchian Channel Period", defval=10, minval=1) smaFast = input(title="SMA Fast", defval=50) smaSlow = input(title="SMA Slow", defval=200) buyOverSma50 = input(title="Buy Over SMA 50 Close", defval=true) buyOverSma50andSma200 = input(title="Buy Over SMA 50 & 200 Close", defval=true) lower = lowest(lengthLower) upper = highest(lengthHigher) //basis = avg(upper, lower) ma200 = sma(close, smaSlow) ma50 = sma(close, smaFast) u = plot(upper, color=color.aqua, linewidth=2, transp=0) l = plot(lower, color=color.orange, linewidth=2, transp=0) plot(ma50, color=color.red, linewidth=2, transp=0) plot(ma200, color=color.green, linewidth=2, transp=0) fill(u, l, color=color.blue) rscTiActive = 0 rscTi = 0 if (buyOverSma50 and not buyOverSma50andSma200) if (high >= upper and close > ma50) rscTi := 1 //strategy.entry("Long", strategy.long) if (buyOverSma50andSma200) if (high >= upper and close > ma200 and close > ma50) rscTi := 1 //strategy.entry("Long", strategy.long) if (low <= lower) rscTi := -1 //strategy.entry("Short", strategy.short, when=low <= lower) rscTiActive := rscTi == 1 or rscTi == -1 ? rscTi : rscTiActive[1] rscTi := rscTiActive[1] == rscTi ? 0 : rscTi plotshape(rscTi == 1 ? true : false, location=location.belowbar, style=shape.triangleup, color=color.aqua, size=size.tiny, text="Buy", textcolor=color.aqua, transp=0) plotshape(rscTi == -1 ? true : false, location=location.abovebar, style=shape.triangledown, color=color.red, size=size.tiny, text="Sell", textcolor=color.red, transp=0) alertcondition(rscTi == 1 ? true : false, title="RSC TT Buy", message='{"content": "RSC Trend Trade Buy Alert:\\n {{exchange}}:{{ticker}}\\n Price: {{close}}"}') alertcondition(rscTi == -1 ? true : false, title="RSC TT Sell", message='{"content": "RSC Trend Trade Sell Alert:\\n {{exchange}}:{{ticker}}\\n Price: {{close}}"}')