qPython QProjection 问题而不是查询数据

qPython QProjection Issues instead of queried data

我尝试编写一个允许我传递参数的 Q 代码,但是我得到的结果是 Qprojection。我尝试使用

但解决方案不起作用(Q/kdb 世界的新手) 关于我到底应该改变什么有什么想法吗?

q.sync(
'''{[x;y;z]select from quotestackevent where date within(x;y),sym=z}''', 
[np.datetime64('2018-04-14','D'), #start date
np.datetime64('2018-04-14','D'), #end date
np.string_('GBPUSD')])

在 Q/KDB 中,函数格式是 {......}[x;y;z],x y z 是参数。如果你留下一个空白参数,那么函数就变成了一个投影。

qpython 允许您将 python 个参数传递给 q 函数,格式为 q.sync('{......}',x,y,z).

在您的示例中,方括号导致输入作为单个数组传递给函数,从而产生投影。这可以通过删除方括号来解决。

q.sync('{[x;y;z]select from quotestackevent where date within(x;y),sym=z}', np.datetime64('2018-04-14','D'), np.datetime64('2018-04-14','D'), np.string_('GBPUSD'))

希望对您有所帮助!