Stock-Scanner 详细部署教程:AI 增强的 A 股量化分析系统
Stock-Scanner 是一个集成了 25 项财务指标、新闻情绪分析、技术指标计算和 AI 深度解读的开源 A 股量化分析系统。它支持 OpenAI、Claude、智谱 AI 等多种大语言模型,并提供桌面 GUI 和 Web 两种界面。本教程将详细介绍多种部署方式。
1. 系统概述与准备工作
1.1 核心特性
- 多维度分析:涵盖盈利能力、偿债能力、营运能力等 25 项财务指标,以及移动平均线、RSI、MACD 等技术指标。
- AI 智能解读:支持 OpenAI GPT、Claude、智谱 AI 等模型,提供流式推理和专业投资建议。
- 多端支持:提供 PyQt6 桌面版 GUI、Flask Web 版(支持 SSE 流式推送)和 Docker 容器化部署。
- 多市场覆盖:V3.0 版本已支持 A 股、港股和美股。
1.2 环境要求
- 操作系统:Windows、Linux、macOS。
- Python 版本:Python 3.8 或更高版本。
- 网络:能够访问互联网以获取股票数据和调用 AI API。
- (可选)AI API 密钥:至少配置一个 AI 服务商的 API 密钥(OpenAI、Anthropic、智谱 AI 等)以启用 AI 分析功能。
2. 安装与配置
2.1 克隆项目并安装依赖
首先,从 GitHub 克隆项目到本地:
1 | git clone https://github.com/DR-lin-eng/stock-scanner.git |
推荐使用 Python 虚拟环境,以避免依赖冲突:
1 | # 创建虚拟环境 |
如果安装缓慢,可以使用国内镜像源加速,例如:pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple。
2.2 配置文件详解
项目根目录下有一个 config - 示例.json 文件,你需要将其复制为 config.json 并进行配置。
1 | { |
关键配置项说明:
api_keys:至少配置一个 AI 服务的 API 密钥。如果使用本地模型(如 Ollama),此处可留空或随意填写。model_preference:首选 AI 服务商,系统会优先使用此处的模型。analysis_weights:技术面、基本面和情绪面在综合评分中的权重。web_auth:Web 版的认证配置,建议启用密码保护。cache:不同数据类型在内存中的缓存时间(小时),可减少 API 调用。
3. 部署方式
Stock-Scanner 提供了多种部署方式,你可以根据需求选择。
3.1 方式一:直接运行 Web 版(推荐用于生产)
这是功能最全的方式,支持 SSE 流式输出,适合部署在服务器上。
进入 Web 版目录(以最新的 3.0 版本为例):
1
cd "3.0 webapp(支持港股美股)"
直接运行 Flask 开发服务器(仅用于测试):
1
python flask_web_server.py
服务默认运行在
http://localhost:5000。使用 Gunicorn 部署(生产环境推荐):
1
2pip install gunicorn
gunicorn -w 4 -b 0.0.0.0:5000 flask_web_server:app此命令会启动 4 个工作进程,监听所有网络接口的 5000 端口。
3.2 方式二:Docker 部署(最便捷)
Docker 方式适合快速部署,支持 x86 和 ARM 架构。
确保 Docker 已安装,并可以考虑配置国内镜像源以加速拉取。
进入包含 Docker Compose 文件的目录:
1
2cd "2.6 webapp(流式传输测试版)"
# 或根据最新版本进入相应目录使用 Docker Compose 一键启动:
1
docker-compose up -d
此命令会在后台启动容器,默认映射端口为
8888。
3.3 方式三:使用预构建的 Docker 镜像
社区维护了一个可直接使用的 Docker 镜像 lanzhihong/stock-scanner。
1 | docker run -d \ |
注意:此镜像可能需要通过环境变量传递特定的 AI 密钥(如 Gemini)。访问 http://你的IP:8888 即可使用。
4. 使用 Nginx 进行反向代理(可选)
为了在生产环境中提供更好的性能和安全性,可以使用 Nginx 作为反向代理。
1 | server { |
5. 使用与验证
5.1 Web 界面
- 在浏览器中访问你部署的地址(如
http://localhost:5000或http://你的IP:8888)。 - 如果启用了 Web 认证,需要输入
config.json中设置的密码。 - 输入股票代码(A 股如
000001,港股如00700,美股如AAPL)即可开始分析。
5.2 API 调用示例
你也可以通过 API 方式使用:
单股票分析 (SSE 流式):
1 | curl -X POST http://localhost:5000/api/analyze_stream \ |
批量分析:
1 | curl -X POST http://localhost:5000/api/batch_analyze_stream \ |
5.3 对接本地大模型 (Ollama)
Stock-Scanner 支持对接本地部署的 Ollama 模型,实现完全私有化的分析。
- 确保 Ollama 服务正在运行并已下载所需模型(如
qwen2.5)。 - 在 Web 界面或配置文件中,将 API 地址指向 Ollama 的服务地址(通常为
http://localhost:11434),API Key 可随意填写。 - 模型名称填写 Ollama 中的模型名,如
qwen2.5:7b。
6. 故障排查
- 数据获取失败:检查网络连接,确保能访问
quote.eastmoney.com等数据源。更新akshare库:pip install --upgrade akshare。 - AI 分析失败:检查
config.json中的 API 密钥是否正确,以及账户是否有余额。可以尝试切换到备用模型。 - 端口被占用:修改启动命令或 Docker Compose 文件中的映射端口,确保端口未被占用。
- Docker 镜像拉取慢:配置国内 Docker 镜像加速器,或在 Dockerfile 中修改 pip 源为国内源。
重要免责声明:本系统仅用于学习和研究目的,所有分析结果仅供参考,不构成投资建议。投资有风险,入市需谨慎。



