Esper:安全性,查找最大值和最小值的组刻度数据。然后执行进一步的计算

时间:2013-09-22 20:03:06

标签: java stock esper

我无法解决Esper中的某个问题。我必须检查当前的Tick值是否从昨天的最大值上升。这是代码,每24小时返回最大值和最小值。

insert into
DayEnd
select
max(last) as high,
min(last) as low,
security
from
Tick.std:groupwin(security).win:time_batch(1440 minutes) group by security;

我必须在多个证券上运行它,所以我必须检查每个证券。

1 个答案:

答案 0 :(得分:1)

批处理窗口不是这种大型批处理窗口的正确方法。这是因为批处理窗口会保留所有事件。

请改用上下文声明。上下文允许您构建分析的生命周期。 下面是一个示例,更多示例在解决方案中。 此示例是2个语句,版本4.10,语法未选中:

创建上下文Batch24Hour作为start @now在24小时后结束;

context Batch24Hour选择max(last)为high,min(last)为low​​,安全输出终止时Tick组的安全性;