VeighNa(原名vn.py)是一套功能强大的开源量化交易开发框架
VeighNa(原名vn.py)是一套功能强大的开源量化交易开发框架。根据其官方文档和社区实践,部署主要有两种路径:新手最友好的图形化安装和更灵活的开发者手动安装。下面为你详细介绍这两种方法,并附上在云服务器上部署实现7x24小时无人值守运行的进阶方案。
⚡ 方案一:VeighNa Studio 一键安装(最推荐新手)
这是官方推荐的Windows系统安装方式,它集成了Python环境、VeighNa框架和图形化管理工具VeighNa Station,真正实现“开箱即用”。
1. 下载与安装
- 访问VeighNa官网,下载
VeighNa Studio安装包。 - 双击运行,推荐右键选择“使用管理员身份运行”。在安装向导中,通常使用默认设置,点击“快速安装”即可。默认安装路径为
C:\veighna_studio。
2. 启动与使用
- 安装完成后,桌面会出现 VeighNa Station 的快捷方式,双击运行。
- 首次启动需要注册并登录VeighNa社区论坛账号,这也是VeighNa Station的账号。登录后,点击底部的 “VeighNa Trader” 按钮,即可启动核心交易界面。
🛠️ 方案二:基于源码或pip的手动安装(适合开发者)
这种方式更灵活,适合需要在多系统(Windows/Linux/macOS)下进行定制化开发或二次开发的用户。核心前提是准备好Python 3.10及以上版本的64位环境。
步骤一:准备Python环境
- 推荐:从Python官网或Anaconda安装Python 3.10 - 3.13版本(64位)。
- 特别注意:在macOS(尤其是M1/M2芯片)上,使用Anaconda创建虚拟环境是常见选择,并建议安装Python 3.10版本以保证兼容性。
步骤二:获取源代码并安装
- 从GitHub下载源代码压缩包(Windows选
.zip,Linux/macOS选.tar.gz)并解压。 - Windows:进入解压目录,双击运行
install.bat脚本。 - Ubuntu:进入解压目录,打开终端,运行
bash install.sh。 - macOS:进入解压目录,打开终端,运行
bash install_osx.sh。 - 关键依赖:安装前系统需具备C++编译环境(如Windows的Visual Studio Build Tools,Linux的
build-essential)和TA-Lib库(macOS可通过brew install ta-lib安装)。
步骤三:启动VeighNa Trader
- 进入源代码目录下的
examples/veighna_trader文件夹,找到run.py文件。 - 在终端或命令行中执行
python run.py。如果提示缺少模块,使用pip install 模块名单独安装即可。
🚀 进阶部署:云服务器无头模式(7x24小时运行)
对于需要策略长期稳定运行的用户,将VeighNa部署在云服务器(如腾讯云轻量服务器)上是更专业的选择。关键思路是抛弃图形界面,使用脚本驱动。
配置要点:
服务器选型:推荐2核4G内存或更高配置,系统选择Ubuntu 22.04 LTS。这个配置足以流畅运行CTA策略,内存是稳定运行的关键。
环境搭建:
通过SSH连接服务器后,使用官方推荐的pip命令安装核心组件(无需下载完整源码,直接安装核心包),整个过程非常迅速。1
2
3
4
5# 创建虚拟环境(推荐)
python3 -m venv ~/vnpy-env
source ~/vnpy-env/bin/activate
# 安装核心框架、CTP接口和CTA策略模块
pip install vnpy vnpy_ctp vnpy_ctastrategy无头模式启动脚本:
不要尝试在服务器上打开GUI。你需要编写一个Python脚本(例如run_server.py),该脚本在导入所需模块后,直接通过MainEngine和CtaEngine加载策略,无需初始化MainWindow。
云服务器部署常见问题:
- GUI依赖报错:如果在无图形界面的服务器上误启动了GUI,会遇到
qt.qpa.plugin: could not load the Qt platform plugin "xcb"错误。这正说明必须使用无头模式脚本。 - 中文编码问题:连接国内期货CTP接口时,若遇到locale报错,需要安装中文语言包支持(如
fonts-noto-cjk)并生成zh_CN.GB18030等locale。
⚠️ 避坑指南
- Python版本:务务必使用Python 3.10及以上版本(64位)。一些早期社区反馈的问题,往往源于Python版本不匹配。
- “No module named ‘vnpy_ctp’”:这个错误非常常见,通常是因为没有单独安装交易接口。在核心框架安装后,需要用
pip install vnpy_ctp显式安装。 - PySide6版本冲突:在macOS上启动界面时,可能会遇到
AttributeError: 'DockWidgetFloatable'之类的错误。这通常与PySide6版本有关,可以尝试将其降级到6.3.0或6.2.3解决。
你是打算在Windows上直接安装使用,还是准备部署到云服务器上跑7x24小时无人值守?告诉我你的具体需求,我可以给你更针对性的建议。



