
源码系统概览
文章正文
tick-stock-panel 是一套开源的 A 股智能量化工作台源码,自托管部署、零运维成本,集成选股、监控、回测三大核心模块,面向个人投资者和量化研究团队提供本地化的股票分析平台。项目基于 FastAPI 和 React 18 构建,后端采用 Polars 替代 Pandas 实现毫秒级全市场扫描,内置 18 种量化策略,配合 vectorbt 框架完成回测验证。该系统支持 Docker 一键部署,数据通过 AkShare 和 Tushare 双通道获取,无需依赖外部云服务,所有行情数据和分析结果均存储在本地 DuckDB 数据库中。
源码简介
tick-stock-panel 是由开发者 shy3130 创建并开源的 A 股智能量化工作台源码,已在 GitHub 获得 4000 个 star。
项目采用前后端分离架构,后端使用 Python 3.11 和 FastAPI 框架,前端使用 React 18 和 TypeScript。
当前版本采用 MIT 许可证,最后更新 2026 年,欢迎贡献 star 和 fork。
更新日志详见 CHANGELOG,项目持续维护中。
项目采用 Python 后端加前端实时渲染,数据源支持新浪和东方财富等渠道。
社区活跃度高,近期持续更新,适合量化交易爱好者和金融数据开发者使用。
适用场景
个人投资者需要本地化量化选股工具,不想依赖云端付费平台。
量化研究团队需要可定制的回测框架,18 个内置策略可直接使用或二次开发。
金融从业者需要实时监控 A 股全市场行情,Polars 引擎可在毫秒级完成 5000 只股票扫描。
开发者希望学习现代量化系统架构,前后端分离加 DuckDB 的技术组合具有较高的参考价值。
技术栈与运行环境
后端,Python 3.11、FastAPI、Pydantic v2、APScheduler。
前端,React 18、Vite、TypeScript、Tailwind CSS、ECharts。
数据处理,Polars 替代 Pandas、DuckDB 嵌入式数据库、vectorbt 回测引擎。
数据源,AkShare 和 Tushare 双通道,支持自动降级和缓存。
部署方式,Docker 一键部署,最后更新 2026 年,更新日志见 CHANGELOG。
功能亮点
- 18 个内置量化策略,涵盖动量、均值回归、技术指标、资金流向等多种策略类型
- Polars 毫秒级扫描,替代 Pandas 实现全 A 股市场快速扫描,性能提升数倍
- vectorbt 回测引擎,支持向量化回测,可并行测试多只股票和多种策略参数组合
- DuckDB 本地数据库,嵌入式架构无需独立数据库服务,数据存储在本地文件中
- 实时监控告警,基于 APScheduler 的定时任务,支持自定义监控条件和推送通知
- 双数据源通道,AkShare 和 Tushare 自动切换,确保数据获取的稳定性
- Docker 一键部署,自托管部署,零运维成本,所有数据存储在本地
技术架构与部署指南
安装与部署提示
Docker 部署,执行 docker compose up -d 即可启动全部服务,包括后端 API 和前端界面。
手动部署,后端执行 pip install -r requirements.txt,前端执行 npm install 和 npm run build。
环境配置,复制 .env.example 为 .env,填写 Tushare token(AkShare 无需 token)。
数据初始化,首次启动自动下载全 A 股基础数据,耗时约 10 分钟。
最后更新 2026 年,版本号 v1.0.0,更新日志详见 GitHub Releases。
截图与演示说明
GitHub 仓库封面图展示了 tick-stock-panel 的项目标识和仓库统计数据,包含 4000 个 star。
screenshots 目录包含 8 张功能截图,分别展示选股界面、监控面板、回测结果和策略配置等核心模块。
选股界面截图展示了策略选择、参数配置和结果列表,支持按多种指标排序和筛选。
回测结果截图展示了收益曲线、最大回撤和交易明细,数据可视化基于 ECharts 实现。




常见问题
问:tick-stock-panel 和 JoinQuant 等平台有什么区别?
JoinQuant 是云端付费平台,tick-stock-panel 是本地自托管源码,数据存储在本地,无需付费,对比区别在于部署方式和数据隐私。
问:需要购买数据源吗?
AkShare 完全免费,Tushare 免费版有每分钟调用限制,建议注册获取 token 提升额度。
问:支持港美股吗?
当前版本仅支持 A 股市场,数据源 AkShare 和 Tushare 主要覆盖沪深两市。
问:如何添加自定义策略?
在 backend/strategies 目录下新建 Python 文件,继承基类并实现 generate_signals 方法即可。
问:tick-stock-panel 是免费的吗?
是的,项目采用 MIT 许可证完全开源免费,可自由使用和修改。
安全风险提示
该项目为纯 Python 和 TypeScript 实现,未检测到 eval 或 shell_exec 等高风险函数。
.env 文件中包含 Tushare token 等敏感信息,部署时需注意文件权限控制。
Docker 部署时注意不要使用默认密码,建议修改 docker-compose.yml 中的环境变量。
项目通过 AkShare 和 Tushare 获取公开行情数据,不涉及用户资金操作,无 CORS 风险。
下载说明
本站提供 tick-stock-panel v1.0.0 完整源码包下载,含全部 602 个文件。
下载链接已通过百度网盘和蓝奏云双盘备份,提取码统一为 8888。
解压后请先阅读 README.md 获取完整部署说明,再按照 Docker 或手动方式安装。
GitHub 项目开源地址,https://github.com/shy3130/tick-stock-panel
作者 shy3130,GitHub github.com/shy3130/tick-stock-panel
许可证 MIT,最后更新 2026 年,版本 v1.0.0
| 对比项 | tick-stock-panel | JoinQuant |
|---|---|---|
| 部署方式 | 本地自托管 | 云端平台 |
| 数据隐私 | 完全本地 | 上传至云端 |
| 费用 | 免费开源 | 付费订阅 |
| 策略定制 | 完全可定制 | 受限定制 |
tick-stock-panel 和 JoinQuant 的区别在于部署方式和数据隐私,对比 vs JoinQuant 后可发现本地部署更适合对数据隐私要求高的用户。