新一代量化交易框架VNPY3.0上线

 

 

开源项目地址

https://gitee.com/vnpypro/vnpy

VNPY官网

http://www.vnpy.cn

如何快速搭建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)
下载附件

2021-9-10 00:31 上传







重启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线服务模块, 可以选配使用,并不是必须的。

 

 

 

 

 

posted @   wka6890  阅读(1393)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· 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
点击右上角即可分享
微信分享提示