VeighNa(原名 vnpy)是一套基于 Python 的开源量化交易系统开发框架
VeighNa (vnpy) 详细部署教程
VeighNa(原名 vnpy)是一套基于 Python 的开源量化交易系统开发框架,自发布以来已积累众多来自私募基金、证券公司等机构的用户。本教程将指导你完成从环境准备到最终启动量化交易终端的全流程。
目录
- 准备工作
- Windows 部署(推荐新手)
- Ubuntu 部署
- macOS 部署
- Docker 部署
- 源码手动安装(进阶)
- 启动与验证
- 常见问题与解决
准备工作
系统与硬件要求
- 操作系统:Windows 11/Windows Server 2022、Ubuntu 22.04 LTS、macOS 10.13+。
- Python 版本:Python 3.10 以上(64 位),推荐 Python 3.13。
- 硬件:内存至少 4GB(虚拟机需调至 4GB 以上,否则编译会报错)。
前置知识
- 基础命令行操作。
- 了解 Python 虚拟环境概念(推荐使用 conda 或 venv)。
Windows 部署(推荐新手)
VeighNa 为 Windows 用户提供了一站式 Python 发行版 VeighNa Studio,这是最快捷的安装方式,集成了 Python 解释器、VeighNa 框架及所有依赖库。
方式一:VeighNa Studio 一键安装(最简单)
第一步:下载安装包
- 访问 VeighNa 官网,找到 VeighNa Studio 下载链接。注意官网提供的是 VeighNa Station(图形化管理工具)的下载入口,Studio 是包含完整环境的安装包。
第二步:运行安装
- 双击下载的安装包,推荐右键选择“使用管理员身份运行”。
- 按照安装向导,点击 “快速安装” 使用默认路径(
C:\veighna_studio)。 - 等待安装完成,桌面会出现 VeighNa Station 图标。
第三步:启动
双击桌面 VeighNa Station 图标,登录社区账号后,点击 “VeighNa Trader” 按钮即可启动量化交易终端。
方式二:基于源码手动安装
适合已有 Python 环境或有定制需求的用户。
第一步:准备环境
确保已安装 Python 3.10+(64 位)。
建议创建虚拟环境,如使用 conda:
1
2conda create -n vnpy python=3.10
conda activate vnpy网络问题提示:在公司网络或需要代理的环境下,安装可能因防火墙失败,建议切换至畅通的网络环境。
第二步:下载源码
- 从 GitHub Releases 页面下载
Source code (zip)并解压。
第三步:执行安装脚本
进入解压后的目录,以管理员身份打开命令提示符(CMD)或 PowerShell。
运行
install.bat脚本:1
install.bat
脚本会自动安装 ta-lib 等依赖库及 VeighNa 本身。
Ubuntu 部署
第一步:安装系统依赖
打开终端,安装编译工具及 Python 开发环境:
1 | sudo apt-get update |
第二步:下载源码
- 从 GitHub Releases 页面下载
tar.gz格式的源码包并解压。
第三步:执行安装脚本
进入源码目录,运行一键安装脚本:
1 | sudo bash install.sh |
如果你的 Python 命令不是 python(例如是 python3),请指定:
1 | sudo bash install.sh python3 |
第四步:图形界面支持(重要)
若在有图形界面的 Ubuntu 上启动 VeighNa Trader,可能遇到图形驱动问题,需安装额外依赖:
1 | sudo apt-get install libxcb-xinerama0 |
如果系统语言是英文,连接国内期货接口(如 CTP)时可能出现中文编码报错,需安装中文字体支持。
macOS 部署
第一步:安装系统依赖
推荐使用 Homebrew 安装 TA-Lib:
1
brew install ta-lib
第二步:创建虚拟环境
建议使用 conda 创建独立 Python 3.10 环境:
1 | conda create -n vnpy310 python=3.10 |
第三步:克隆源码并安装
克隆仓库并使用 macOS 专用安装脚本:
1
2
3git clone https://github.com/vnpy/vnpy.git
cd vnpy
./install_osx.sh
第四步:解决常见模块缺失
首次运行 python examples/veighna_trader/run.py 时,可能提示缺少 vnpy_ctp 等模块。需要手动从 GitHub 克隆相应仓库并安装:
1 | git clone https://github.com/vnpy/vnpy_ctp |
同理,如果提示缺少 vnpy_ctabacktester、vnpy_sqlite 等,也通过 pip install 安装。
Docker 部署
Docker 方式适合 Linux 服务器或不想污染本地环境的用户。社区提供了 Docker 镜像,其中甚至内置了 noVNC 和 Jupyter Notebook,可通过浏览器访问。
第一步:拉取镜像
1 | docker pull dehim/veighna:4.3.0.0 |
第二步:运行容器
以下命令会映射端口并挂载数据卷:
1 | docker run -d -p 80:80 -p 8888:8888 \ |
-p 80:80:映射 noVNC Web 界面端口(访问http://127.0.0.1,默认密码1234)。-p 8888:8888:映射 Jupyter Notebook 端口。
第三步:图形化配置(Windows WSL2)
若在 Windows 的 WSL2 中运行 Docker,需要配合 XLaunch 等 X Server 软件,并设置 DISPLAY 环境变量才能显示 GUI。
1 | export DISPLAY=$(awk '/nameserver / {print $2; exit}' /etc/resolv.conf 2>/dev/null):0 |
之后运行容器时,挂载 X11 相关卷:
1 | docker run -e DISPLAY=$DISPLAY -v /tmp/.X11-unix:/tmp/.X11-unix ... |
源码手动安装(进阶)
如果你需要对 VeighNa 进行二次开发,可以选择源码安装模式。
通用步骤:
- 克隆项目:
git clone https://github.com/vnpy/vnpy.git - 安装依赖:
pip install -r requirements.txt - 安装框架:
pip install -e .(可编辑模式,便于开发调试)
各平台对应脚本:
- Windows:
install.bat - Ubuntu:
install.sh - macOS:
install_osx.sh
注意事项:在 Linux 上编译 C++ 接口时,若使用 --no-build-isolation,需提前安装 meson-python、meson、pybind11、ninja-build 等依赖。
启动与验证
图形化启动(VeighNa Trader)
进入示例目录,运行 run.py:
1 | cd examples/veighna_trader |
如果成功,将弹出 VeighNa Trader 主窗口。首次运行时,你可能需要根据注释在 run.py 中启用或注释掉所需的交易接口和应用模块。
配置数据服务(以 RQData 为例)
进行历史回测前,需要配置数据服务:
- 在 VeighNa Trader 菜单栏点击“配置”。
- 填入 RQData 的
username和password。 - 重启 VeighNa Trader,在“功能”->“CTA回测”中即可下载数据。
常见问题与解决
- Q: 安装时提示
command 'gcc' failed?- A: 缺少 Python 开发头文件。运行
sudo apt-get install python3-dev(Ubuntu)或确保 Windows 上已安装 Visual C++ Build Tools。
- A: 缺少 Python 开发头文件。运行
- Q: Ubuntu 启动时提示
qt.qpa.plugin: Could not load the Qt platform plugin "xcb"?- A: 图形驱动依赖缺失。运行
sudo apt-get install libxcb-xinerama0。
- A: 图形驱动依赖缺失。运行
- Q: 连接 CTP 接口时出现
locale::facet::_S_create_c_locale name not valid?- A: 系统缺少中文编码。运行
sudo locale-gen zh_CN.GB18030并安装中文字体。
- A: 系统缺少中文编码。运行
- Q: Docker 容器内无法显示图形界面?
- A: 需要配置 X Server(如 Windows 上的 XLaunch)并正确传递 DISPLAY 变量和挂载 X11 socket。参考 Docker 部署 章节。
- Q: 提示内存不足?
- A: 编译过程需要较大内存,虚拟机请将内存调至 4GB 以上。
- Q: VeighNa Station 和 VeighNa Studio 是什么关系?
- A: VeighNa Studio 是一整套量化 Python 发行版,而 VeighNa Station 是这个发行版中的图形化管理工具,用于启动 VeighNa Trader 等应用。
通过以上步骤,你应该已经成功部署了 VeighNa 量化交易框架。无论你是想进行策略回测还是实盘交易,这套框架都提供了完整的工具链。建议从 CTA 策略回测模块入手,逐步探索其强大的功能。



