9个月30万行代码,我开源了一套完整的量化交易系统

0 阅读6分钟

历时9个月,爆肝30万行代码,我开发了一整套基于LightGBM模型量化交易系统


写在前面

作为一个从学生时代就痴迷量化交易的程序员,我一直有个执念:能不能把机构级的量化交易系统,做成普通人也能用的开源工具?

从2025年7月写下第一行代码开始,到今天项目正式开源,整整9个月。30万行代码,无数个熬夜调试的夜晚,终于打磨出了一套打通"数据→训练→回测→推理→实盘"全流程闭环的量化交易系统——QuantMind

今天把项目开源出来,希望能帮到同样对量化交易感兴趣的你。

📌 项目地址github.com/qusong0627/…

⭐ 如果觉得有用,帮忙点个 Star 就是最大的支持!


一、为什么做这个项目?

市面上的量化平台,要么太贵(机构级产品动辄数万/年),要么太简陋(只能跑个简单策略)。而开源方案往往只解决了某个环节的问题——要么只有回测引擎,要么只有交易接口,没有一个完整的端到端解决方案

QuantMind 的目标很明确:

  • 开箱即用:一键部署,内置数据和预训练模型
  • 全流程闭环:从模型训练到实盘交易,一个系统搞定
  • AI 驱动:基于 LightGBM + Alpha158 因子,自动化特征工程
  • 完全开源:AGPL v3 协议,代码透明,可二次开发

二、系统长什么样?

先上几张实际截图,让大家直观感受一下:

📊 智能仪表盘

截屏2026-04-17 20.57.37.png

实时监控账户状态、持仓盈亏、策略表现,所有关键信息一目了然。

🔬 快速回测

QuickBacktest.png

分钟级完成策略回测,支持自定义参数、多标的组合、详细绩效报告。独创 Qlib + Pandas 双引擎架构,灵活应对不同场景。

🧠 模型训练

ModelTraining.png

可视化配置训练参数,自动完成特征工程、样本划分、模型训练与评估。基于微软 Qlib 框架深度集成,提供业界领先的量化研究能力。

🎯 模型管理

ModelManagement.png

多版本模型管理,一键切换生产模型,查看训练日志与性能指标。

⚡ 模型推理

ModelInference.png 每日自动推理生成交易信号,支持手动触发、信号导出、历史回溯。

💹 实盘交易

LiveTrading.png

对接券商实盘(QMT),支持自动下单、持仓同步、风险控制。实盘前还有完整的模拟盘验证流程。

🛡️ 风险管理

BasicRisk.png

完善的风控体系:止损止盈、仓位限制、黑名单管理、异常预警。

📊 高级分析

AdvancedAnalysis.png 深度策略分析:收益归因、风险分解、因子暴露、Benchmark 对比。


三、技术架构

系统采用微服务架构,前后端分离,4 个后端服务各司其职:

architecture.png

核心技术栈

层级技术选型
前端Electron + React + TypeScript + Ant Design
后端Python 3.10 + FastAPI + SQLAlchemy
回测引擎Qlib + Pandas 双引擎
AI 模型LightGBM + Qlib Model Framework
数据库PostgreSQL 15 + Redis 7
消息队列Celery + Redis
容器化Docker + Docker Compose

AI 模型全生命周期

📊 数据准备 → 🧠 模型训练 → 📈 效果评估 → 🚀 模型部署 → ⚡ 实时推理 → 📡 信号生成 → 💹 执行交易

从训练到推理,完整闭环。多模型共存,一键切换。


四、核心特性详解

🧠 Qlib 内核驱动

基于微软 Qlib 量化框架深度集成:

  • LightGBM 模型 — 高性能梯度提升模型,专为金融时序预测优化
  • Alpha158 因子集 — 158 个经典量化因子,覆盖动量、估值、质量等多维度
  • 自动化特征工程 — 48 维标准化特征,开箱即用

🎯 双引擎回测系统

引擎适用场景性能
Qlib Engine复杂策略、多因子模型、机构级研究极高性能
Pandas Engine快速验证、简单策略、教学演示轻量极快

📈 实盘交易对接

  • QMT 券商 — 迅投 QMT 深度对接
  • 模拟盘验证 — 实盘前完整模拟
  • 风控系统 — 止损止盈、仓位控制、风险预警

实盘.png


五、快速开始

环境要求

  • 操作系统:Ubuntu 22.04+(推荐 24.04 LTS)
  • 基础功能:4核 8GB 即可运行
  • 完整功能(含模型训练/推理):推荐 8核 32GB+

一键部署

在全新的 Ubuntu 服务器上执行:

curl -fsSL https://gitee.com/qusong0627/quantmind/raw/master/deploy/quick-deploy.sh | sudo bash -s -- --yes

部署完成后访问:http://<服务器IP>

默认账号admin / admin123

离线数据包

系统内置了完整的数据包:

  • Qlib 股票特征数据(6000+ 股票)
  • 模型特征快照(2016-2026 年)
  • 预训练模型文件

下载地址:oss.quantmindai.cn/data-downlo…

本地开发

# 后端
source .venv/bin/activate
pip install -r requirements.txt
python backend/main_oss.py

# 前端
npm install
npm run dev

六、开发过程中的那些坑

9个月的开发,踩过的坑数不胜数,挑几个印象最深的分享一下:

1. Qlib 特征数据的存储方案

Qlib 的特征数据量极大,最初直接存数据库导致查询慢到无法接受。后来改成了 Parquet 格式的特征快照 + 数据库索引 的方案,查询速度提升了 10 倍以上。

2. 回测结果的一致性

Qlib 和 Pandas 双引擎的回测结果必须一致,否则用户无法信任系统。为此写了大量的对齐测试,确保两种引擎在相同策略下输出完全一致的结果。

3. 模型推理的实时性

每日自动推理需要在开盘前完成全市场 6000+ 股票的信号生成。通过 Celery 任务队列 + 多进程并行,将推理时间压缩到了分钟级。

4. 前端 Electron 的性能优化

30万行代码中,前端占了很大比例。Electron 应用容易内存泄漏,通过合理的组件卸载、数据分页、虚拟列表等优化,最终将内存占用控制在了合理范围。


七、后续规划

开源只是开始,后续还有大量计划:

  • 支持更多 AI 模型(Transformer、LSTM 等)
  • 接入更多券商(华泰、中信等)
  • 社区策略分享平台
  • 更多技术指标和因子库
  • 移动端适配

八、写在最后

做这个项目的初衷,就是希望让量化交易不再是机构的专利

如果你对量化交易感兴趣,如果你也想用 AI 来辅助投资决策,如果你也相信开源的力量——

欢迎来一起贡献!

📌 GitHub 地址github.com/qusong0627/…

⭐ 点个 Star 支持一下呗!

💬 交流讨论:QQ群 1097406397


如果觉得这篇文章对你有帮助,欢迎转发、点赞、收藏,让更多人看到这个开源项目! 🙏