//@version=6
indicator("SSL")
compareSSL(a,b) =>
state = false
if ta.cross(a,b)
state := true
else if ta.cross(b,a)
state := true
state
// === SSL 60 ===
show_SSL = input.bool(true, 'Show SSL')
SSL = ta.wma(2 * ta.wma(close, 60 / 2) - ta.wma(close, 60), math.round(math.sqrt(60)))
SSLrangeEMA = ta.ema(ta.tr, 60)
SSLhigh = SSL + SSLrangeEMA * 0.2
SSLlow = SSL - SSLrangeEMA * 0.2
// === SSL 120 ===
SSL_120 = ta.wma(2 * ta.wma(close, 120 / 2) - ta.wma(close, 120), math.round(math.sqrt(120)))
SSL_120rangeEMA = ta.ema(ta.tr, 120)
SSL_120high = SSL_120 + SSL_120rangeEMA * 0.2
SSL_120low = SSL_120 - SSL_120rangeEMA * 0.2
// Trend and colors
SSL120color = close > SSL_120high ? color.new(color.aqua, 20) : close < SSL_120low ? color.new(#ff0062, 20) : color.gray
// Trend and colors
SSLcolor = close > SSLhigh ? color.new(color.teal, 0) : close < SSLlow ? #720f35 : #8b96be
newcolor = #2013dd
if compareSSL(SSL,SSL_120)
SSL120color := newcolor
SSLcolor := newcolor
else if compareSSL(SSLhigh,SSL_120high)
SSL120color := newcolor
SSLcolor := newcolor
else if compareSSL(SSLlow,SSL_120low)
SSL120color := newcolor
SSLcolor := newcolor
// Drawings 1
plotSSL = plot(show_SSL ? SSL : na, color=SSLcolor, linewidth=1, title='SSL Baseline')
plotSSLhigh = plot(show_SSL ? SSLhigh : na, color=SSLcolor, linewidth=1, title='SSL Highline')
plotSSLlow = plot(show_SSL ? SSLlow : na, color=SSLcolor, linewidth=1, title='SSL Lowline')
fill(plotSSLhigh, plotSSLlow, color=color.new(SSLcolor, 90))
// Drawings 2
plotSSL120 = plot(show_SSL ? SSL_120 : na, color=color.new(SSL120color, 100), linewidth=1, title='SSL120 Baseline')
plotSSL120high = plot(show_SSL ? SSL_120high : na, color=color.new(SSL120color, 100), linewidth=1, title='SSL120 Highline')
plotSSL120low = plot(show_SSL ? SSL_120low : na, color=color.new(SSL120color, 100), linewidth=1, title='SSL120 Lowline ')
fill(plotSSL120high, plotSSL120low, color=color.new(SSL120color, 80))
