我正在将大量的股票数据输入InfluxDB。模式如下: tradeTime作为时间戳,tradeId和ticker是标记,价格(p)和量(v)是字段。
我试图计算每一笔交易的最后一分钟的VWAP。公式为和(p1_v1+ p2_v2 + p3*v3 +.)/(v1+v2+v3+.)。
我试图运行以下InfluxQL:
SELECT SUM(pv) / SUM(volume) AS VWAP FROM (
SELECT price*volume AS pv, volume FROM trade
WHERE time > NOW() - 1m)
GROUP BY time(1m)
我如何结合移动平均函数,因为我需要运行这对每一个交易?
另外,我也想把这个翻译成Flux。
发布于 2022-10-31 12:33:47
我不知道Influxdb是否能为每一笔交易做到这一点,但我知道don可以做到。这是VWAP的代码。
SELECT ticker, SUM(price * volume) / SUM(volume) AS VWAP
FROM trade
WHERE TIMEBOUNDARYDIFF('MINUTE', tradeTime, NOW()) < 1
GROUP BY ticker
https://stackoverflow.com/questions/73203282
复制