你是否试过用Python脚本拼凑选股逻辑,结果发现换一家数据源就要重写拉数代码?是否在通达信里写好策略,却无法和本地回测口径对齐?又或者,盘中突然放量异动,等你切到K线图时已经错过买点?TSP(Tick-Stock Panel)就是为解决这些真实痛点而生的——它不是另一个“看盘软件”,而是一个真正打通「数据→选股→回测→监控→复盘」全链路的自托管A股智能量化工作台。所有数据落本地、所有策略可解释、所有信号可追溯,连AI对话都能帮你查指标、写因子、分析个股。
核心功能
- 毫秒级全A股选股引擎:内置25种经典策略(如MACD金叉、突破年线、量价背离),支持Polars向量化计算,3秒内扫完4000+只股票;更关键的是,它把日线/分钟线策略统一进同一套信号池,避免“选股用一套逻辑、回测用另一套”的口径割裂问题。
- 三时段实时异动监控:不靠盯盘,而是自动捕捉竞价阶段集合竞价异动、盘中价格/成交量突变、以及偏离均线超阈值等三类信号,支持飞书推送+系统弹窗+语音播报(报出股票简称与触发条件),真正实现“人在吃饭,信号已响”。
- AI驱动的自然语言交互分析:在页面右下角点击对话图标,输入“帮我找出近3日RSI低于30且主力资金连续2日净流入的创业板股票”,TSP会自动拆解为数据查询步骤、展示中间结果、并生成可复用的策略快照——整个过程透明可验证,不是黑箱推荐。
- 因子-策略双向联动平台:用DSL(领域专用语言)点选算子(如“过去5日收盘价均值”“市盈率分位数”)就能定义新因子;定义后,既可一键生成“该因子排名前20”的选股策略,也能在回测中直接引用该因子做归因分析(例如:“这波亏损主要源于入场日该因子处于历史后10%分位”)。
- 插件化多源数据路由:行情数据可同时接入TDX(通达信)、聚宽、akshare、自建CSV或DuckDB本地库;6类数据集(日线、分钟线、财务、概念、龙虎榜、资金流)按能力独立路由——换数据源只需改配置,选股逻辑、回测结果、监控规则全部保持一致。
- 分钟级策略回测闭环:不仅支持T+1日线回测,还提供逐分钟信号回放、分钟级成交明细、滑点模拟与手续费扣除;更独特的是“评分因子策略归因”功能——每笔亏损交易都会标注“入场当日该因子值 vs 历史分布”,让失败变得可学习。
- 市场环境动态感知系统:自动识别当前处于情绪周期的6个阶段(冰点→启动→主升→高潮→退潮→修复),结合连板梯队强度、EMA平滑确认、行业轮动矩阵,给出“当前适合做首板还是做趋势”的环境建议,而非简单输出一个“情绪指数”。
- 自托管+零运维部署:单条Docker命令即可启动完整服务(含FastAPI后端、React前端、DuckDB内存数据库),所有原始数据与计算结果以Parquet格式存于本地磁盘,不上传、不联网、不依赖云服务——你的数据,始终在你硬盘上。
技术亮点
- “能力路由矩阵”架构设计:不同于传统量化工具将数据硬编码进策略,TSP抽象出6类数据能力(如“支持分钟级OHLCV”“支持财务TTM字段”),每个数据源声明自身能力,系统按需调度。这意味着切换聚宽为akshare时,无需修改任何策略代码,只改YAML配置即可。
- Polars + DuckDB双引擎协同:高频扫描用Polars(列式内存计算,比Pandas快5–10倍);复杂关联查询(如“找出概念涨幅前三且ROE>15%的个股”)交由DuckDB执行;两者通过Arrow内存零拷贝互通,兼顾速度与灵活性。
- LLM Agent深度集成,非简单调用:借助RunningHub提供的统一API网关,TSP将大模型作为“可审计的SQL生成器”和“策略解释器”——每次AI生成的选股条件,都附带对应的数据表JOIN路径、字段来源、计算逻辑,用户可一键展开核对,杜绝“AI幻觉”导致的误操作。
- Enriched Parquet数据口径统一:所有模块(选股、回测、监控、分析)共享同一份预计算的增强型Parquet数据集,包含68列标准化指标(如“5日量比”“20日波动率分位数”“概念热度得分”),彻底消灭因数据加工环节差异导致的策略漂移。
- 前端React组件化+后端FastAPI轻量API:页面按功能域拆分为独立微组件(如
ScreenerTable、AbnormalAlertPanel),后端仅暴露JSON-RPC风格精简接口,无冗余状态管理,首次加载仅1.2MB,老旧笔记本亦可流畅运行。
适合哪些人用
它不是给机构交易员用的高频系统,也不是给小白投资者的“荐股APP”,而是为以下两类人量身打造:
- 个人量化爱好者:有Python基础,想系统性验证自己的交易想法,但苦于数据源不稳定、回测不准、监控难落地。比如:一位程序员用TSP接入本地TDX行情,写了一个“北向资金连续3日净买入+股价站上布林带上轨”的策略,一键回测显示夏普0.82,再设为盘中监控,当天下午触发语音播报,成功捕获涨停。
- 小团队研究者:3–5人规模的私募/工作室,需要快速搭建合规、可控、可审计的量化基础设施。例如:某FOF团队用TSP接入Wind财务数据+自研资金流模型,构建“财务健康度×资金活跃度”双因子体系,每日自动生成候选池,并导出CSV供投决会讨论——全程无外部依赖,数据不出内网。
快速上手
无需安装Python环境,一行命令即可启动:
docker run -d -p 8000:8000 -v $(pwd)/data:/app/data -v $(pwd)/config:/app/config --name tsp shy3130/tick-stock-panel
首次运行后,访问 http://localhost:8000,系统会引导下载TDX行情数据(约2GB),自动完成初始化。关键配置在config/config.yaml中调整,例如切换数据源只需修改:
data_sources:
ohlcv_daily: "akshare"
financials: "fuyao"
如需启用AI助手,注册RunningHub获取免费API Key,填入配置即可。
同类对比 / 注意事项
与同花顺/通达信相比,TSP不提供Level-2行情、不支持条件单自动下单、不内置“涨停预测”等营销功能——它明确拒绝成为“投资软件”,而是专注做“研究基础设施”。与QuantConnect、Backtrader等框架相比,TSP胜在开箱即用:无需写100行代码搭数据管道,所有功能皆有可视化界面;但若需定制高频做市策略,则仍需自行扩展。常见坑提醒:首次启动需预留至少15GB磁盘空间(含Parquet缓存);Mac M系列芯片用户请使用Docker Desktop 4.30+版本以确保DuckDB兼容性。
项目信息
TSP自托管、零运维的 A 股「选股 + 监控 + 回测」量化工作台 | LLM能力驱使策略定制+个股分析+复盘 | 自由接入第三方数据源与个性化扩展数据 | 个人开源
5.2k
今日 +44 stars today
Stars
1.3k
Forks
Python
MIT
Python · GitHub 项目地址 · MIT开源协议 · Star数:5162
如果你厌倦了在多个工具间复制粘贴、担心数据被锁死在云端、渴望一个真正属于自己的、能听懂人话的A股量化实验室——TSP不是终点,而是你量化之路最值得信赖的起点。







