WonderTrader 仓库介绍
WonderTrader 是一个基于 C++ 核心开发的量化交易开发框架,面向专业机构级用户,主打高效率、高可用,支持全市场全品种交易,覆盖量化交易从数据落地清洗、回测分析到实盘交易、运营调度的全环节,已支撑数十亿级的实盘管理规模。
核心特性
1. 丰富的交易引擎
针对不同交易场景设计了多类引擎,兼顾不同策略类型和性能需求: - CTA 引擎(同步策略引擎):适用于标的少、计算逻辑快的策略(如单标的择时、中频套利),C++ 版本单次重算仅约 4.5 微秒; - SEL 引擎(异步策略引擎):适用于标的多、计算耗时长的策略(如多因子选股、截面多空),时间驱动; - HFT 引擎(高频策略引擎):面向高频/低延时策略,事件驱动,系统延迟 1-2 微秒; - UFT 引擎(极速策略引擎):0.9 版本新增,针对超高频场景,完全基于 C++ 开发且剥离应用层接口,系统延迟可控制在 200 纳秒以内(实测 175 纳秒内)。
2. 完善的核心能力
- 开发接口:策略独立上下文缓存数据、简洁的目标仓位信号接口、上下文无关的策略逻辑(数据全内存缓存);
- 策略管理:策略组合统一管理、目标仓位合并执行(避免自成交)、理论部位独立存储、多账户并发执行;
- 回测支持:统一 C++ 回测引擎,支持 C++/Python 等多语言策略,覆盖 CTA/SEL/HFT/UFT 等全类型策略;
- 数据伺服:本地存储+UDP 实时行情广播,mmap 高速读写实时数据,支持 MySQL 存储历史数据,内存零拷贝访问;
- 风险控制:组合盘资金风控、通道流量风控、账户资金风控、紧急人工介入、离合器机制(信号与执行分离);
- 控制台能力:依托 wtpy 提供组合盘监控、自动调度、实时事件通知、回测数据查看器等功能。
3. 典型应用场景
- 团队内控:策略组合管理、C++ 级策略保密、独立绩效核算;
- 多账户交易:M+1+N 执行架构,支持不同账户按资金/风险偏好配置手数倍率;
- 多标的跟踪:C++ 核心+策略/执行剥离架构,低资源占用,支持百级以上标的跟踪;
- 大计算量策略:SEL 引擎适配多因子选股等耗时策略的定时重算需求;
- 极速交易:HFT/UFT 引擎满足高频/超高频交易的低延迟需求;
- 算法交易:独立执行器模块 WtExecMon,可基于 M+1+N 架构实现算法交易。
开发环境
- Windows:Visual Studio 2017 + Windows 10;
- Linux:Gcc v8.4.0 + cmake 3.17.5。
代码结构(src 目录)
核心模块按功能划分,层次清晰: - Backtest:回测相关(WtBtCore 回测核心、WtBtRunner 运行入口等); - BaseLibs:基础库(Share 基础数据结构、WTSUtilsLib 第三方组件、WTSToolsLib 通用工具); - DataKit:数据接入落地(WtDtCore 数据核心、QuoteFactory 数据落地入口、WtDtServo 数据伺服器等); - Parsers:行情解析器(对接 CTP/CTPMini/飞马/易达等行情通道); - Traders:交易通道对接(覆盖 CTP/XTP/华鑫奇点/飞马等期货/股票/期权柜台,含本地仿真撮合模块 TraderMocker); - UltraFT:超高频引擎(WtUftCore 核心、WtUftRunner 运行入口); - Tools:辅助工具(合约加载、交易数据落地、消息队列封装等)。
获取方式
- 核心仓库:
- GitHub:https://github.com/wondertrader/wondertrader
- Gitee:https://gitee.com/wondertrader/wondertrader
- 应用层框架 wtpy(Python 封装):
- 安装:
pip install wtpy --upgrade(需 Python 3.8+) - 仓库:GitHub/Gitee 搜索 wondertrader/wtpy
- 官方文档:https://wondertrader.github.io/#/