vnpy

🐍 中国顶级开源量化交易框架

vn.py 是中国最流行的开源量化交易框架,支持 CTA/套利/期权策略,对接 20+ 家券商柜台,适合期货证券实盘交易。

收藏
3.7k
安装
1k
版本
1.0.0
CLS 安全扫描中
预计需要 3 分钟...

使用说明

核心用法

vn.py 是面向中国市场的开源量化交易框架,采用模块化架构:Gateway(券商接口层)、App(策略应用层)、DataService(数据服务层)。用户通过 Python 代码配置事件引擎、加载网关(如 CTP 期货、Hundsun 证券)、添加策略模块(CTA、价差交易、期权等),即可启动 GUI 或纯代码环境进行回测与实盘交易。

显著优点

  • 本土市场深度适配:CTP、Femas、恒生 UFT、EMT、XTP 等 20+ 家国内券商柜台原生支持,覆盖期货、证券、期权全品种;国际市场的 IB、Alpaca、币安等也有网关支持。
  • 策略开发友好:提供 CtaTemplate 策略模板,BarGenerator 合成多周期 K 线,ArrayManager 内置 20+ 种技术指标(SMA/EMA/BOLL/RSI/MACD/ATR 等),无需额外依赖。
  • 事件驱动架构:基于 EventEngine 的异步消息机制,适合高频 tick 级策略与复杂组合策略的低延迟执行。
  • 活跃的社区生态:GitHub Star 数万级,文档、视频教程、第三方数据源(RQData、Tushare)支持完善,Bug 修复与功能迭代迅速。
  • 实盘与回测一体化:同一套策略代码可直接切换回测引擎(BacktestingEngine)与实盘引擎,减少上线风险。

潜在缺点与局限性

  • 学习曲线陡峭:需掌握 Python 异步编程、事件驱动模型,初学者调试策略时容易因事件时序问题产生隐蔽 Bug。
  • GUI 依赖 QtPyQt5/6 界面在部分 Linux 发行版或远程服务器上配置复杂,无界面部署需额外封装。
  • 数据管理薄弱:历史数据下载、清洗、存储需依赖 RQData、MongoDB/SQLite 等外部组件,框架本身无内置数据平台。
  • 性能瓶颈:纯 Python 的事件循环在极高频(微秒级)场景下弱于 C++ 或 Rust 框架;GIL 限制多核 CPU 利用率。
  • 合规与接入门槛:CTP 等实盘接口需期货公司开户、申请 AppID/授权码,SimNow 模拟环境规则时有变动。

适合人群

  • 中国期货/证券/期权市场的个人量化交易者与私募初创团队
  • 有 Python 基础、熟悉技术分析指标、需要快速验证 CTA/套利/波动率策略的开发者
  • 希望从回测平滑过渡到实盘的策略研究员

常规风险

  • 实盘资金风险:策略逻辑错误、网关异常断开、行情延迟可能导致非预期成交与亏损,务必先在 SimNow 等模拟环境充分测试。
  • API 密钥安全:CTP 等实盘配置含密码、授权码,若硬编码或泄露至版本控制,存在账户被盗用风险。
  • 数据质量风险:免费数据源存在复权错误、缺失行情等问题,需人工校验后再用于生产决策。
  • 技术依赖风险:开源项目维护依赖社区,重大版本升级(如 PyQt5→6、Python 3.8→3.11)可能引入兼容性断裂。

vnpy 内容

手动下载zip · 8.2 kB
metadata.jsonapplication/json
请选择文件