自定义移动金额

时间:2019-02-21 16:18:40

标签: kdb

我想从交易表中创建一个五项移动总和。我; e;每行应为先前交易规模的总和。难点是,Id希望从这5行中仅删除价格最高和价格最低的行。

这可能吗?

RD

3 个答案:

答案 0 :(得分:2)

我认为此功能将起作用

  const authGroups = await models.authGroup.findAll({
        where :filters
    }); 

函数q)trade:([]price:100?100f;size:100?100) q)w:{(til[count z]-m)+x each flip reverse prev\[m:y-1;z]} q)update top:size w[{x?max x};5;price],bot:size w[{x?min x};3;price],ms:5 msum size,rms:(5 msum size)-((size w[{x?max x};5;price])+(size w[{x?min x};5;price])) from trade price size top bot ms rms ------------------------------ 64.14975 70 70 70 70 -70 90.82711 36 36 70 106 0 97.96094 12 12 70 118 36 30.77491 97 12 97 215 106 36.52273 92 12 97 307 198 95.91177 99 12 97 336 227 41.21866 45 12 92 345 236 63.3041 83 99 45 416 220 57.52693 94 99 45 413 222 0.9011743 8 99 8 329 222 14.48057 97 83 8 327 236 77.06132 52 52 8 334 274 36.96114 66 52 97 317 257 11.75355 24 52 24 247 187 92.34386 60 60 24 299 215 40.15936 69 60 24 271 187 56.19037 8 60 69 227 143 72.4948 62 60 69 223 139 81.12026 95 60 8 294 165 20.86614 59 95 59 293 139 将允许选择和删除与最高和最低价格相对应的尺寸。这是通过(msum size)-(top + bot)更新来完成的。不幸的是,第一个元素存在问题,如果找到一个元素,我将对此进行评论。

答案 1 :(得分:1)

看起来您应该可以通过带有自定义功能的滑动窗口来做到这一点:

q)func:{sum[x] - min[x] + max[x]}
q)swin:{[f;w;s] f each { 1_x,y }\[w#0;s]}
q)swin[func; 5; til 1000]

例如。

答案 2 :(得分:0)

另一种方法(按符号):

err body {"httpStatus":404,"errorType":"NotFound","message":"Device does not exist!"}