我为什么用AI从零写一套量化交易系统
一个人,一台电脑,一个AI助手。从需求文档到完整系统,这条路走了多远?
从“不可能”到“为什么不试试”
凌晨一点,我又一次手动对比完20只股票的MACD指标,眼睛酸涩。作为一个对量化交易感兴趣的开发者,我曾经试过市面上几乎所有的量化平台——聚宽、米筐、QMT、Ptrade——它们各有千秋,但没有一个完全符合我的需求。
我的需求并不复杂:
- 全市场动态扫描:不满足于固定的标的池,我想让系统自动从4000多只A股中筛选出符合我策略的候选股
- 策略参数可以随时调整:不是黑盒的信号推送,而是透明、可解释、可优化的完整策略系统
- 复盘与策略进化形成闭环:系统不只是“告诉我买卖什么”,而是“帮我分析为什么赚、为什么亏,以及如何优化”
- 深色主题的量化终端:一个专业、好看、我在深夜盯盘时看着不累的界面
听起来像一个团队半年才能完成的工作。作为一个个人开发者,这在过去是不可想象的。
但2026年的今天,AI辅助编程已经从“玩具”进化到了“生产力工具”。Cursor、Claude Code、OpenClaw这些工具的出现,让“一个人+一个AI助手”的组合拥有了过去一个团队的战斗力。
我决定试试。不是试用哪个现成平台,而是从零写一套完全属于自己的量化交易系统。
技术选型:让AI帮我做架构决策
第一步是技术选型。我没有凭感觉决定,而是把候选方案交给AI做对比分析。
后端:FastAPI vs Go。Go的性能确实更强,但AI工具链对Python的支持远胜Go——Cursor和Claude Code在Python代码生成、调试、测试上的成熟度,意味着我可以用自然语言驱动大部分后端开发。最终选FastAPI,因为“AI开发效率”比“纯粹的性能指标”更重要。
前端:React vs Vue。AI工具(如v0、Bolt)默认输出React代码,shadcn/ui在React生态中的组件完整度也最高。选择React,不是因为我对它最熟悉,而是因为AI对它最熟悉。
数据库:MySQL。我指定了这个选择,因为我对MySQL最熟悉。AI的作用不是替代我的判断,而是在我擅长的领域里,帮我更快地实现。
这个决策过程本身就是一个新范式:不是“我会什么就选什么”,而是“AI最擅长什么就选什么”。作为个人开发者,你的技术栈选择不再只取决于自己的知识储备,而是取决于AI工具链在哪个生态中最强大。
需求文档:一份文档驱动AI全栈开发
传统软件开发的第一步是写代码。AI辅助开发的第一步是写一份AI能读懂的需求文档。
我花了大量时间和AI反复讨论,最终产出了一份完整的《司南投研系统详细需求说明书与架构设计文档》。这份文档包含:
- 66项功能需求(F-01至F-63),从用户认证到程序化交易合规报告
- 完整的技术栈选型记录和决策理由
- 数据库表结构设计(含分区策略、索引设计)
- 前端深色量化终端的色彩体系、字体规范、组件规范
- 测试方案(含单元测试、性能测试、混沌工程测试)
- 风险矩阵与应急预案
这份文档不是写完就束之高阁的摆设,而是AI理解项目意图的唯一权威依据。每次让AI开发新功能,我只用一句话:“请对照需求文档v3.0的第X节,完成XX模块的开发。”
这就是“文档驱动开发”——你不需要告诉AI怎么做,你只需要告诉AI做什么,以及“做对”的标准是什么。
系统架构:三层扫描体系
整个系统的核心是三层扫描体系:
- 第一层(每周一):全市场扫描,从4000多只A股中剔除ST、新股、小市值股票,构建基础池
- 第二层(每日盘后):多因子评分(振幅30%、换手率20%、成交额20%、趋势强度20%、量价配合度10%),取前20只+自选股,形成候选池约20-50只
- 第三层(盘中每60秒):在候选池+自选股中扫描技术信号(MACD金叉买入、RSI超买卖出)
为什么是三层?因为直接在全市场4000多只股票上做60秒级别的实时扫描,技术上几乎不可行。三层递进的设计,让候选池从4000→300→20只,扫描耗时从>30秒降到<10秒。
这是系统设计的核心逻辑——不是“把所有东西都交给AI”,而是“让AI帮你把复杂问题拆解成可执行的模块”。
AI在开发中真正做了什么
回顾整个开发过程,AI帮我完成了这些工作:
- 生成项目骨架:一句话“创建FastAPI项目骨架,含CORS、JWT、structlog”,AI在几十秒内生成了完整的项目入口代码
- 编写风控代码:“金融操作必须使用SELECT...FOR UPDATE行级锁,交易记录、持仓明细、资金流水三表在同一事务中更新”,AI生成的风控校验链代码,我逐行审查后发现逻辑完全正确
- 前端视觉重构:从黑白demo到深色量化终端的蜕变,AI严格按照我定义的色彩规范(背景bg-gray-950、涨绿色跌红色、AG Grid Dark Theme),逐页完成了13个页面的深色主题改造
- 配置功能完善:30+可配置参数(模拟资金、仓位上限、止损比例、因子权重、数据源优先级等),AI帮我检查了前后端配置项的完整性和一致性
- 移动端适配:响应式布局、触摸优化、安全区域适配,AI在一个指令下完成了全部13个页面的移动端改造
AI是放大器,不是替代品
我必须诚实地告诉你:AI写不出一套完全符合你业务需求的量化交易系统。
不是因为AI不够强,而是因为AI不懂你的业务。AI可以帮你生成代码,但它不知道“三层扫描的频率如何设计才能避免API限流”;AI可以帮你搭建前端,但它不知道“量化交易终端应该用深色主题以减少视觉疲劳”;AI可以帮你写单元测试,但它不知道“资金操作必须使用行级锁和事务”这条金融系统的铁律。
这些知识来自你对业务的理解,而不是AI的能力。
我的角色不是“监工”或“代码搬运工”,而是架构师和决策者:
- 当AI建议用Go作为后端时,我选择FastAPI,因为Python生态中AI工具链更成熟
- 当AI建议把候选池设为300只时,我坚持改为评分精选20只+自选股,因为我知道60秒级别的扫描性能瓶颈在哪里
- 当AI建议前端用黑白默认样式时,我坚持定义一套完整的深色色彩体系,因为我知道量化终端应该长什么样
AI是放大器。它放大你的知识储备、你的架构能力、你的审美判断。如果你本身不具备这些能力,AI也帮不了你。
这个系列,写给和我一样的人
写这篇文章的目的很简单:记录和分享。
我是一个普通开发者,不是量化大神,也不是AI专家。我之所以能一个人完成这套系统,不是因为我有多厉害,而是因为2026年的AI工具已经强大到可以让一个普通开发者做到过去一个团队才能做到的事。
如果你也是一个人、一台电脑、一个AI助手,如果你也对量化交易和AI辅助编程感兴趣,欢迎关注这个系列。我会把整个开发过程——从需求文档到架构设计,从三层扫描到风控代码,从前端深色主题到移动端适配——全部写出来。
没有任何保留,也没有任何门槛。
你可以在掘金、公众号、B站搜索“司南投研”,每周更新,持续连载。
下一篇预告:《一份文档驱动AI全栈开发:我的CLAUDE.md和需求文档长什么样》
⚠️ 免责声明:本文仅分享量化交易系统的技术开发过程,不推荐任何具体股票,不提供任何投资建议,不承诺任何投资收益。历史回测数据不代表未来表现。文中提及的所有工具和平台均为技术选型参考,不构成商业推广。