| 属性 | 值 |
|------|------|
| 技能名称 | 智研助手 · 金融投研 Skill |
| Skill ID | financial-research-report |
| 版本 | v2.0 竞赛增强版 |
| 作者 | 腾讯云 AI 黑客松参赛团队 |
| 创建日期 | 2026-05-28 |
| 语言 | Python 3.8+ |
| 许可证 | MIT(仅供比赛与学习使用) |
「智研助手」是一个 AI 驱动的全自动金融投研分析技能。用户输入任意美股 / 港股 / A 股代码,系统自动完成以下全链路分析并生成专业 Word 报告:
命令行传入任意股票代码即可触发:
python main.py <股票代码>
支持的股票代码格式:
| 市场 | 格式 | 示例 |
|------|------|------|
| 美股 | 纯字母代码 | AAPL, MSFT, NVDA |
| 港股 | 代码.HK | 00700.HK, 09988.HK |
| A股(深交所) | 代码.SZ | 000001.SZ, 300750.SZ |
| A股(上交所) | 代码.SS 或 .SH | 600519.SS, 688981.SH |
| A股(纯数字) | 6 位数字 | 000001(自动识别交易所) |
streamlit run web_app.py
在浏览器中输入股票代码,点击「开始分析」按钮。
用户输入股票代码
│
▼
┌──────────────────┐
│ Step 1: 市场识别 │ detect_market()
│ 自动判断美/港/A │ 输出: market_info dict
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 2: 数据获取 │ fetch_all_data()
│ yfinance 或 │ 输出: {hist, financials, balance_sheet,
│ akshare 双源 │ info, news, valuation}
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 3: 技术分析 │ get_technical_summary()
│ MA/MACD/RSI/ │ 输出: {mas, macd, rsi, bb, kdj,
│ Bollinger/KDJ │ 多空信号判断}
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 4: 估值分析 │ calc_valuation_metrics()
│ PE/PB/ROE/ROA/ │ 输出: {PE, PB, ROE, GrossMargin,
│ PEG/毛利率/净利率 │ NetMargin, MarketCap...}
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 5: 风险分析 │ calc_risk_metrics()
│ Vol/Sharpe/ │ 输出: {AnnualVolatility, Sharpe,
│ MaxDD/VaR/胜率 │ MaxDrawdown, VaR95...}
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 6: 综合评分 │ calc_comprehensive_score()
│ 五维加权量化打分 │ 输出: {scores{dim1...dim5},
│ 0-100 分制 │ overall, rating}
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 7: AI 分析 │ llm_deep_analysis()
│ DeepSeek/OpenAI │ 输出: Markdown 格式分析文本
│ 大模型深度解读 │ (可选,需 API Key)
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 8: 图表生成 │ generate_enhanced_charts()
│ 技术面板/财务/ │ 输出: PNG 图表文件
│ 雷达图 │
└────────┬─────────┘
▼
┌──────────────────┐
│ Step 9: 报告生成 │ generate_enhanced_report()
│ python-docx │ 输出: .docx Word 文档
│ 9 章专业报告 │
└──────────────────┘
| 函数 | 参数 | 返回值 |
|------|------|--------|
| detect_market(ticker) | 股票代码字符串 | {market, clean_ticker, akshare_ticker} |
| 函数 | 参数 | 返回值 |
|------|------|--------|
| fetch_yfinance_data(market_info) | 市场信息 dict | 包含 hist/financials/news/info 的数据 dict |
| fetch_akshare_data(market_info) | 市场信息 dict | 同上(A 股数据源) |
| fetch_all_data(ticker) | 股票代码 | 统一输出数据 dict |
| 函数 | 参数 | 返回值 |
|------|------|--------|
| get_technical_summary(hist_df) | 历史行情 DataFrame | 技术指标汇总 dict |
| calc_valuation_metrics(data) | 完整数据 dict | 估值指标 dict |
| calc_risk_metrics(hist_df) | 历史行情 DataFrame | 风险指标 dict |
| calc_comprehensive_score(...) | 各项分析结果 | 五维评分 dict |
| 函数 | 说明 |
|------|------|
| calc_ma(series, periods) | 多周期均线计算 |
| calc_macd(close, fast, slow, signal) | MACD 指标 |
| calc_rsi(close, period) | RSI 指标 |
| calc_bollinger_bands(close, period, nbdev) | 布林带 |
| calc_kdj(high, low, close, n) | KDJ 指标 |
| 函数 | 参数 | 返回值 |
|------|------|--------|
| llm_deep_analysis(data, tech_summary, valuation, risk, scores) | 所有结构化数据 | LLM 生成的 Markdown 分析文本或 None |
| 函数 | 说明 |
|------|------|
| generate_enhanced_charts(data, tech_summary) | 图表总调度 |
| _chart_technical_panel(...) | 4 面板技术分析图 |
| _chart_revenue_profit_enhanced(...) | 财务趋势双轴图 |
| _chart_score_radar(...) | 评分雷达图 |
| 函数 | 说明 |
|------|------|
| generate_enhanced_report(...) | 完整 9 章 Word 报告生成 |
| 维度 | 权重 | 评估内容 | 主要数据来源 |
|------|------|----------|-------------|
| 🔵 趋势力 | 25% | 均线排列、布林带位置、价格区间位置 | 技术指标 |
| 🟠 动量 | 20% | RSI 信号、MACD 状态、成交量变化 | 技术指标 |
| 🟢 估值 | 20% | PE 合理性、PB 区间、ROE 水平 | 估值指标 |
| 🟣 质量 | 20% | ROE、毛利率、净利率、盈利增长 | 估值+财务 |
| 🔴 风控 | 15% | 波动率、Sharpe、最大回撤 | 风险指标 |
| 分数 | 星级 | 含义 |
|------|------|------|
| 80-100 | ★★★★★ | 强烈推荐 |
| 65-79 | ★★★★☆ | 推荐关注 |
| 50-64 | ★★★☆☆ | 中性 |
| 35-49 | ★★☆☆☆ | 谨慎 |
| 0-34 | ★☆☆☆☆ | 回避 |
charts/ 目录)
| 文件 | 格式 | 说明 |
|------|------|------|
| technical_{代码}.png | PNG, 150 DPI | 4 面板技术分析综合图(价格/成交量/MACD/RSI) |
| financial_{代码}.png | PNG, 150 DPI | 营收/净利润/毛利率三合一财务趋势图 |
| radar_{代码}.png | PNG, 150 DPI | 五维综合评分雷达图 |
| 文件 | 说明 |
|------|------|
| 投研报告_{代码}_{日期}.docx | 9 章 + 免责声明的完整投研周报 |
--save-json 参数)
| 文件 | 说明 |
|------|------|
| analysis_{代码}.json | 完整分析数据结构化导出 |
| 包 | 版本 | 用途 |
|----|------|------|
| yfinance | ≥0.2.31 | 美股/港股行情与财务 |
| akshare | ≥1.13.0 | A 股行情与财务 |
| pandas | ≥2.0.0 | 数据处理 |
| numpy | ≥1.24.0 | 数值计算 |
| matplotlib | ≥3.7.0 | 图表绘制 |
| python-docx | ≥1.0.0 | Word 文档 |
| 包 | 版本 | 用途 |
|----|------|------|
| openai | ≥1.0.0 | DeepSeek/OpenAI API(AI 分析) |
| python-dotenv | ≥1.0.0 | 环境变量管理 |
| streamlit | ≥1.28.0 | Web 可视化界面 |
| 变量 | 必填 | 默认值 | 说明 |
|------|:--:|--------|------|
| DEEPSEEK_API_KEY | 否 | — | DeepSeek API 密钥 |
| DEEPSEEK_BASE_URL | 否 | https://api.deepseek.com | API 地址 |
| LLM_MODEL | 否 | deepseek-chat | 模型名称 |
| OPENAI_API_KEY | 否 | — | OpenAI API 密钥(备选) |
| OPENAI_BASE_URL | 否 | https://api.openai.com/v1 | OpenAI API 地址 |
| 场景 | 处理方式 |
|------|----------|
| 股票代码不存在 | 输出明确错误提示并退出 |
| 历史行情获取失败 | 致命错误,程序退出 |
| 财务数据获取失败 | 警告提示,跳过财务分析部分 |
| 估值指标缺失 | 显示 "N/A",不影响其他模块 |
| LLM API 调用失败 | 捕获异常,降级为规则引擎分析 |
| 中文字体缺失 | 自动检测兜底字体,警告用户 |
| akshare 未安装 | 提示安装命令并退出 |
| 网络超时 | 捕获异常,输出具体失败项 |
| 项目 | 内容 |
|------|------|
| 比赛 | 腾讯云 AI 黑客松 |
| 项目名称 | 智研助手 · 金融投研 Skill |
| 项目类型 | AI + 金融科技 |
| 核心技术 | Python / yfinance / akshare / matplotlib / LLM |
| 关键词 | 金融投研、量化分析、AI 报告生成、多维度评分 |
智研助手 · 金融投研 Skill v2.0
AI-Powered Investment Research Report Generator
共 1 个版本