我正在开发一个使用复杂事件处理的算法交易应用程序,我正在考虑将微软StreamInsight作为CEP处理器。然而,我不确定我想要做的一切在StreamInsight中是否都是可能的。
特别是,我需要能够动态创建策略,然后将其作为标准查询插入到服务器中。例如,个人A创建了一个策略,在该策略中,当股票X的30天平均值高于某个特定值时,必须下买入订单。然后必须在StreamInsight查询中对其进行转换,并在运行时将其放置在服务器上。
我可以在StreamInsight查询中执行什么类型的代码?我不确定我想要做的所有处理是否都可以在StreamInsight查询中完成,因为它们都是linq查询。我可以使用来自其他数据源的数据吗?我可以在查询中使用开关、循环、变量声明等吗?或者只有一个查询,就像编译的查询一样?
这一切可能听起来有点模糊,如果需要的话,我会试着进一步澄清。基本上,我的问题是,我可以编写多复杂的StreamInsight查询?我找到的样本只显示了简单的过滤、分组等。
关于其他CEP服务器的建议也是受欢迎的,尽管我真的更喜欢停留在我的专业领域,即.NET/C#。
发布于 2010-10-13 00:54:21
有几个扩展点允许您在StreamInsight查询中嵌入自定义逻辑:
window.
支持对“原始”类型(字符串、数字等)执行自定义逻辑。http://msdn.microsoft.com/en-us/library/ee378928.aspx
StreamInsight的适配器模型(http://msdn.microsoft.com/en-us/library/ee378877.aspx)允许您连接到任意数据源,无论它们是实时数据源还是历史数据源。
如果您有关于如何启用特定功能的问题,请与我们联系!
-Colin
发布于 2011-05-16 04:16:03
您可以在StreamInsight服务器运行时创建查询以执行新操作。一旦您熟悉了StreamInsight应用程序接口,就不难做到这一点,并且可以在StreamInsight服务器本地完成(如果您正在托管进程内),或者使用管理服务远程完成。正如Colin (如上)所说,您可以将自定义代码添加到您的查询中以执行自定义评估。
https://stackoverflow.com/questions/3909394
复制相似问题