赞
踩
上一篇文章已经完成A股日线数据的下载,本文主要记录如何使用下载好的数据,利用回测框架,对策略进行验证。
回测和交易框架有多种选择,可参见链接:https://zhuanlan.zhihu.com/p/26983703。这篇文章还对其他量化“利器”进行了介绍。极宽在这些框架中选择了Backtrader,给出的说明为:“新一代TopQuant(TQ)极宽量化系统,将完全基于backtrader:类似小米与原生安卓的关系,在backtrader系统之上,增加多种本地化,和高效化的辅助工具。TQ极宽优化版,会进行极简化的二次封装,就一个TQ2019.py函数文件,超级简单。”
为了快速上手,体验跑通程序的快感,这里先直接使用Backtrader,借助其Quickstart中所展示的例子(https://www.backtrader.com/docu/quickstart/quickstart/),在A股数据上实现对策略的回测。至于极宽对Backtrader的封装,后面再做研究。
在VSCode中选择新建文件,然后保存到“D:\zwPython\zwrk”目录下,添加代码,开始开发测试。
整个例子比较长,一篇文章写完,笔者头大,读者也头大。因此,后续每篇文章提供一个版本的程序,在前一版本程序上添加一个小功能。
先来看第一版程序v1-基础设置:
from __future__ import (absolute_import, division, print_function,
unicode_literals)
import backtrader as bt
cerebro = bt.Cerebro()
print('Starting Portfolio Value: %.2f' % cerebro.broker.getvalue())
cerebro.run()
print('Final Portfolio Value: %.2f' % cerebro.broker.getvalue())
v1输出为:
Starting Portfolio Value: 10000.00
Final Portfolio Value: 10000.00
在v1中,主要做了以下工作:
v1的代码很简单,但是展示了以下内容:
Backtrader平台总会为用户创建一个代理来进行交易,如果用户没有指定特定代理,平台也会给用户设置一个默认的代理。
博客内容只用于交流学习,不构成投资建议,盈亏自负!
个人博客:http://coderx.com.cn/(优先更新)
项目最新代码:https://gitee.com/sl/quant_from_scratch
欢迎大家转发、留言。有微信群用于学习交流,感兴趣的读者请扫码加微信!
如果认为博客对您有帮助,可以扫码进行捐赠,感谢!
微信二维码 | 微信捐赠二维码 |
---|---|
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。