新一代量化交易框架VNPY3.0上线
开源项目地址
https://gitee.com/vnpypro/vnpy
VNPY官网
如何快速搭建VNPY期货CTP框架的开发环境是本文的主要内容
VNPY从2021年下半年开始发布了全新架构的VNPY3.0 ,本文提及的VNTrader就是VNPY开源项目。
VNPY 产品定位是,中国内地证监会管辖下的合规市场的开源框架产品,主要分为期货版本和证券版本。
本次以VNPY全新VNTrader期货版本为例进行开发环境讲解,证券版预计在2022年春节发布,请大家密切关注。
以VNPY的VNTrader期货版本为例,采用的是上期CTP接口 ,支持国内5大交易所,包括中金所,上海期货交易所,大连期货交易所,郑州期货交易所,能源所,支持国内149家期货公司。
CTP接口分为行情接口和交易接口而部分,而原生CTP接口是基于C++的,对Python开发者就必须选择一款CTP的Python框架来实现。
如何快速搭建VNPY期货CTP框架的开发环境是本文的主要内容
VNPY从2021年下半年开始发布了全新架构的VNPY3.0 ,本文提及的VNTrader就是VNPY开源项目。
VNPY 产品定位是,中国内地证监会管辖下的合规市场的开源框架产品,主要分为期货版本和证券版本。
本次以VNPY全新VNTrader期货版本为例进行开发环境讲解,证券版预计在2022年春节发布,请大家密切关注。
以VNPY的VNTrader期货版本为例,采用的是上期CTP接口 ,支持国内5大交易所,包括中金所,上海期货交易所,大连期货交易所,郑州期货交易所,能源所,支持国内149家期货公司。
CTP接口分为行情接口和交易接口而部分,而原生CTP接口是基于C++的,对Python开发者就必须选择一款CTP的Python框架来实现。
这是VNTrader界面
下面我就来介绍一下快速入门的步骤。
一、安装开发环境(1)安装Python不必了
我们推荐采用Anaconda方式安装,Anaconda自带Python安装包 ,所以不用再单独安装Python安装包。
VNTrader DEMO涉及的库文件是64位,所以IDE(代码编译器pychrm),Anaconda(Python安装包),插件均要安装64位的版本。
(2)安装IDE,我们推荐使用PyCharm作为代码编译器
Pycharm下载,社区版本是免费的,需要安装64位
打开PyCharm官网 ,点击 Download 按钮
https://www.jetbrains.com/pycharm/
在下面页面中,选择免费的Community (社区版),当然您想花钱卖Professional (专业版)也可以。
安装包如下图所示
连续点击 Next 按钮,直到安装完成。
(3)安装 Anaconda
Anaconda 是一个开源的Python发行版本,其包含了conda、Python等180多个科学包及其依赖项。
https://www.anaconda.com/
选择Windows平台的64位版本下载
下载 Anaconda 安装包
运行此 Anaconda安装包,安装完成后,在下图位置启动Anaconda。
二、下载VNPY开源代码访问vnpy官网
https://www.vnpy.cn
点击”Gitee开源代码“按钮
进入开源中国页面,如图位置点击 "克隆/下载"->"下载zip",下载完美的压缩包,也可以通过Github Desktop程序Colon数据
下载完成后,即获得VNTrader整个项目文件。
解压后,进入项目目录
其中
CPP source目录: 是C++源代码文件,暂时不用关心
VNTrader目录: 是VNTrader客户端源代码
打开VNTrader目录,找到VNTradre.py文件
用双击VNTrader.py 文件用Pycharm打开项目
(4)安装 配置Pycharm为Anaconda
用Pycharm作为项目打开后,
打开菜单 ”Run->Edit Configurations..。“
在对话框如图红圈位置显示 "<No Interpreter>",说明没有配置好Python环境
开发环境一般以虚拟环境的形式,可选择不同配置环境,很容易搞错,我们既然选用了Anaconda 安装管理插件,所以需选用Anaconda
打开菜单 File ->Settings...
可能看到如下图红圈1内所示 "<No Interpreter>",和前图是一致的,我们需要点击红圈 2选择 ”+“,添加Anaconda
完成添加后,如图
我们还需在Anaconda 内部安装相应插件
VNTrader需要的插件有:
PyQT5 , pyqtgraph , numpy , pandas,
选择红圈内的VNTrader标签,在红圈搜索pyqt,把这些插件都安装上
如下图安装完成
安装Pandas库
再使用Pycharm打开VNTrader.py是这样的
红圈内是Anaconda 自动安装好的插件
试着运行一下
点击菜单 ”Run - > Run...“
选择 "VNTrader"
(5)安装Pycharm中文插件
打开菜单 ” File ->Settings... “
如图选中 ” Plugins“,在红圈1处填写”Chinese“搜索,在搜索结果中所图示红圈位置2,点击 "Install",安装Pycharm中文版插件。
重启pycharm程序。
s51.jpg (55.53 KB, 下载次数: 0)
下载附件
重启pycharm,发现Pycharm已经编程中文版本。
(6)在上述步骤中,不能正常运行
解决方案有3:
(1)未来的新版本Anaconda 中可能内置更新版本的pyqtgraph ,可以消除错误;
(2)改用pycharm安装配置,完全不依赖Anaconda 安装包;
(3)屏蔽出错处的”热力图“代码
再次运行
注意只有Talib库暂时不能从Anacanda搜索到,所以需要按以下步骤安装
在项目目录找到 名为“Talib安装包”的目录
打开目录,
我们当前系统安装的Anacanda内包含的是Python3.8的 64位版本,所以我们
找TA_Lib-0.4.21-cp38-cp38-win_amd64.whl 整个文件
将 Talib安装包 (TA_Lib-0.4.21-cp38-cp38-win_amd64.whl) 复制到
Anacanda目录的script目录
比如我账号是myw,那么拷贝路径为 C:\Users\myw\anaconda3\Scripts
在Pycharm的终端输入以下指令,进行安装,注意需要匹配的你Python版本,VNTrader都是64位版本,本地Anacanda集成的是Python3.8,
所以安装TA_Lib-0.4.21-cp38-cp38-win_amd64.whl这个版本
确认Pycharm环境指定为Anacanda环境后,
在Pycharm 下方选择“终端”标签运行命令行:
pip install C:\Users\myw\anaconda3\Scripts\TA_Lib-0.4.21-cp38-cp38-win_amd64.whl
回车
大家都知道,像上期CTP这样的API的交易所直供行情接口,是不会有历史数据服务的,只有实时数据,对于历史数据一般都是由用户自行处理。
就在今天 VNTrader 刚刚上线了K线历史数据服务,小伙伴们可自动同步更新M1周期K线数据,其他周期也可以生成了。
这样就解决了CTP开发者,经常无法保存完成的K线历史数据的问题。
当前服务只在显示K线时更新K线图显示,下一步会提供所有K线回测数据的下载功能。
对于开源软件来说,这个服务是可选项,也就是说即便不用这个服务,你也可以通过实时TICK行情生成K线数据,自己维护, VNTrader代码是开源的。
对K线服务模块, 可以选配使用,并不是必须的。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix