使用 IF 语句和切换来清理 TradingView 指标?
Using IF Statements And Toggle to Clean Up TradingView Indicator?
我的指示器顶部有一个切换按钮,我可以在其中确定我使用的是浅色还是深色主题:
toggleDarkColors = input.bool(true, title = "Toggle Dark Colors", group=g2)
toggleLightColors = input.bool(false, title = "Toggle Light Colors", group=g2)
颜色:
londonTradingWDColor = color.new(#66d9ef, 99) // Dark
londonTradingWLColor = color.new(#66d9ef, 93) // Light
我使用上面的颜色在图表上显示我的交易 window:
LondonTW = input(title='London Trading Window', defval=true, group=g6)
londonTradingWindow = toggleTradingWindow and is_session(londonTradingW)
bgcolor(toggleDarkColors and londonTradingWindow and LondonTW ? londonTradingWDColor : na)
bgcolor(toggleLightColors and londonTradingWindow and LondonTW ? londonTradingWLColor : na)
我遇到的 2 个问题是当我点击指标设置中的“样式”菜单时:
#01
我有 2 个显示“背景颜色”的复选框,因为上面有 2 个 bgcolor()。
有什么方法可以根据切换的颜色主题只显示 1 而不是 2?我试过 if 语句:
LondonTW = input(title='London Trading Window', defval=true, group=g6)
londonTradingWindow = toggleTradingWindow and is_session(londonTradingW)
LOTWDark = bgcolor(londonTradingWindow and LondonTW ? londonTradingWDColor : na)
LOTWLight = bgcolor(londonTradingWindow and LondonTW ? londonTradingWLColor : na)
if toggleDarkColors
LOTWDark
if toggleLightColors
LOTWLight
我收到错误:line 551: Void expression cannot be assigned to a variable
第 551 行是 LOKZDark = bgcolor(londonOKillZone and LondonOKZ ? londonOpenKZDColor : na)
#02
如何修改上面的 bgcolor()
代码来给它一个标题?我在 tradingviews pinescript v5 页面上查看了 bgcolor()
,但我无法理解。
有什么建议吗?
#1
不,这是不可能的。但是为什么不为此使用一个输入呢?假设你只保留 toggleDarkColors
,如果它是 true
,那么它就是深色。如果是false
,就是浅色
#2
bgcolor()
有一个 title
参数。
bgcolor(color, offset, editable, show_last, title) → void
title (const string) Title of the bgcolor. Optional argument.
编辑
对颜色选项使用一个输入。如果true
,使用深色,如果false
,使用浅色。一个颜色变量就足够了。然后在bgcolor()
.
中使用这个变量
toggleDarkColors = input.bool(true, title = "Toggle Dark Colors", group=g2)
londonTradingColor = toggleDarkColors ? color.new(#66d9ef, 99) : color.new(#66d9ef, 93)
bgcolor(londonTradingWindow and LondonTW ? londonTradingColor : na)
我的指示器顶部有一个切换按钮,我可以在其中确定我使用的是浅色还是深色主题:
toggleDarkColors = input.bool(true, title = "Toggle Dark Colors", group=g2)
toggleLightColors = input.bool(false, title = "Toggle Light Colors", group=g2)
颜色:
londonTradingWDColor = color.new(#66d9ef, 99) // Dark
londonTradingWLColor = color.new(#66d9ef, 93) // Light
我使用上面的颜色在图表上显示我的交易 window:
LondonTW = input(title='London Trading Window', defval=true, group=g6)
londonTradingWindow = toggleTradingWindow and is_session(londonTradingW)
bgcolor(toggleDarkColors and londonTradingWindow and LondonTW ? londonTradingWDColor : na)
bgcolor(toggleLightColors and londonTradingWindow and LondonTW ? londonTradingWLColor : na)
我遇到的 2 个问题是当我点击指标设置中的“样式”菜单时:
#01
我有 2 个显示“背景颜色”的复选框,因为上面有 2 个 bgcolor()。 有什么方法可以根据切换的颜色主题只显示 1 而不是 2?我试过 if 语句:
LondonTW = input(title='London Trading Window', defval=true, group=g6)
londonTradingWindow = toggleTradingWindow and is_session(londonTradingW)
LOTWDark = bgcolor(londonTradingWindow and LondonTW ? londonTradingWDColor : na)
LOTWLight = bgcolor(londonTradingWindow and LondonTW ? londonTradingWLColor : na)
if toggleDarkColors
LOTWDark
if toggleLightColors
LOTWLight
我收到错误:line 551: Void expression cannot be assigned to a variable
第 551 行是 LOKZDark = bgcolor(londonOKillZone and LondonOKZ ? londonOpenKZDColor : na)
#02
如何修改上面的 bgcolor()
代码来给它一个标题?我在 tradingviews pinescript v5 页面上查看了 bgcolor()
,但我无法理解。
有什么建议吗?
#1
不,这是不可能的。但是为什么不为此使用一个输入呢?假设你只保留 toggleDarkColors
,如果它是 true
,那么它就是深色。如果是false
,就是浅色
#2
bgcolor()
有一个 title
参数。
bgcolor(color, offset, editable, show_last, title) → void
title (const string) Title of the bgcolor. Optional argument.
编辑
对颜色选项使用一个输入。如果true
,使用深色,如果false
,使用浅色。一个颜色变量就足够了。然后在bgcolor()
.
toggleDarkColors = input.bool(true, title = "Toggle Dark Colors", group=g2)
londonTradingColor = toggleDarkColors ? color.new(#66d9ef, 99) : color.new(#66d9ef, 93)
bgcolor(londonTradingWindow and LondonTW ? londonTradingColor : na)