【核心技术】普通用户如何利用功夫实现高频因子计算寻找Alpha?

董可人/CEO

高频因子可视为对高信息密度数据的一种采样转化,通过引入更多维的信息,才能在细节之处洞察市场的真实动向。然而,普通投资者要想找到Alpha并不容易,面临着数据获取、成本和专业设备存储等多方面挑战。为解决这个问题,功夫量化最新版本现在支持在线计算全市场 level2 全量数据,云端无限算力支持,用户可轻松便捷进行高频因子研究。

1. 正规渠道数据成本高

高频因子一般用于在 level2 级别的数据上进行挖掘,这类数据对于个人用户来说成本极高。如果要从正规渠道购买带有每日更新数据的服务,市场价格至少在几万块以上。

2. 公开数据源质量低

而且,服务商通常不太愿意为个人用户提供优惠折扣,因此在网上看到的相关资料或教程,大多基于一些公开免费的数据源,实际上只处理了快照数据。如果用户真的想从因子研究中找到alpha,这样是行不通的。别人逐笔分析,而您只看快照,无论您的模型有多出色,都很难获得竞争优势。

3. 硬件部署成本高

level2级别的逐笔数据,如果覆盖全市场范围,则数据量极大,一般每天的全市场数据量在30-50GB之间。如果想要分析较长时间跨度的数据,这种计算难以在个人家用电脑上完成,需额外采购专业的存储和计算硬件进行处理,这将带来不小的费用支出。

功夫量化:全市场Level2数据在线计算利器

针对这一问题,功夫量化最新版本已经升级,全面支持全市场 Level2 数据的在线计算。我们不仅提供了全量股票、期货和可转债的数据,还提供了线上的无限算力支持,帮助您轻松地开始进行真正的高频因子研究。

功夫量化https://www.kungfu-trader.com)全新服务的核心价值:

零基础设施投资:省去了昂贵的数据存储和处理设备投入,降低了量化交易的门槛。

数据即用性:每天数10GB的level 2数据,无需自行下载和管理,通过功夫的服务即时在线使用。

高效率处理:依托于功夫量化强大的后台计算能力,即便是T级的数据量也能迅速处理,提供快速回测和策略验证。

策略直接实盘应用:回测后的策略可直接应用于实盘环境,无需额外调整。

接下来,我将结合两个具体案例来说明如何使用功夫进行高频因子计算。

案例一:刻画市场涨跌:主动买卖因子计算

我们以“主动买卖因子”为例,该因子的定义如下:

该因子主要用于描述在市场上涨和下跌情况下,不同交易者的主动买卖意愿的差异。一般而言,大户和中户投资者为主的主动买卖因素在高收益情况下显示出正向选股效应;以小户为代表的主动买卖因素在低收益情况下显示出负向选股效应。

从定义中不难看出,要计算这个因子,必须基于逐笔成交来获取订单信息,而使用普通的快照行情是无法计算的。在这个过程中,我们首先通过on_transaction这个回调函数来处理逐笔成交:

将所有的逐笔按照标的分类存储在 ctx.transaction_list 这个变量里,然后在 post_stop 中对收集到的数据进行清洗:

完整的计算代码可直接下载:active_buy_sell.py

案例二:分析市场预期:超大单及小单同步性因子计算

在资金流同步相关性因子中,上述超大单和小单的同步相关性因子表现最好;但资金流同步相关性因子是”伪动力学”因子,在恒等式“超大单+大单+中单+小单=0“的约束下,该因子的 alpha 可以被两者流入量级所解释,其底层 alpha 来源仍是资金流强度。

从定义中不难看出,要想计算这个因子,必须基于逐笔成交来获取订单信息,用普通的快照行情是无法计算的。在功夫里,我们首先通过on_transaction 这个回调来处理逐笔成交:

将所有的逐笔按照标的分类存储在ctx.transaction_list 这个变量里,然后在post_stop 中对收集到的数据进行清洗:

最终通过函数 calc_sync_huge_little_factor 来完成因子计算:

(N日平均因子待续,也欢迎你自己尝试实现)

完整的计算代码可直接下载:sync_huge_little.py

功夫量化v2.7.0:Level2数据回测任务的运行

以上代码均可直接在功夫量化https://www.kungfu-trader.com)的最新版本v2.7.0里运行,首先把代码添加为策略:

点击添加策略按钮

选择代码文件路径,并设定一个策略名称

然后就可以通过“新建回测任务”的方式,在功夫的全市场 Level2 数据集上进行测试:

点击右上角“新建回测任务”

这里任意选取一天可用日期:

选择可用日期

点击确定,就会开始在线运行计算。计算过程中可以查看实时日志:

计算过程中可实时查看日志

计算完成后,会在日志打印因子计算结果:

计算结果打印

如上只是两个简单的高频因子的实现样例。这种基于优质数据和更强算力的能力会帮你的策略更容易找到 alpha,是功夫产品的愿景。功夫量化的产品近期还会持续升级,会不断优化计算过程和使用体验,例如很快会支持通过 Python 代码程序化访问因子计算结果,方便你把自己的因子导入到你已有的工作流程里。

最后附上我们的公众号和微信群,欢迎对高频因子研究感兴趣的朋友关注,加入(微信搜索 功夫量化,关注后可扫码入群 ),对于产品的使用有任何疑问,可以在公众号后台直接回复,功夫小伙伴们会第一时间为你解答: