本来是打算花大时间,好好的学习vnpy的,后续作为自己主要开发工具(冲着可实盘)。
但这两天扫了遍代码,发现还是挺轻量级的,如果当做主要开发工具,需要补充还是挺多的(只支持单标的以及缺少分钟数据源。多标的需要另外定制模板类,有些负责,对个人玩家,真没精力在平台上花大力气折腾,公司来做比较合适,而且任何改动都需要完整的测试,否则就是真金白银的损失),后续更倾向于将其当做对接实盘的中介使用。开发,回测,模拟都还在米框上进行(赞下米框,最新也支持期货的模拟盘了)。
整理下当前vnpy的相对较好资料,后面想学习的化可以参考着来,少走弯路了。
官方wiki:https://github.com/vnpy/vnpy/wiki
视频教程:2017年最新VN.PY打造专属量化交易系统6天量化交易实战
闲鱼有售,百度理论上应该也能找到,适合完全没基础的学习,从python到vnpy结构到策略开发都有。(不过最好最好的了解vnpy方式还是自己读源代码)
钱塘小甲子:https://blog.csdn.net/qtlyx/column/info/30705
一系列的教程,适合用过类似开源框架的,米框,优矿等。完全没基础可能看不懂。不过这篇文章的几个模块大多都是“业务性”模块,缺乏逻辑性梳理代码(例:A的所有方法都转调用C实现,个人称之为“业务性”代码,实际执行的C里面算“干货代码",业务性代码容易阅读,但不容易理解“它究竟干了啥")。可以先扫一眼,然后细读代码后在回来看可能更好些
VNPY 软件架构分析:https://blog.csdn.net/u011331731/article/details/88946794
没看太懂,可能比较旧了和代码对应不起来。
VNPY回测流程:https://blog.csdn.net/u011331731/article/details/88946847
回测各步骤工作文字化了,无基础的用户可以看下(等价于回测函数的注释)
知乎专栏:https://zhuanlan.zhihu.com/vn-pz
一张图看懂VnTrader的数据流:https://blog.csdn.net/u011331731/article/details/88946916
这篇文章不错,建议第一遍草读代码后可以看下,帮助较大。vnpy目前版本相对靠后,迭代次数也听多了。
这种软件很多代码都是”业务性“代码,也就是很多方法都是啥都没干转调用别人,
好处是代码整体阅读会比较顺,第一遍可以不管实现,光看方法名就晓得干么,后面在细看。
坏处阅读代码时需要层层追溯才知道具体操作了那些实体0。
比如:很多方法在很多地方都出现过比如on——bar,on——trade等,导致很容易搞混,看着看着就弄不清这个具体在干么。
这篇文章讲的就比较好(主要是后面的文字部分),但里面有些小错误需要注意下(其实是过时的类等,最新版已经没了或改名了)
比如:回调推送端
4,ctpGateway.onTick函数将VtTickData对象包装成类型为EVENT_TICK的行情事件对象Event,并调用eventEngine.put函数,放入事件引擎的缓冲队列
这个ctpGateway,目前是一个包名,逻辑上对应新的vtGateway,vtGateway.onTick,将会把时间推送个eventEngine
VNPY初步分析:https://blog.csdn.net/byuanweiliang/article/details/76973098?utm_source=blogxgwz2
对调用流程讲解清除,需要读一遍代码在看这篇博文才能看懂