Skip to content

Repository files navigation

A 股专业深度分析系统 v2.0

一套面向 A 股市场的多维度量化分析框架,基于 Tushare 数据接口,覆盖 基本面、技术面、资金面、消息面 四大维度,对个股进行量化评分、走势预测,并生成可交互的 HTML 可视化报告。

同时作为 Claude Code Skill 运行,在对话中说 "分析一下 600519" 即可触发完整分析流程。

功能亮点

  • 25+ 数据源:整合 Tushare 25+ API 接口,从财务指标到筹码分布全覆盖
  • 四维分析引擎:基本面(40%) + 技术面(35%) + 资金面(25%) + 消息面情绪
  • 未来一周预测:多因子信号聚合 + ATR 目标区间 + 风险收益比
  • AI 智能摘要:火山引擎豆包 LLM 生成专业分析文本,支持本地模式降级
  • 信号族群聚合:30+ 技术信号归入 5 大族群,避免相关信号重复计数
  • 多时间框架确认:日线 + 周线共振验证
  • 背离检测:RSI/MACD 顶底背离自动识别
  • 社区情绪分析:东财股吧 + 雪球评论自动采集与多空情绪判定
  • Playwright 反爬:浏览器自动化绕过阿里云 WAF,稳定采集社区数据
  • 响应式 HTML 报告:桌面/平板/手机自适应,A 股红涨绿跌配色

快速开始

环境要求

  • Python 3.10+
  • curl(系统自带)
  • Tushare 账号(需 2000+ 积分,部分高级接口需 5000-6000 积分)

安装依赖

# Playwright(消息面情绪采集需要)
pip install playwright
playwright install chromium

无需安装 tushare Python 包,本项目直接通过 curl 调用 Tushare HTTP API。

运行分析

# 步骤一:数据采集 + 多维分析(生成 JSON)
python scripts/stock_analyzer.py --code 600519 --output ./data

# 步骤二:生成 HTML 可视化报告
python scripts/generate_report.py --code 600519.SH --data-dir ./data --output ./report.html

# 一键脚本
scripts/analyze_stock.sh 600519

命令行参数

参数 说明 默认值
--code 股票代码(如 600519、002471、300548) 必填
--output 输出目录 ./data
--no-ai 禁用 AI 摘要,使用本地 HTML 格式化摘要 默认启用 AI

分析框架

基本面分析(权重 40%)

子维度 核心指标 关键阈值
盈利能力 ROE_加权、ROA、净利率、毛利率、EPS ROE > 15% 优秀
成长能力 营收同比、净利同比、历年增速趋势 营收 > 15% 成长型
估值水平 PE_TTM、PB、PS_TTM、股息率、PEG PEG < 1 成长低估
偿债能力 流动比率、速动比率、资产负债率 流动 > 2 稳健
现金流质量 每股经营现金流 vs EPS OCF > EPS 利润质量高
运营效率 总资产周转率、存货周转率 周转 > 1 高效
业绩预告 预告类型、变动幅度 预增/略增看多
主营业务构成 收入占比分布 主业集中度
券商盈利预测 一致预期评级 买入/增持看多
资产负债增强 商誉占比、应收账款周转 商誉 > 20% 预警

技术面分析(权重 35%)

趋势系统:均线排列(MA5/10/20/60)、金叉死叉、线性趋势斜率

动量系统:MACD(金叉/死叉/零轴位置)、RSI(6)(超买超卖)、KDJ(金叉/死叉/极值)、BOLL(上下轨压力支撑)、CCI(±100/±200 极值)

量能系统:量比(最新量 / 20 日均量)、量价配合度、OBV 能量潮

波动性:ATR(14) 日均真实波幅、支撑/阻力位识别

背离检测:价格新高/新低 + RSI/MACD 指标背离 → 强反转信号

信号族群聚合:将 30+ 信号归入 5 个独立族群(趋势/动量/量能/波动/资金),同族群仅取最强信号,避免重复计数

周线多时间框架:周线 MA 排列 + 周线 MACD 共振确认

筹码分布:获利盘比例、平均成本、集中度 | 神奇九转:上/下九转计数及触发

资金面分析(权重 25%)

子维度 核心指标 信号含义
主力资金 大单+特大单 5 日净流入 > 1000 万看多
融资融券 融资余额变化趋势 持续上升 → 杠杆多头
股东结构 前十大持仓比、户数变化 户数减少 → 筹码集中
大宗交易 近月折溢价率均值 折价 > 5% 出货压力
股东增减持 近期增减持方向和规模 净增持 → 看多
限售解禁 未来解禁规模及时间 大量解禁 → 短期压力
股权质押 质押比例及风险 质押 > 30% 关注平仓
北向资金 沪深股通持股变化 持续增持 → 外资看好
机构调研 近期调研频次 频繁调研 → 关注度高

消息面与情绪分析

数据源 采集方式 内容
宏观新闻 新浪财经 RSS 财经头条、政策动态
行业新闻 新浪财经行业 RSS 所属行业实时动态
公司公告 上交所/深交所 API 公司信息披露
东财股吧 Playwright 浏览器自动化 散户讨论帖(阅读/评论数)
雪球评论 Playwright 浏览器自动化 投资者讨论(点赞/回复数)

情绪分析支持两种模式:

  • AI 模式:调用豆包 API 对帖子进行语义级多空情绪判定
  • 本地模式:基于正面/负面关键词词典的规则化情绪打分

雪球采集三级回退

雪球部署了阿里云 WAF,普通 HTTP 请求会被拦截。系统采用三级回退策略:

  1. Cookie API(最快):通过环境变量 XUEQIU_COOKIE 传入浏览器 cookie
  2. Playwright(默认):headed 模式 + 反检测参数,自动绕过 WAF
  3. RSSHub(备用):通过自建 RSSHub 实例获取 RSS

预测模型

信号聚合

Bull_Score = Σ(技术信号强度 × 权重) + 资金面加成 + 基本面加成
信号权重:strong_bull=2.0, bull=1.5, weak_bull=0.8
         weak_bear=-0.8, bear=-1.5, strong_bear=-2.0

上涨概率 = 25 + (raw_prob / 100) × 50    # 映射到 [25%, 75%]

目标价区间

base_move = ATR(14) × 1.5                 # 一周预期波幅

偏多 (prob≥58%): target = [price - base×0.5, price + base×1.3]
偏空 (prob≤42%): target = [price - base×1.3, price + base×0.5]
震荡 (42~58%):   target = [price - base×0.8, price + base×0.8]

约束: BOLL 上下轨 + 近期支撑阻力位

风险等级

ATR% 风险等级
> 4% 高风险
2-4% 中等风险
< 2% 低风险

综合评分

分数区间 评级 含义
80-100 ★★★★★ 强烈看多
65-79 ★★★★ 偏多
50-64 ★★★ 中性偏多
35-49 ★★ 中性偏空
0-34 ★ 偏空

输出结构

JSON 数据文件

data/<股票代码>_analysis.json

包含完整的分析数据:stock_info、composite(综合评分)、fundamental(基本面)、technical(技术面含信号列表和背离检测)、capital(资金面)、news(消息面含情绪分析)、prediction(预测)、chart_data(图表数据)。

HTML 报告

<输出路径>/<股票代码>_report.html
  • 响应式布局(桌面双列 / 移动单列)
  • A 股配色惯例(红涨绿跌)
  • 5 张技术图表(价格+均线、成交量、MACD、RSI、KDJ)
  • AI / 本地格式化分析摘要
  • 催化剂与风险因素清单

项目结构

a-stock-analyzer/
├── scripts/
│   ├── stock_analyzer.py      # 核心分析引擎(数据采集 + 多维分析 + AI 摘要 + 消息面)
│   ├── generate_report.py     # HTML 报告生成器(图表 + 响应式布局)
│   └── analyze_stock.sh       # 一键分析 Shell 脚本
├── references/
│   └── analysis_framework.md  # 分析方法论参考
├── SKILL.md                   # Claude Code Skill 配置
├── .gitignore
└── README.md

作为 Claude Code Skill 使用

将本项目安装为 Claude Code Skill 后,在对话中即可直接触发分析:

分析一下 300548
看看贵州茅台怎么样
帮我分析 002471 的基本面和技术面

Claude 会自动调用分析引擎,生成完整报告并打开浏览器展示。

API 积分要求

接口类型 所需积分
基础接口(daily, daily_basic, income 等) 2000
技术因子(stk_factor) 5000
筹码/九转(cyq_perf, stk_nineturn) 6000

免责声明

本工具仅供学习研究和投资参考,不构成任何投资建议。股市有风险,投资需谨慎。分析结果基于历史数据和量化模型,不保证未来收益。

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages