【发布时间】:2019-10-17 00:53:09
【问题描述】:
我想在 pine-script (TradingView.com) 中计算每个交易时段内柱线的累积交易量。 我写了下面的脚本,但我收到错误“脚本无法从:for i = 1 到 session_bar_counter”
我尝试了以下解决方案,但它不起作用。
session_timeframe = input(defval='D', type=resolution)
// Bars since session started:
session_bar_counter = n - valuewhen(change(time(session_timeframe)) != 0, n, 0)
CumVol() =>
for i = 1 to session_bar_counter
sum = 0.0
sum := session_timeframe ? cum(nz(volume[i])) : na
sum
plot(series=CumVol(), title="Cumulative volume", color=red, linewidth=4)
预期的结果应该是每天重置和累积交易量的折线图。例如,对于会话的第一个柱,该值将是该柱的交易量。在第二个柱上,值将是 volume[1](前一个柱的成交量)+ 当前柱的成交量。
【问题讨论】:
-
你想在这里做什么
sum := session_timeframe ? cum(nz(volume[i])) : na?session_timeframe是一个字符串。 -
另外,我不确定
session_bar_counter是否正常工作。如果我绘制它,我总是得到零。 -
嗨,巴里斯,感谢您的调查。是的,你是对的, session_timeframe 是一个字符串。我想要的是获得每个 session_timeframe 的所有音量条的总和。我尝试将条件更改为 session_timeframe == "D" 但仍然没有成功。
-
我设法弄清楚我的浏览器有问题,需要用电视来解决。其他人在上述脚本上没有得到我得到的错误(即无法翻译脚本)。
-
关于您对 session_bar_counter 的第二次观察,只要图表上的时间范围是日内,它就可以正常工作。这就是脚本的全部目的 - 盘中。下面是一个正确计算会话中 4 小时周期的变量示例:tradingview.com/x/sTGSCo1Y 嗯,我想要的是对于这些日内柱中的每一个,我得到累积交易量,它是所有交易量的总和每个会话的栏,包括当前栏。我还计划将会话数限制为 100,以避免电视在短时间内崩溃
标签: session volume cumulative-sum pine-script