# 📈 股票智能监控系统 一个基于FastAPI和AI技术的实时股票监控与分析平台,提供股票行情展示、智能分析、自选股管理等功能。 ## ✨ 功能特性 ### 🎯 核心功能 - **实时股票监控**: 支持A股市场实时行情数据 - **智能AI分析**: 集成豆包大模型,提供专业的股票分析和投资建议 - **自选股管理**: 添加/删除自选股票,设置市值预警范围 - **指数行情**: 沪深指数实时行情展示 - **多维分析**: 价值投资分析、道德经视角、投资大师分析 ### 📊 数据来源 - **Tushare API**: 专业的金融数据接口,提供准确的中国股市数据 - **实时行情**: 支持实时价格、成交量、涨跌幅等关键指标 - **历史数据**: 提供历史K线数据用于技术分析 ### 🤖 AI智能分析 - 集成豆包大模型(Volces API) - 自动生成股票分析报告 - 提供投资建议和风险评估 - 支持多种分析维度: - **传统价值投资分析**: 财务指标、估值分析、风险评估 - **道德经智慧分析**: 企业道德评估、可持续发展分析 - **投资大师视角**: 巴菲特、格雷厄姆、林园等大师分析方法 ## 🏗️ 技术架构 ### 后端技术栈 - **FastAPI**: 现代、快速的Python Web框架 - **SQLAlchemy**: ORM数据库操作 - **SQLite**: 轻量级数据库存储 - **Tushare**: 金融数据获取 - **OpenAI SDK**: AI大模型接口 ### 前端技术栈 - **HTML5 + CSS3**: 现代化界面设计 - **JavaScript**: 交互逻辑实现 - **Bootstrap**: 响应式UI组件 - **ECharts**: 数据可视化图表 ## 🚀 快速开始 ### 环境要求 - Python 3.8+ - pip 或 conda ### 安装步骤 1. **克隆项目** ```bash git clone cd stock-monitor ``` 2. **创建虚拟环境** ```bash python -m venv venv # Windows venv\Scripts\activate # Linux/Mac source venv/bin/activate ``` 3. **安装依赖** ```bash pip install -r requirements.txt ``` 4. **配置环境** - 获取Tushare Token: 访问 https://tushare.pro 注册获取 - 获取豆包大模型API: 访问火山引擎控制台创建应用 - 修改配置文件 `app/services/ai_analysis_service.py`: ```python self.model = "your_model_id" # Volces 模型接入点ID self.client = OpenAI( api_key = "your_api_key", # 豆包大模型APIkey base_url = "https://ark.cn-beijing.volces.com/api/v3" ) ``` 5. **初始化数据库** ```bash python docs/database/init_database.py ``` 6. **启动服务** ```bash python run.py ``` 7. **访问应用** - 主页: http://localhost:8000 - API文档: http://localhost:8000/docs ## 📁 项目结构 ``` stock-monitor/ ├── app/ # 应用主目录 │ ├── __init__.py # FastAPI应用初始化 │ ├── api/ # API路由 │ │ ├── stock_routes.py # 股票相关API │ │ └── market_routes.py # 市场数据API │ ├── services/ # 业务逻辑层 │ │ ├── stock_service_db.py # 股票数据服务 │ │ ├── ai_analysis_service_db.py # AI分析服务 │ │ ├── market_data_service.py # 市场数据服务 │ │ └── kline_service.py # K线数据服务 │ ├── dao/ # 数据访问层 │ │ ├── base_dao.py # 基础DAO类 │ │ ├── stock_dao.py # 股票数据DAO │ │ ├── watchlist_dao.py # 自选股DAO │ │ └── ai_analysis_dao.py # AI分析DAO │ ├── models/ # 数据模型 │ │ └── stock.py # 股票数据模型 │ ├── templates/ # HTML模板 │ │ ├── index.html # 主页模板 │ │ ├── market.html # 市场模板 │ │ └── stocks_simple.html # 股票页面模板 │ ├── static/ # 静态文件 │ ├── database.py # 数据库配置 │ ├── config.py # 应用配置 │ └── scheduler.py # 定时任务调度器 ├── docs/ # 文档目录 │ ├── database/ # 数据库相关文档和脚本 │ │ ├── database_schema*.sql # 数据库表结构文件 │ │ ├── init_database.py # 数据库初始化脚本 │ │ └── migrate_to_database.py # 数据迁移脚本 │ └── guides/ # 使用指南 │ ├── DATABASE_MIGRATION_GUIDE.md # 数据迁移指南 │ └── NEW_FEATURES_GUIDE.md # 新功能指南 ├── backup/ # 备份文件目录 │ └── json_backup_20251124_093028/ # JSON数据备份 ├── run.py # 应用启动脚本 ├── requirements.txt # Python依赖 ├── config.template.py # 配置文件模板 ├── docker-compose.yml # Docker部署配置 ├── CLAUDE.md # Claude Code 使用指南 └── README.md # 项目说明文档 ``` ## 📱 功能模块详解 ### 1. 股票搜索与查看 - 支持股票代码搜索 - 展示实时价格、涨跌幅、成交量 - 公司基本信息展示 - 多维度财务指标(PE、PB、ROE等) ### 2. 自选股管理 - 添加关注股票到自选列表 - 设置市值预警区间 - 目标市值预警(高估、低估、合理) - 一键移除自选股票 ### 3. AI智能分析 - **价值投资分析**: 基于财务数据的深度分析 - **道德经视角**: 从传统文化角度分析企业价值 - **投资大师视角**: 模拟知名投资家的分析方法 - 实时生成专业分析报告 ### 4. 市场数据 - 沪深指数实时行情 - 板块涨跌排行 - 市场概况展示 - K线图表分析 ## 🛠️ API接口 主要RESTful API接口: - `GET /` - 主页 - `GET /stocks` - 股票页面 - `GET /market` - 市场页面 - `GET /api/stock_info/{stock_code}` - 获取股票信息 - `GET /api/watchlist` - 获取自选股列表 - `POST /api/add_watch` - 添加自选股 - `DELETE /api/remove_watch/{stock_code}` - 删除自选股 - `GET /api/index_info` - 获取指数信息 - `GET /api/company_detail/{stock_code}` - 获取公司详情 ## ⚙️ 配置说明 ### API配置要求 **Tushare配置** - 访问 https://tushare.pro 注册账号 - 获取API Token并填入配置文件 - 免费账户有调用频率限制 **豆包大模型配置** - 访问火山引擎控制台开通服务 - 获取API Key和模型接入点ID - 按量付费,支持免费额度体验 ### 数据库配置 - 默认使用SQLite数据库 - 数据文件位置: `data/stocks.db` - 支持扩展到MySQL等其他数据库 ## ⚠️ 重要提示 ### 数据免责声明 - 本项目提供的股票数据仅供参考,不构成投资建议 - 股票投资有风险,入市需谨慎 - AI分析结果基于公开数据和模型计算,请以官方数据为准 ### API使用限制 - Tushare API有调用频率限制 - 豆包大模型API提供免费额度,超出后按量计费 - 请合理控制API调用频率 ### 系统性能建议 - 建议监控股票数量不超过30只 - 定时刷新间隔建议60秒以上 - 生产环境建议使用专业服务器部署 ## 📋 部署指南 ### 开发环境 ```bash # 安装依赖 pip install -r requirements.txt # 启动开发服务器 python run.py ``` ### 生产环境部署 - 推荐使用Docker容器化部署 - 配置Nginx反向代理 - 使用Gunicorn作为WSGI服务器 - 配置SSL证书确保安全访问 ### Docker部署示例 ```bash # 构建镜像 docker build -t stock-monitor . # 运行容器 docker run -d -p 8000:8000 stock-monitor ``` ## 🤝 贡献指南 欢迎提交Issue和Pull Request来改进项目! ### 提交规范 - Bug修复: `fix: 修复xxx问题` - 新功能: `feat: 添加xxx功能` - 文档更新: `docs: 更新xxx文档` - 代码重构: `refactor: 重构xxx模块` ## 📞 联系方式 如有问题或建议,欢迎通过以下方式联系: - 提交Issue: [GitHub Issues](https://github.com/your-username/stock-monitor/issues) - 邮箱: your-email@example.com ## 📄 许可证 本项目采用MIT许可证,详见[LICENSE](LICENSE)文件。 --- **⚡ 投资有风险,入市需谨慎!本系统仅为价值投资辅助分析工具,不构成任何投资建议,投资决策请谨慎,风险自担!** **⭐ 如果这个项目对你有帮助,请给个Star支持一下!**