这里有几个不同的问题:
- Pine 脚本看不到您可能手动选择的图表时区。这只会影响图表的显示。
- The
minute
变量返回分钟开始栏的位置,因此在实时栏的脚本迭代中不会更改,直到新的栏开始。要获取当前分钟,您需要使用重载版本minute https://www.tradingview.com/pine-script-reference/v4/#fun_minute您可以在其中指定时间戳(以毫秒为单位)。这timenow https://www.tradingview.com/pine-script-reference/v4/#var_timenow内置变量返回特定脚本迭代时间的时间戳(在实时柱中是这样;当脚本在历史柱上运行时,timenow
仅在脚本执行期间每秒更新)。所以你需要使用minute(timenow)
.
- 如果你想
minute()
要返回交易所以外的另一个时区的时间,您可以使用第二个参数来指定时区,这就是我们在第二个示例中所做的。在我们的示例中,您可以通过脚本的“设置/输入”更改时区。与时区一起使用,minute()
看起来像:
minute(timenow, "GMT-4")
.
//@version=4
study("", "Time", true)
i_timeZone = input("GMT-4")
f_print(_txt) => var _lbl = label.new(bar_index, highest(10)[1], _txt, xloc.bar_index, yloc.price, #00000000, label.style_none, color.gray, size.large, text.align_left), label.set_xy(_lbl, bar_index, highest(10)[1]), label.set_text(_lbl, _txt)
f_print(tostring(hour(timenow), "00:") + tostring(minute(timenow), "00:") + tostring(second(timenow), "00") + " (Exchange)\n")
f_print(tostring(hour(timenow, i_timeZone), "00:") + tostring(minute(timenow, i_timeZone), "00:") + tostring(second(timenow, i_timeZone), "00") + " (Input: " + i_timeZone + ")")