vn.py 是基于 Python 的开源量化交易程序开发框架,起源于国内私募的自主量化交易系统,目前已经成长为一套全功能的交易程序开发框架。
vn.py项目起源于国内私募的自主交易系统,2015年初启动时只是单纯的交易API接口的Python封装。随着业内关注度的上升和社区不断的贡献,目前已经一步步成长为一套全面的交易程序开发框架,用户群体也日渐多样化,包括私募基金、证券自营和资管、期货资管和子公司、高校研究机构、个人投资者等
vn.py 1.9.0 更新内容:
底层接口:
新增和优化一系列数字货币交易接口:huobi/okex/binance/bitfinex/bitmex/coinbase/lbank/bigone/fcoin/ccxt
对接富途证券新的 Python 3 版本接口,支持 Windows/Mac/Linux 全平台
算法交易:
新增 AlgoTrading 模块应用
提供一系列常用算法,包括:TWAP/BestLimit/Sniper/Stop/DMA/Iceberg/Arbitrage 等
算法配置和交易记录的数据库持久化方案
手动管理算法生命周期的 GUI 组件
基于 CSV 加载一篮子算法配置
通过 RPC 提供的跨进程算法调用服务功能
项目构成:
丰富的Python交易和数据API接口,基本覆盖了国内外常规交易品种(证券、期货、期权、外汇、CFD):
CTP(vn.ctp):期货、期货期权
飞创(vn.xspeed):期货、期货期权
飞马(vn.femas):中金所的期货和期货期权
金仕达期权(vn.ksotp):期货、期货期权、证券期权
金仕达黄金(vn.ksgold):金交所贵金属
飞鼠(vn.sgit):期货、金交所贵金属
QDP极速柜台(vn.qdp):期货、期货期权、金交所贵金属
OANDA(vn.oanda):外汇、CFD
Interactive Brokers(vn.ib):外盘股票、期货、期权、外汇等
直达期货(vn.shzd):外盘期货
OKCoin(vn.okcoin):比特币、莱特币等
通联数据(vn.datayes):历史行情数据、基本面数据
事件驱动引擎(vn.event),用于实现Python在全局锁(GIL)限制下的高性能事件驱动编程
开发示例(vn.demo),通过简洁明了的代码展示如何使用API和事件驱动引擎开发交易程序
交易平台(vn.trader),整合了vn.py项目中所有的交易接口以及Interactive Brokers的三方接口(IbPy),围绕事件驱动引擎设计了针对策略算法和交易应用开发的上层API,使得交易员可以专注于解决交易业务需求而无需关注底层细节,平台中提供了一套完整的CTA策略模块(回测和实盘)作为开发参考
RPC模块(vn.rpc),提供跨进程服务调用的RPC模块,同时支持服务端向客户端的主动数据推送,用于实现vn.py框架下模块的多进程解耦
其他:
初步完成底层接口和中层引擎的 Python 3 兼容修改工作