【发布时间】:2018-05-30 11:25:41
【问题描述】:
我在 kdb 中有以下示例表。
mkt:([] date:2018.05.05 2018.05.05 2018.05.05 2018.05.05; time:2018.05.05D01:30:00 2018.05.05D01:30:01 2018.05.05D01:30:01 2018.05.05D01:30:02; bid:((1.2110 1.21105);(1.2111 1.2109 1.2112);(1.2111 1.2109);(1.2110 1.21105)); bidSize:((3000000 1000000);(500000 1000000 1000000);(1000000 2000000);(1000000 1000000)); ask:((1.2111 1.21115);(1.2112 1.2110 1.2113);(1.2112 1.2110);(1.2111 1.21115)); askSize:((3000000 1000000);(500000 1000000 1000000);(1000000 2000000);(1000000 1000000)))
我有这个作为解决方案,但数字不是最准确的。
table:select date, time, bid:{x wavg y}'[bidSize;bid], bidSize: sum each bidSize, ask:{x wavg y}'[askSize;ask], askSize:sum each askSize from mkt
table: update cumulBidSize: sums bidSize, cumulAskSize: sums askSize from table
1#select from table where cumlBidSize>=5000000
我希望能够在给定特定大小(例如 5000000)时具有函数,计算该大小的 vwap。我怎样才能循环遍历单元格中的数据,直到获得 5000000?
【问题讨论】: