综合介绍
VeighNa 是一个基于 Python 的开源量化交易平台,最初由国内私募交易员开发,2015 年正式启动。它从简单的交易接口封装,发展成了一个功能全面的交易开发框架。用户包括私募基金、证券公司、期货公司、高校研究机构和个人投资者。VeighNa 支持股票、期货、期权、外汇等多种金融产品,提供丰富的交易接口和数据 API。它使用事件驱动引擎,操作简单,社区活跃,代码托管在 GitHub 上,遵循 MIT 开源协议,免费开放给所有人使用和修改。
功能列表
- 支持多种交易接口,如国内的 CTP、飞马、金仕达,国外的 OANDA、Interactive Brokers 等。
- 提供事件驱动引擎,方便开发自动化交易程序。
- 内置 CTA 策略模块,支持策略开发和回测分析。
- 包含算法交易模块,提供 TWAP、Sniper 等智能交易算法。
- 支持高性能 K 线图表,实时显示市场数据。
- 提供跨进程通讯组件,适合分布式交易系统。
- 集成数据录制功能,可保存和管理市场数据。
使用帮助
安装流程
VeighNa 的安装需要准备一些基础环境。以下是详细步骤:
- 准备环境
- 确保电脑安装 Python 3.7 或更高版本,推荐使用官方发行版或 VN Studio(VeighNa 团队提供的集成环境)。
- 安装 Git,用于从 GitHub 下载代码。
- 下载源码
在终端运行以下命令,将 VeighNa 仓库克隆到本地:
git clone https://github.com/vnpy/vnpy.git
完成后,进入项目目录:
cd vnpy
- 安装依赖
在项目根目录运行:
pip install -r requirements.txt
这会安装 VeighNa 运行所需的 Python 库。如果需要特定接口(如 CTP),还需额外安装对应模块,例如:
pip install vnpy_ctp
- 运行程序
编辑配置文件(如 CTP 连接信息),然后运行主程序:
python examples/veighna_trader/run.py
一个图形界面会弹出,显示交易窗口。
主要功能操作
1. 连接交易接口
- 打开 VeighNa 主界面,点击“系统”菜单,选择“连接网关”。
- 根据需要选择接口(如 CTP),输入账号、密码和服务器地址。这些信息由经纪商提供。
- 点击“连接”,状态栏会显示是否成功。
2. 开发和运行策略
- 在“应用”菜单中选择“CTA 策略”。
- 点击“添加策略”,输入策略名称和参数。VeighNa 自带示例策略,也支持自定义编写。
- 点击“启动”,策略会自动运行,监控市场并执行交易。
3. 回测分析
- 打开“CTA 回测”模块,导入历史数据(支持 CSV 或数据库格式)。
- 设置回测参数(如时间范围、资金、手续费),选择策略后点击“开始回测”。
- 回测完成后,查看收益曲线和交易日志,分析策略效果。
4. 数据录制
- 在“数据录制”模块中,连接市场数据源。
- 设置录制频率(如 Tick 或 K 线),点击“开始录制”,数据会保存到本地数据库。
特色功能操作
算法交易
- 打开“算法交易”模块,选择算法(如 TWAP)。
- 输入交易目标(如数量、时间),点击“启动”,系统会自动拆单执行。
- 可随时暂停或调整参数,适合大额交易。
K 线图表
- 在主界面点击“图表”,加载市场数据。
- 支持缩放和拖动,实时更新 Tick 或 K 线,方便技术分析。
注意事项
- 初次使用时,建议在模拟账户测试,避免实盘风险。
- 检查网络连接,确保数据和交易指令稳定传输。
- 定期更新 VeighNa 代码,获取最新功能和修复:
git pull origin master
应用场景
- 个人投资者交易
一个散户想用 Python 自动化交易期货。他可以用 VeighNa 连接 CTP 接口,编写简单策略,自动买卖主力合约。 - 机构量化研究
私募基金需要测试新策略。团队用 VeighNa 的回测模块,导入历史数据,快速验证策略效果。 - 高校金融教学
大学教授用 VeighNa 演示量化交易原理,学生通过图形界面学习策略开发和数据分析。
QA
- VeighNa 支持哪些操作系统?
支持 Windows 7 及以上、Ubuntu 18.04 及以上,Mac 系统需手动编译部分接口。 - 如何贡献代码?
在 GitHub 上 fork VeighNa 仓库,修改后提交 Pull Request,等待审核合并。 - 数据从哪里获取?
可通过接口(如通联数据)获取,或用数据录制功能保存实时市场数据。