这是一个基于 Python 的命令行股票行情追踪与分析工具。它集成了中国 A 股 (Akshare) 和美股 (Yahoo Finance) 的数据源,提供实时行情查看、自选股管理、以及基于 AI 的市场总结功能。
为了提供稳定且高效的使用体验,项目采用了 SQLite 本地数据库进行全量数据持久化。这意味着自选股列表、市场快照等数据都会被本地缓存,大幅减少了网络请求频率,实现了秒级的数据加载与页面跳转。同时,结合 AI 大模型能力,项目不仅能追踪个股,还能对整个市场趋势进行宏观分析。
- 全市场覆盖: 支持 A 股 (CN) 和 美股 (US) 两大市场。
- 权威数据源:
- A 股: 使用 Akshare 接口,获取最准确的实时价格与成交量数据。
- 美股: 实时行情接入 Yahoo Finance,基础列表锚定 S&P 500 标普成分股。
- 便捷搜索: 支持模糊搜索(如输入 "Apple"、"万达" 或 "000001"),快速添加关注。
- 智能识别: 自动处理代码冲突,准确区分同代码不同市场的股票。
- 本地持久化: 所有自选列表存储于本地
stock_tracker.db数据库,重启程序不丢失。 - 涨跌额显示: 自动计算并展示当日涨跌金额与幅度。
- 分页浏览: 提供流畅的分页查看体验,支持
n(下页)、p(上页) 快捷键。 - 快速跳转: 支持
j指令直接跳转到指定页码。 - 极速响应: 得益于本地数据库缓存策略,每日仅需一次全量更新,后续浏览无需等待网络加载。
- 自选股日报: 一键生成当前自选股列表的涨跌趋势简报。
- 整体市场宏观分析:
- 自动抓取全球主要指数(上证、深证、标普 500、纳斯达克等)。
- 调用 AI 模型生成专业的宏观市场分析报告,助您把握大盘走势。
- 基于 Rich 库构建,提供色彩丰富的终端体验。
- 包含动态加载条、彩色涨跌幅标识(红跌绿涨/绿跌红涨)及格式化的卡片展示。
- 智能错误处理: 当输入无效股票代码时,提供友好的“未找到”提示而非程序崩溃。
- 网络降噪: 自动屏蔽第三方数据源(如 Yahoo Finance)偶尔产生的网络错误日志,保持界面清爽。
- Python 3.8+
- 依赖库:
rich,yfinance,akshare,openai,pandas,python-dotenv,lxml,requests
-
克隆项目
git clone <repository_url> cd <repository_directory>
-
创建并激活环境 (推荐)
conda create -n stock_tracker python=3.10 conda activate stock_tracker
-
安装依赖
pip install -r requirements.txt
在项目根目录创建 .env 文件,主要用于配置 AI 总结功能的 API Key:
# OpenAI API 配置 (支持 OpenAI 及兼容接口,如 DeepSeek, ECNU-API 等)
OPENAI_API_KEY=sk-xxxxxxxxxxxxxxxxxxxxxxxx
OPENAI_BASE_URL=https://api.openai.com/v1
OPENAI_MODEL=gpt-4o-mini注意: 基础行情功能 (查看价格、列表) 不需要 API Key 即可独立使用。
python main.py| 按键/选项 | 功能描述 |
|---|---|
| [1] | 查看自选股: 列表展示关注股票的最新价、涨跌幅、涨跌额、成交量。 |
| [2] | 添加自选股: 输入关键词 (名称/代码) 搜索并添加。支持输入 D 进入直接代码输入模式。 |
| [3] | 删除自选股: 移除不再关注的股票。 |
| [4] | 个股详情: 查看股票的详细信息及近一个月历史 K 线数据。 |
| [5] | 自选股 AI 总结: 根据当前自选股表现生成文字版简报。 |
| [6] | 市场列表: 分页浏览全市场。支持 n(下页), p(上页), j(跳转)。需每日更新一次数据。 |
| [7] | 整体市场分析: 查看大盘指数及 AI 生成的市场宏观分析。 |
| [q] | 退出: 退出程序。 |
MIT License