用Mac实现vnpy策略回测
不死心,终于可以在mac上跑量化程序了,虽然还不能接交易接口,但也是一个进步。
在之前的文章《VNPY接QMT初始的一些坑》中提过,接QMT必须要使用windows电脑,因为xtquant的一些底层库,是使用原生程序编写,而非python。这就导致了,程序对于运行环境,有了硬要求,一定是x64的芯片,而新出的mac电脑,都已经换了arm架构的m系列芯片了。
数据源
前文说过,连接QMT需要win主机,那么mac没办法获取数据吗?tushare是目前我找到的最佳的解决方案,只是这方案需要花钱,而且价格不菲。
大家在某海鲜市场可以买到的账号,主要有两种
- 便宜点的,5000积分级别账号,下载不到分钟级K线数据,而且日线级别的数据还有调用限制
- 特殊权限账号,可以下载分钟级别数据,50块一个月,一年需要大几百。
解决数据问题
在vnpy中回测使用的是历史数据,而这些数据是放在本地数据库中,在我测过的两种数据库,sqlite和mysql中。
- sqlite是文件数据库,因此加载的数据量大的时候,会产生一个问题,这个文件全部加载进内存,对内存有很高的要求。我试过内存被撑爆一次,果断放弃。当然这也因人而异,如果数据量要求不大,这也是不错的。
- mysql得益于其机制与sqlite不同,至少目前我还没试过撑爆我的内容。
笔者已经把25年的全市场1分钟k线数据,和日k线数据准备好了,请关注公众号回复“数据”获取。这份数据将定期更新,因为我自己也再更新。

连接数据库
在vnpy中,进入配置,填写本地数据库连接信息。你就可以在策略回测时,加载到历史数据了。

