项目名:TSP · A 股智能量化工作台(tick-stock-panel) GitHub:https://github.com/shy3130/tick-stock-panel 协议:MIT Star:5.3k+(Fork 1.3k,截至 2026-09-30,GitHub API 实抓) 技术栈:FastAPI + React + Polars + DuckDB,Parquet 文件存储 部署:Docker 单容器,零外部数据库,数据 100% 落本地 测试:2400+ 测试全绿,CI 自动构建多架构镜像
先说痛点
想在 A 股搞点量化,你大概率经历过这几茬罪:
最近挖到一个国产个人开源项目,把这些问题一次性解决了——TSP(tick-stock-panel),一个自托管、零运维、核心能力全部开放成接口的 A 股量化工作台。
一句话:Docker 一条命令跑起来,选股、回测、因子、监控、复盘、AI 对话助手、61 个开放 API、12 个 MCP 工具,一个容器全给你。
本文按老规矩,从功能、架构、安装到 AI/MCP 接入完整讲清楚。
目录
- 一、TSP 是什么
- 二、核心功能一览
- 三、架构:数据工程优先的本地工作台
- 四、安装:Docker 一条命令
- 五、AI 对话助手:一句话问全站数据
- 六、接入 MCP:让任意 AI 客户端操作你的面板
- 七、边界与风险(务必看)
- 总结与项目地址

一、TSP 是什么
官方定位:
自托管 · 零运维 · 核心能力全部开放成接口的 A 股量化工作台。 选股 · 回测 · 监控 · 因子挖掘 · AI 助手 · Open API · MCP
几个关键数字(README 原文):
| 开放 API 端点 | 61 |
| Token 权限档 | 6 |
| MCP 工具 | 12 |
| 测试用例 | 2400+ 全绿 |
| 全市场策略扫描 | 毫秒级(Polars 引擎) |
| 部署形态 | 1 个容器,零外部数据库 |
需要特别说明作者在 README 最上方就高亮的立场(这也是我对这个项目有好感的原因之一):
⚠️ 本项目谨作为本地量化提供解决思路与方案,不作为投资软件或者看盘软件。 明确不做:不对标同花顺/通达信,不内置「AI 荐股/涨停预测」。 数据源已插件化,可任意接入第三方数据源。仅供学习研究使用。
不吹收益、不搞荐股,在量化类开源项目里属于难得的清醒。
二、核心功能一览
功能非常多,挑最有价值的讲:
🔍 选股引擎:25 个内置策略 + 自定义 + AI 生成
Polars 毫秒级扫完全 A 股,日线/分钟策略统一一个策略池,按策略声明的周期自动路由执行。信号库里有预定义信号、自定义条件信号(含因子条件和 AI 生成信号),策略、回测、监控吃同一份信号。
🧪 回测研究:四种视图,杜绝「未来函数」
- 因子回测:IC/IR、分层收益、多空组合,62+ 因子目录先帮你筛掉无效指标;
- 策略回测:净值曲线、回撤、夏普、胜率、盈亏比、蒙卡回撤,T+1/手续费/滑点/止损齐全,SSE 流式输出进度;评分因子策略还带「因子归因」——对比赚钱单和亏钱单入场日的因子差异;
- 分钟策略回测:逐交易日回放、分钟收盘入场、分钟级成交明细;
- 验证:参数敏感性 + 滚动样本外检验。
研究闭环做得不错:结果可导出 CSV → 保存为候选 → 一键载入复测。
🔬 因子平台 + ⛏️ 因子挖掘
- 因子页:IC·分层·Newey-West 检验,自定义 DSL 因子(25 个算子点选、双语字段),版本与生命周期管理;因子库可一键生成排名策略;
- 挖掘页:嵌套样本外搜索——训练区间重估因子方向、相关性去重、多因子组合搜索,候选入库后必须显式确认才发布,永不自动上线。
🚨 监控与异动
- 监控中心:策略/个股信号/价格/异动四类规则 AND/OR 组合,支持自选分组作用域,盘中实时弹窗 + 语音播报个股名称和信号 + 飞书推送,触发记录持久化;
- 异动监控按交易时间线分三段:
- 竞价异动:同花顺盘前风向标(含当日/次日真实收益对照、追高风险标记)+ 全市场竞价扫描;
- 盘中异动:涨停/炸板/翘板/跌停/新高/新低/放量聚合;
- 偏移异动:严格按交易所口径(主板 3 日 ±20%、创业板/科创板 ±30%、北交所 ±40% 等),实时计算接近度。
🌡️ 市场环境与复盘
- 情绪周期 6 阶段:冰点/启动/主升/高潮/退潮/修复,连板梯队驱动、EMA 平滑 + 2 日确认;
- 连板梯队:连板层级统计、概念/行业分布、封单监控;
- 盘后 AI 自动复盘,注入龙虎榜资金动向和盘前风向标对照,可定时执行、推飞书、下载 Markdown。
📈 个股分析
日 K + 9 类关键价位 + AI 四维分析(技术/基本面/财务/消息面);财务页支持利润表/资负表/现金流/关键指标(多源合并、fuyao 财务四表适配)+ AI 解读。
🌐 开放 API + 🔌 MCP + 🧠 AI 助手
这三件是 TSP 区别于普通量化面板的灵魂,后面单独展开。
三、架构:数据工程优先的本地工作台
README 里有句话总结得到位:TSP 是一个「数据工程优先」的本地量化工作台——数据源、口径、执行、开放通道做成一套自洽架构,功能只是长在上面的应用。
八个架构特点:
| 🔀 能力路由矩阵 | 6 类数据集按源声明的能力独立路由——换数据源不换口径,指标和回测结果不变 |
| 🧬 单一 enriched 口径 | 只存 15 列基础数据、现算 68 列指标信号;选股→回测→监控→复盘吃同一份数据 |
| 📁 文件型零运维存储 | Parquet + DuckDB,单容器零外部数据库,数据 100% 落本地 |
| 🔁 回测 = 实盘同路径 | 策略执行只有 StrategyEngine.run 一条路径;分钟策略逐日回放 +「当日已知」纪律,从机制上杜绝未来函数 |
| 🏛️ 网关居中的开放单体 | 面板密码会话和 Token 网关双通道并行;61 端点契约快照 + CI 守护,SSE 事件流与 MCP 平等开放 |
| 🧩 核心域/扩展域边界 | 8 个核心域拥有数据与语义,5 条扩展通道只消费契约——删除目录即整体卸载,零核心改动 |
| 🚀 重活进程隔离 | 回测跑在 spawn worker 子进程,刷新切页重连不丢任务,主服务永不被计算卡住 |
| 📅 交易日探针 | 节假日自动停掉实时轮询和分钟增量,零无效请求 |
作为写了多年 Java 的人,我看这套架构的感受:分层克制、边界清晰、扩展点明确,没有上来就微服务那一套——单机本地工具,单容器 + 文件存储就是最优解。值得一提的是「核心域 / 扩展域」的划线依据是数据与语义的归属、依赖箭头的方向,而不是页面好不好看,这个划分原则很专业。
四、安装:Docker 一条命令
方式 A:GHCR 现成镜像(多数人推荐)
有 Docker 的话,真的就一条命令:
docker run -d –name tsp -p 3018:3018 -v ${PWD}/data:/app/data ghcr.io/shy3130/tick-stock-panel:latest
打开 http://localhost:3018 即可使用。多架构镜像(amd64/arm64)由 CI 自动发布,本机连 Python/Node 都不用装。
需要配置时:从仓库 .env.example 复制 .env,命令加 –env-file .env。
方式 B:Docker Compose(本地构建,全套挂载)
cp .env.example .env
docker compose up –build
# 打开 http://localhost:3018
Windows 用户注意一个坑:纯 PowerShell/CMD 下 HOME 环境变量通常没设置,会导致 Codex 登录态目录挂载失败。需要在 .env 里显式指定:
CODEX_HOME_HOST=C:\\Users\\你的用户名\\.codex
方式 C:让本机 AI 帮你部署
README 还提供了一个很符合当下玩法的方式——把这段话原样发给 Trae/Codex/OpenCode 等 AI 助手:
帮我部署开源项目 https://github.com/shy3130/tick-stock-panel 到本机:
克隆到当前文件夹;有 Docker 优先拉 ghcr.io/shy3130/tick-stock-panel:latest 现成镜像,没有就走 Dev 模式;
缺少的依赖帮我一起装好;最后告诉我浏览器打开哪个地址、需要填哪些 Key。
跑起来后的第一次使用
五、AI 对话助手:一句话问全站数据
这是 TSP 里最「2026」的部分。入口是悬浮球 / 侧栏 AI 徽标 / ⌘K 呼出。
21 个查询工具 + 4 个动作工具:
| 行情与大盘 | 涨跌家数、成交额、涨停连板、情绪、指数 |
| 我的与个股 | 自选、持仓批次、个股 K 线、关键价位 |
| 策略与因子 | 策略目录、执行选股、因子目录、因子全市场排名 |
| 扩展内容 | 扩展数据表查询、自定义策略与信号 |
| 数据健康 | 完整性检查、同步任务进度 |
| 动作(须确认) | 生成信号策略、运行回测、加入自选、数据补全 |
几个设计细节,我认为是做 AI 工具的正确姿势:
- 工具足迹卡:每次调用的工具名、参数、耗时、结果摘要都能展开核对——「取数必须可核对」是设计铁律;
- 动作确认卡:生成信号/回测/加自选/数据补全等写操作,先弹卡片显示完整待执行参数,你点确认才执行;拒绝或 120 秒超时自动取消,且模型被明确告知不得重试;
- 走势双图:问个股时自动附上工具真实返回数据的日 K 蜡烛 + 当日分时小卡,而不是让模型瞎编走势;
- 轮次检查点:连续 N 轮没完成时弹「继续/停止」(默认 100 轮,可配),120 秒不选自动停;
- 固定合规提示:每条回答末尾都附风险与数据口径提示。
助手本身是项目扩展系统的参考实现:后端 app/custom/assistant/(启动自动发现注册路由)和前端 src/custom/assistant/(构建自动挂载插槽)各自独立,删目录即卸载。没配 AI Key 或供应商不支持工具调用时 fail-closed,直接提示去设置页。
⚠️ 助手只做数据分析,不提供买卖指令;涉及交易决策的问题会转换成客观的技术/财务状态、关键价位和条件情景。
六、接入 MCP:让任意 AI 客户端操作你的面板
TSP 自带独立的 MCP 服务器,原理是一层薄桥:
AI 客户端 ⇄ MCP stdio ⇄ HTTP + Bearer Token ⇄ 面板开放网关
权限、限流、契约全部复用面板开放接口层,面板侧的 Token scope 才是最终权威——这层不写业务逻辑,面板升级自动受益。
配置步骤
{
"mcpServers": {
"tick-stock-panel": {
"command": "uv",
"args": ["–directory", "E:/tick-stock-panel/mcp-server", "run", "tsp-mcp-server"],
"env": {
"TSP_BASE": "http://127.0.0.1:3018",
"TSP_TOKEN": "tsp_xxxx",
"TSP_SCOPES": "read:market,read:ext,read:analysis"
}
}
}
}
TSP_SCOPES 决定暴露哪些工具,声明了但没授权的 scope,调用时拿 403,AI 看到错误会自己停下来。
12 个工具清单(按权限档)
| read:market | search_instrument | 代码/名称/拼音搜标的 |
| get_kline | 日 K(前复权) | |
| get_index_kline | 指数日 K | |
| get_market_overview | 涨跌家数/成交额/涨停连板/情绪 | |
| read:analysis | get_regime_state | 最新市场环境阶段 |
| list_strategies / get_strategy_detail | 策略清单与定义 | |
| get_recent_alerts | 最近告警 | |
| read:ext | list_ext_tables / query_ext_table | 自有数据表查询 |
| write:ext | write_ext_rows | 写入扩展表(进入策略数据面,慎授) |
| run:backtest | run_backtest | 策略回测(纯 Polars 引擎) |
注意:模拟盘交易类端点没有被包成 MCP 工具——作者明确不建议把下单能力交给 AI,需要时自己按同样模式补。这一点我举双手赞成。
六档 Token 权限 + 120 次/分钟限流 + SSE 事件流,意味着你完全可以在自己的脚本、机器人里把 TSP 当一个本地量化数据中台来用。
七、边界与风险(务必看)
不提供任何投资建议。它明确不做 AI 荐股、涨停预测;所有策略和因子只是「研究工具」,历史回测好不代表未来赚钱,这是量化的基本常识。
数据档位有差异。None/Free 档走免费数据源(free-api),当日数据盘后 1-2 小时才可用,盘中和实时能力受数据源限制;想要更强能力需接入对应数据源(插件化,自己配)。
现成镜像不含 stock-sdk 插件和老 CPU 兼容内核(合规与体积考虑),有需求要自己用 Compose 加 –build-arg INCLUDE_STOCKSDK=1 构建。
实盘交易不在开源范围内。项目定位是研究与监控工作台,别指望拿它直接自动下单(也不应该)。
个人开源项目。作者留了邮箱维护社区,迭代很活跃(最近一次推送就在昨天),但企业级使用要评估自己长期维护的能力。
A 股有风险,入市需谨慎。再强调一次:本文介绍的是软件工具,不是任何形式的收益承诺。
总结与项目地址
TSP 给我留下最深印象的不是功能多,而是它的克制与工程审美:
- 单容器 + Parquet/DuckDB,零运维、数据完全本地;
- 选股 → 回测 → 监控 → 复盘,全站吃同一个 enriched 口径;
- 数据源插件化、能力路由,换源不换口径;
- AI 助手取数全程可核对、写操作必须确认;
- 61 端点 + 12 MCP 工具,权限最小化,下单能力坚决不交 AI。
想系统学习 A 股量化、想要一个数据在自己手里的本地工作台、或者想研究「AI + 量化 + MCP」怎么落地的朋友,这个项目值得周末花一小时跑一跑。
项目地址:https://github.com/shy3130/tick-stock-panel 镜像地址:ghcr.io/shy3130/tick-stock-panel:latest 协议:MIT,Star 5.3k+ 且仍在快速上涨(数据截至 2026-09-30)。
上一篇聊的是把所有 AI 编程 Agent 收编的元框架 Omnigent(https://github.com/omnigent-ai/omnigent),还没看的朋友推荐一起服用——一个管「AI 工程团队」,一个管「AI 量化研究」,都是今年 Agent 工程化思路下非常值得学的开源项目。
网硕互联帮助中心




评论前必须登录!
注册