与传统的关系数据库和常见的时序数据库不同,DolphinDB不仅提供了高速存取时序数据的基本功能,而且内置了向量化的多范式编程语言与强大的计算引擎。DolphinDB的计算引擎不仅可以用于量化金融的回测和研发,也可以用于生产环境的实时计算,譬如高频因子的计算。
除了天然具备流表对偶性,支持使用 SQL 语句进行数据注入和查询分析这一优点外,DolphinDB 的流数据处理系统还提供了内置的流数据时间序列、横截面、异常检测、响应式状态引擎,同时可以方便快速地实现高频交易数据回放和流数据过滤功能。
批流一体
Python pandas / numpy 目前是研究阶段比较常用的高频因子解决方案,虽然 pandas 对历史面板数据处理有非常成熟的解决方案,但无论对历史数据计算,还是对实时数据计算,其性能都较差;同时由于 Python 仅支持全量计算,因此无法达到实时计算的性能要求。
在此基础上,考虑到生产环境中性能的重要性,很多用户机构会用 C++ 重新实现研究(历史数据)代码。不过,这种方法需要维护两套代码,开发成本(时间和人力)会大幅增加。此外,还要耗费大量精力确保两套系统的结果完全一致。
在 DolphinDB 中,我们可以通过历史数据检验因子的结果,检验完成后,将因子放到响应式状态引擎中去做实盘数据计算:一套代码可以同时作用于历史数据分析和实时计算。用 DolphinDB 的计算引擎实现增量实时计算,性能上等同于 C++ 代码的优化实现,而开发的难度则是大幅降低。
大家可以通过下面的短视频,快速了解如何用 DolphinDB 实现高频因子实时计算与批流一体 👇👇
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)