因子挖掘是量化交易的基础。随着历史交易数据日益增多,交易市场量化竞赛的不断升级和进化,量化投研团队开始面对数据频率高、因子数量多的场景,以10分钟线10000个因子5000个股票为例,一年的因子数据约为2.3T左右,1分钟线的数据量达到23T,3秒线的数据量将达到460T。如此量级的数据就对因子存储方案提出了很高的要求。
那么,我们要如何解决中高频多因子数据的存储问题呢?目前行业有哪些核心挑战?
因子库存储有哪些挑战?
庞大的数据量
因子计算通常有3个维度,股票、因子和时间。我们做一个简单的计算,国内股票总个数按5000来算;因子个数一般机构大约为1000起,多的甚至有10000;时间频率高的是每3秒生成一次数据,频率低的也有10分钟一次——也就是说,一只股票一个因子一天会生成24到4800个tick。面对如此庞大的数据量,如何保证高效的数据写入是因子库存储的一大挑战。
动态变化的因子库
因子库经常会发生变化,往往需要新增因子、修改因子定义,或加入新的股票等。面对T级的因子数据,单个因子的新增、修改、删除耗时应该保证在秒级才能确保整体量化投研的效率。
最适合金融计算的输出方式
量化金融的多因子建模通常需要以面板数据进行截面因子分析。用户需要从海量的因子数据中尽可能高速并精准的读取数据,对齐多个因子后以面板的方式输出。这对数据库的性能提出了极大的挑战。
直播预告
2022年12月1日晚7点半,DolphinDB 创始人周小华博士,和 DolphinDB 数据分析负责人毛忻玥,将与大家共聚直播间,围绕「高频多因子存储的最佳实践」与大家展开探讨。点击海报并长按,扫描二维码报名吧!
推广