有没有办法在函数中使用 bgcolor?
Is there a way to use bgcolor inside a function?
我正在尝试创建一个从代码中获取条件的图表,在本例中为 VIX,并在满足条件时更改当前图表的背景颜色。但是,bgcolor 不断抛出此错误 line 22: Cannot use 'bgcolor' in local scope.
有没有办法在函数中保留 bgcolor
以便它知道是否应该更改背景颜色?谢谢!
//@version=4
study(title="Help (VIX Momo)", shorttitle="Vix Momo", overlay=false)
stock_1 = input(title='Stock Selection', defval='TVC:VIX')
highlight(stock_1) =>
vix_30sma = security(stock_1, 'D', sma(close, 30))
vix_50sma = security(stock_1, 'D', sma(close, 50))
timeFrame_VIX = input(title="Other time frame", type=input.resolution, defval="180")
smaClose_VIX = security(stock_1, timeFrame_VIX, sma(close,200))
threehr_price_VIX = security(stock_1, timeFrame_VIX, close)
red_VIX = (vix_30sma > vix_50sma) and (threehr_price_VIX >= smaClose_VIX) and (close >= vix_50sma)
if red_VIX
bgcolor(red_VIX ? #eb4034 : na, transp = 80)
else
na
p1 = security(stock_1, 'D', highlight(stock_1))
plot(p1, title="VIX")
在我看来,您对这种情况感到困惑。但无论如何,最终的脚本将如下所示。
//@version=4
study(title="Help (VIX Momo) v2", shorttitle="Vix Momo", overlay=false)
stock_1 = input(title='Stock Selection', defval='TVC:VIX')
timeFrame_VIX = input(title="Other time frame", type=input.resolution, defval="180")
highlight() =>
vix_30sma = sma(close, 30)
vix_50sma = sma(close, 50)
smaClose_VIX = sma(close,200)
threehr_price_VIX = close
red_VIX = (vix_30sma > vix_50sma) and (threehr_price_VIX >= smaClose_VIX) and (close >= vix_50sma)
p1 = security(stock_1, timeFrame_VIX, highlight())
//plot(p1, title="VIX")
bgcolor(p1 ? #eb4034 : na, transp = 80)
我正在尝试创建一个从代码中获取条件的图表,在本例中为 VIX,并在满足条件时更改当前图表的背景颜色。但是,bgcolor 不断抛出此错误 line 22: Cannot use 'bgcolor' in local scope.
有没有办法在函数中保留 bgcolor
以便它知道是否应该更改背景颜色?谢谢!
//@version=4
study(title="Help (VIX Momo)", shorttitle="Vix Momo", overlay=false)
stock_1 = input(title='Stock Selection', defval='TVC:VIX')
highlight(stock_1) =>
vix_30sma = security(stock_1, 'D', sma(close, 30))
vix_50sma = security(stock_1, 'D', sma(close, 50))
timeFrame_VIX = input(title="Other time frame", type=input.resolution, defval="180")
smaClose_VIX = security(stock_1, timeFrame_VIX, sma(close,200))
threehr_price_VIX = security(stock_1, timeFrame_VIX, close)
red_VIX = (vix_30sma > vix_50sma) and (threehr_price_VIX >= smaClose_VIX) and (close >= vix_50sma)
if red_VIX
bgcolor(red_VIX ? #eb4034 : na, transp = 80)
else
na
p1 = security(stock_1, 'D', highlight(stock_1))
plot(p1, title="VIX")
在我看来,您对这种情况感到困惑。但无论如何,最终的脚本将如下所示。
//@version=4
study(title="Help (VIX Momo) v2", shorttitle="Vix Momo", overlay=false)
stock_1 = input(title='Stock Selection', defval='TVC:VIX')
timeFrame_VIX = input(title="Other time frame", type=input.resolution, defval="180")
highlight() =>
vix_30sma = sma(close, 30)
vix_50sma = sma(close, 50)
smaClose_VIX = sma(close,200)
threehr_price_VIX = close
red_VIX = (vix_30sma > vix_50sma) and (threehr_price_VIX >= smaClose_VIX) and (close >= vix_50sma)
p1 = security(stock_1, timeFrame_VIX, highlight())
//plot(p1, title="VIX")
bgcolor(p1 ? #eb4034 : na, transp = 80)