发布于vn.py社区公众号【vnpy-community】
原文作者:用Python的交易员 | 发布时间:2022-01-18
之前12月底发布的2.9.0,为vn.py自从2019年以来开发迭代了三年的2.0大版本画上了一个句号。2022年已经开始了半个多月,虽然迟了点,不过老规矩还是要对2021年来做个总结回顾。
回顾2021年
先来看一眼2021年的vn.py项目整体数据(虽然统计日期是2022年1月17日):
用户数量
- Github Star:17.3k(+3.8k)
- Github Fork:7k(+1.2k)
- Gitee Star:1k
- Gitee Fork:419
项目开发
- 版本迭代:9次(2.1.9 -> 2.9.0)
- 交易接口:21个(移除23个)
- 策略应用:16个(不变)
- 数据库适配器:8个
- 数据服务:7个
社区交流
- 论坛用户数量:31033 (+12889)
- 论坛帖子数量:28485 (+10911)
- 社区活动:8次
- 专题小班课:3次
用户数量
截止2022年1月17日,vn.py在Github上一共收获了17369个Star,Fork数量达到7k,继续保持线性增长。下图来源于统计工具Star History:
除了Github外,我们在国内代码托管平台Gitee上维护的vn.py仓库也保持同步更新,累计已经收获1018个Star和419个Fork。
项目开发
2021年vn.py的主要开发工作就是【模块剥离计划】,截止12月底发布的2.9.0版本已经基本收尾。除了通用功能依旧保留在核心框架项目下,所有的交易接口(gateway)、应用模块(app)、数据库适配器(database)、数据服务接口(datafeed)都已经剥离到了独立的功能模块项目中。具体剥离后的模块信息,可以参考之前发布的《vn.py发布v2.9.0 - 模块剥离计划收尾》。
除了模块剥离方面的工作外,2021年也更加聚焦于国内机构用户的需求,精简移除了部分用户量较少的交易接口,新增了以下证券和期货方面的接口:
- EsunnyGateway:易盛柜台兼容交易接口(内盘期货、黄金TD);
- OstGateway:东方证券OST极速柜台交易接口(股票);
- HtsGateway:顶点HTS柜台交易接口(ETF期权);
- TtsGateway:TTS仿真系统交易接口(仿真模拟)。
数据库方面,增加了一系列读写性能优秀的NoSQL数据库支持,包括:
- DolphinDB:国产高性能分布式时序数据库;
- Arctic:基于MongoDB扩展开发的金融时序数据库;
- LevelDB:Google推出的高性能Key/Value数据库。
对于历史数据服务则是开发了独立的抽象接口(vnpy.trader.datafeed),并扩展了支持的数据服务范围:
云端类:
- 恒有数UData
- TuShare
- 天勤TQSDK
客户端类:
- 万得Wind
- 同花顺iFinD
- 天软TinySoft
策略应用方面,根据社区反馈的需求重构开发了新的WebTrader模块,采用FastAPI作为后端Web服务器:
整体架构图
服务参数配置
前端接口文档
社区交流
虽然2021年疫情明显好转,但反复出现的零星案例还是多次打乱了我们的线下活动计划。全年一共举办了8场社区活动(包括线上和线下),大概是近几年来比较少的了,专题小班课也因为同样的原因一共只搞了3场。
2021年回顾完,下一篇就是对2022年的计划了。今年我们将会启动全新3.0大版本的开发工作,如果你对vn.py过去一年有什么想分享的吐槽的,或者对新的一年有什么建议和期望,都在文章下面欢迎留言告诉我们!