如何通过向量化操作提升策略回测速度?

相信很多投资者在做量化投研时都会有一种共识:量化投资领域里,成本最大的毫无疑问就是研发策略所消耗的时间成本,其中90%的时间都被消耗在因子挖掘、策略回测与优化等大型运算上。

如何提高运算程序的效率,成为了众多量化投资者面临的难题

而在Python编程中,有许多方法可以提高量化交易策略的回测速度,使用向量化操作就是一种行之有效的方法。

向量化操作是一种在整个数组或矩阵上执行操作的技术,可以大大提高代码的效率。在Python中,NumPy是一种非常流行的向量化操作库,可以加速数学计算和数据处理。当涉及到大量的计算时,我们可以尝试使用NumPy、Pandas或者其他库来进行向量化操作。

此处,我们以掘金量化终端中提供的示例策略【双均线策略(期货)】为例,尝试对其进行提速。

移动平均线是一种常用的技术分析指标,用于平滑价格数据。使用NumPy的向量化操作,可以进一步提升计算速度。

图片

示例策略第59行以及60行中,原策略代码中用到了rolling来进行滚动计算。我们可以考虑使用numpy.convolve对向量进行卷积计算,并与原策略代码进行回测对比:

1、向量化:使用np.array对prices进行向量化操作,再使用flatten进行降维;

2、卷积:使用np.convolve进行卷积计算长短均线,

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值