A股财报结构化拆解系统
A股上市公司财报结构化拆解系统。基于16节固定模板,对季报/年报进行一手数据提取、自算核验、跨季度可比的结构化分析。数据源优先级与racing-quant-ai一致(Tushare > akshare > baostock > 东方财富API)。触发词:财报拆解,财报分析,季报分析,年报分析,财报拆解模板,earnings report,财报解读。
chenxyzcyxpp
@chenxyzcyxpp
Install
$ openclaw skills install @chenxyzcyxpp/ashare-financial-report-analysisA股财报拆解系统
Overview
本skill是一套A股上市公司财报结构化拆解框架,核心原则:一手数据、自算核验、固定结构——格式固定下来,跨季度、跨公司才可对比。
与racing-quant-ai的区别:racing-quant-ai是选股系统(策略→持仓→分析),本skill是财报拆解工具(给定股票+报告期→拉取三表数据→填表核验→输出16节报告)。两者数据源优先级完全一致,但调用接口侧重不同——本skill重度使用财务三表接口(income/balancesheet/cashflow/fina_indicator)。
触发条件
当用户满足以下任意一种场景时启用:
- 用户要求"财报拆解"、"财报分析"、"季报分析"、"年报分析"
- 用户给出股票代码+报告期,要求结构化分析
- 用户提到"earnings report"、"财报解读"、"业绩拆解"
- 用户要求对某公司最新财报进行深度分析
- 用户要求对比多期财报数据变化
数据源(优先级:Tushare MCP > akshare > baostock > 东方财富API)
🔴 数据校验铁律:所有财务数据必须来自实际数据源调用结果。数据获取失败时必须如实标注"数据获取失败",严禁编造任何具体数值。违反此规则视为重大事故。
1. Tushare MCP(主数据源 - 优先使用)
接入方式:MCP Server tushareMcp,工具前缀 mcp_tushareMcp_*
财报分析核心接口映射表:
| 数据需求 | Tushare 接口 | 关键参数 | 说明 |
|---|---|---|---|
| 利润表 | mcp_tushareMcp_income | ts_code, period(YYYYMMDD), report_type | 营收/成本/费用/利润全链路 |
| 资产负债表 | mcp_tushareMcp_balancesheet | ts_code, period | 应收/存货/商誉/负债/权益 |
| 现金流量表 | mcp_tushareMcp_cashflow | ts_code, period | 经营/投资/筹资现金流 |
| 财务指标 | mcp_tushareMcp_fina_indicator | ts_code, period | ROE/毛利率/净利率/周转率等算好的指标 |
| 每日指标 | mcp_tushareMcp_daily_basic | ts_code, trade_date | PE/PB/市值/换手率 |
| 日线行情 | mcp_tushareMcp_daily | ts_code, trade_date/start_date/end_date | OHLCV |
| 主营业务构成 | mcp_tushareMcp_fina_mainbz | ts_code, type(P/D/I), period | 按产品/地区/行业拆分营收 |
| 业绩预告 | mcp_tushareMcp_forecast | ts_code, period/ann_date | 预告类型/区间/原因 |
| 业绩快报 | mcp_tushareMcp_express | ts_code, period | 快报数据 |
| 分红送股 | mcp_tushareMcp_dividend | ts_code | 历年分红记录 |
| 前十大股东 | mcp_tushareMcp_top10_holders | ts_code, period | 持股数/比例/变动 |
| 前十大流通股东 | mcp_tushareMcp_top10_floatholders | ts_code, period | 流通股持仓 |
| 股东人数 | mcp_tushareMcp_stk_holdernumber | ts_code | 股东户数变化 |
| 股权质押统计 | mcp_tushareMcp_pledge_stat | ts_code, end_date | 质押比例/次数 |
| 限售股解禁 | mcp_tushareMcp_share_float | ts_code, start_date/end_date | 解禁日期/数量/比例 |
| 股票回购 | mcp_tushareMcp_repurchase | ts_code/ann_date | 回购进程/金额/价格 |
| 股票基本信息 | mcp_tushareMcp_stock_basic | ts_code | 名称/行业/上市日期 |
| 机构研报 | mcp_tushareMcp_report_rc | ts_code, start_date, end_date | 研报标题/机构/评级/目标价/盈利预测 |
| 复权因子 | mcp_tushareMcp_adj_factor | ts_code, trade_date | 前后复权计算 |
| 财报披露日期 | mcp_tushareMcp_disclosure_date | ts_code, end_date | 预计/实际披露日 |
| 股份变动 | mcp_tushareMcp_stk_premarket | ts_code, trade_date | 总股本/流通股本 |
| 限售股明细 | mcp_tushareMcp_share_float | ts_code | 解禁计划 |
| 融资融券明细 | mcp_tushareMcp_margin_detail | ts_code, trade_date | 融资融券余额 |
period参数格式:报告期最后一天日期,如 20251231(年报)、20250630(半年报)、20250930(三季报)、20250331(一季报)
report_type参数:
1:合并报表2:单季合并(如Q2单季数据=半年报-Q1)3:单季母公司4:母公司年报5:合并半年报6:母公司半年报
2. akshare(第一备用)
当 Tushare MCP 不可用时切换。覆盖财务摘要、行情、资金流向等。
- 关键接口:
stock_financial_abstract_ths(symbol, indicator="按年度")(注意用tail()取最新,勿用head()) - 稳定接口:
stock_individual_fund_flow()(资金流向)、stock_news_em()(新闻)
3. baostock(第二备用)
query_profit_data()— 盈利能力数据query_growth_data()— 成长能力数据query_balance_data()— 偿债能力数据query_history_k_data_plus()— K线行情- ⚠️ 部分股票(如300769)query_profit_data可能返回空,需东方财富datacenter交叉验证
4. 东方财富 datacenter API(兜底+财务验证)
# 财务数据验证API
url = 'https://datacenter-web.eastmoney.com/api/data/v1/get?sortColumns=REPORTDATE&sortTypes=-1&pageSize=10&pageNumber=1&reportName=RPT_LICO_FN_CPD&columns=ALL&filter=(SECUCODE%3D%22300769.SZ%22)'
# 返回:归母净利润、营收、EPS等关键字段,用于交叉验证Tushare数据
5. cn-web-search / wechat-article-search(辅助信息源)
- 搜索最新财报新闻、管理层表态、机构研报解读
- 优先返回微信公众号来源内容,自动备注文章标题
报告类型适配
| 报告类型 | 数据完整度 | 模板适用 | 特殊处理 |
|---|---|---|---|
| 年报 | 全套报表+完整附注 | 16节全量 | 全部可用,商誉减值必查 |
| 半年报 | 全套报表,附注可能精简 | 16节全量 | 部分科目标N/A |
| 三季报 | 简化报表 | 16节框架,部分节标注"简化报表" | 现金流表通常无,第4/5/7节可能数据有限 |
| 一季报 | 简化报表 | 16节框架,部分节标注"简化报表" | 同三季报;关注预收/合同负债领先信号 |
简化报表处理规则:
- 一季报/三季报通常无现金流量表(部分公司自愿披露),第4节标"简化报表,暂缺"
- 一季报/三季报的资产负债表为期末数(无上年同期对比列),需手动拉取上年年报数据做对比
- 附注大幅简化,主营业务构成可能不可用,标注N/A
核心工作流
标准工作流(给定股票+报告期)
步骤1:确认基本信息
→ stock_basic 获取公司名称、行业、上市日期
→ disclosure_date 确认报告期对应财报的披露日期
→ 判断报告类型(年报/半年报/三季报/一季报),确定数据完整度
步骤2:拉取财务三表(Tushare优先)
→ income:利润表,获取report_type=1(合并)和report_type=2(单季)
→ balancesheet:资产负债表,获取期末+期初两期
→ cashflow:现金流量表(年报/半年报才有,一季报/三季报标N/A)
→ fina_indicator:财务指标,获取ROE/毛利率/净利率等
→ fina_mainbz:主营业务构成(按产品P/地区D/行业I)
步骤3:拉取股东与筹码数据
→ top10_holders / top10_floatholders:前十大股东(本期+上期对比)
→ stk_holdernumber:股东人数变化
→ pledge_stat:大股东质押情况
→ share_float:未来6个月限售解禁计划
步骤4:拉取回报与融资数据
→ dividend:历年分红记录
→ repurchase:回购进程
→ margin_detail:融资融券余额变化
步骤5:拉取预告/快报对照
→ forecast:业绩预告(如本季有预披露)
→ express:业绩快报(如已发布)
→ 对照实际值 vs 预告区间,记录偏差
步骤6:拉取估值与行情数据
→ daily_basic:最新PE/PB/市值/换手率
→ daily:近20日收盘价趋势
→ adj_factor:复权因子(如需计算复权收益)
步骤7:搜索补充信息
→ cn-web-search:最新财报新闻、管理层表态
→ wechat-article-search:公众号深度研报
→ 记录引用来源
步骤8:自算核验(8条纪律逐条过)
→ FCF自算
→ 股数反推自洽
→ 扣非偏差审查
→ 现金含金量
→ 应收-营收增速对比
→ 研发资本化突变
→ 非主业项占比
→ 业绩预告vs实际偏差
步骤8.5:用 execute_code 批量计算(推荐)
→ 将所有API返回的原始数值写入Python字典
→ 统一计算YoY、毛利率、FCF、现金含金量、Q4单季等
→ 自动输出格式化结果,避免手工计算误差
→ EPS反推核验在此步自动完成
→ 实测:此步可捕获Tushare字段错误(如free_cashflow偏差)
步骤9:按16节模板成文
→ 严格按模板顺序和标题
→ 表格格式统一
→ 标注所有数据来源
→ 口径警示标记到位
→ 当天写完(财报热度48小时)
16节模板(顺序和标题固定)
# {公司名称}({股票代码}){报告期}财报拆解
> 报告类型:{年报/半年报/三季报/一季报}
> 对应日历区间:{YYYY-MM-DD 至 YYYY-MM-DD}
> 数据截止日:{YYYY-MM-DD} | 成文日:{YYYY-MM-DD}
> 数据来源:{Tushare MCP / akshare / baostock / 东方财富API}
## 一句话总结
(最重要的正反两面各半句。正面先说,反面"但"字转折。不超过40字。)
## 一、营收结构与合同负债
**{报告期} 营业总收入 X 亿元(+Y% YoY)· 一句话定调**
| 分部 | 上年同期 | 本期 | YoY | 占比 |
|------|---------|------|-----|------|
| **总计** | | | | |
| **母分部A** | | | | |
| └ 子项A1 | | | | |
| └ 子项A2 | | | | |
三条硬规则:
1. 必须分层分类——母分部加粗,子项用 └ 缩进,严禁拍平成一层
2. 两期绝对值都给(上年同期 + 本期),不许只给本期数+增速
3. 总计行加粗;母分部数 = 子项之和,自算核验
A股额外项:
- 营业总收入 vs 营业收入 差额 = 其他业务收入,大额需说明来源
- 合同负债(新准则后替代预收账款)环比变化 → 订单/发货领先信号
- 若公司披露产量/销量/产能利用率等运营数据,列在此节
**关键认知**:3-4条(结构变化 / 里程碑 / 占比迁移 / 合同负债信号)
## 二、盈利与扣非分析
四层利润逐级拆解(全部自算核验):
| 指标 | 本期 | 上年同期 | YoY |
|------|------|---------|-----|
| 毛利率(自算 = (营收-营业成本)/营收) | | | |
| 营业利润率 | | | |
| 营业利润中非主业项占比(投资收益+公允价值变动+其他收益+资产处置) | | | |
| 利润总额 / 净利润 / 归母净利润 | | | |
| 扣非归母净利润 | | | |
| 扣非净利率 | | | |
| 基本/稀释 EPS | | | |
A股专项(缺一不可):
1. 非经常性损益拆解:政府补助/投资浮盈/资产处置/债务重组/营业外收支,
逐项列金额,标明哪些是可持续的、哪些是一次性的
2. 研发费用:资本化比例 vs 上年,费用化金额,资本化部分是否进入无形资产
3. 信用减值损失 + 资产减值损失:方向是否反转?与应收账款/存货变化是否自洽?
4. 业绩预告/快报对照:如本季有预披露,实际值 vs 预告区间,偏差原因
口径警示规则:
- 扣非净利润 / 归母净利润 < 0.7 → 标"⚠️非经常性损益占比过高,扣非口径优先"
- 非主业项占营业利润 > 30% → 标"⚠️营业利润含大量非主业贡献,主业盈利能力需重估"
- 被一次性项严重污染的EPS → 直接标"禁用,以扣非EPS为准"
## 三、资产负债表关键科目
> 一季报/三季报为简化报表,此节可能数据不全,标注N/A,不编造。
| 科目 | 期初 | 期末 | 变化 | 关注点 |
|------|------|------|------|--------|
| 应收账款(含票据) | | | | 增速 vs 营收增速 |
| 存货 | | | | 结构(原材料/在产品/产成品)|
| 合同资产 | | | | 与应收的划分是否合理 |
| 商誉 | | | | 减值测试假设是否变化 |
| 长期股权投资 | | | | 联营/合营企业贡献 |
| 有息负债(短期借款+一年内到期+长期借款+应付债券) | | | | 结构与成本 |
| 合同负债 | | | | 环比变化=未来收入领先信号 |
四条质量检查:
1. 应收账款增速 > 营收增速 连续两期 → 收入质量预警,需看账龄结构
2. 存货增速 > 营收增速 连续两期 → 滞销/减值风险
3. 商誉/净资产 > 30% → 年报必须审查减值测试关键假设(折现率、永续增长率)
4. 有息负债/总资产环比跳升 → 查现金流表的"取得借款收到的现金"验证
## 四、现金流与资本配置
> 一季报/三季报通常无现金流量表,此节标"简化报表,暂缺"。
| 指标 | 本期 | 上年同期 |
|------|------|---------|
| 经营活动现金流净额 | | |
| 购建固定资产/无形资产/其他长期资产支付的现金(=资本开支) | | |
| FCF(自算 = 经营现金流 − 资本开支) | | |
| 经营现金流净额 / 归母净利润(盈利现金含金量) | | |
核验规则:
- 经营现金流净额 / 归母净利润 < 0.5 连续两季 → ⚠️盈利质量预警
- FCF连续两季为负 + 有息负债上升 → ⚠️资本配置方向恶化
- 资本开支指引:管理层是否给出全年capex guidance?与上年的变化?
## 五、股东回报与融资动作
| 类别 | 本期发生 | 上年同期 | 累计/未完成 |
|------|---------|---------|------------|
| 回购(金额+股数+价格区间) | | | |
| 分红(每股股利+总额+派息率) | | | |
| 定增/配股(价格+对象+锁定期) | | | |
| 可转债(规模+转股价+进度) | | | |
| 股本变化(送转/回购注销/定增新增) | | | |
A股特有提醒:
- 回购用于员工持股/股权激励 ≠ 真回购注销,不算股东回报,分开列
- 定增价格 vs 当前市价折价幅度 → 利益输送嫌疑审查
- 可转债转股价下修 → 稀释节奏变化信号
- "发行股份购买资产"形成的股本增量 → 业绩承诺兑现率跟踪
## 六、股东结构与筹码变化
> 此节数据来源:定期报告"股份变动及股东情况"章节 + 中登公司数据
| 指标 | 期初 | 期末 | 变化 |
|------|------|------|------|
| 前十大流通股东持仓占比 | | | |
| 股东总人数 | | | |
| 户均持股数 | | | |
| 北向资金持股比例(如为沪深港通标的) | | | |
| 大股东质押比例 | | | |
| 限售股解禁计划(未来6个月) | | | |
信号判读:
- 股东人数大幅减少 + 前十大占比上升 → 筹码集中,关注后续走势
- 大股东高比例质押(>70%)+ 股价接近平仓线 → ⚠️流动性风险
- 限售解禁量 > 流通盘20% → 标注解禁日期,纳入下次关键时点
## 七、关键业务里程碑
- 本季度最重要的3-5个业务进展(产品发布/产能投产/客户突破/资质获取)
- 每条附:是否在此前业绩说明会/投资者交流中被提及(兑现 or 跳票)
## 八、战略动作与管理层表态
- 管理层在业绩说明会/年报"经营情况讨论与分析"中的原话1-2句(标注出处)
- 关键战略动作:并购/剥离/合资/组织架构调整/业务转型
- 管理层过往指引兑现率:回看上季度/上年同期指引,实际 vs 预期,偏差原因
## 九、估值快照
| 指标 | 数值 | 数据来源 |
|------|------|---------|
| 现价(成文当日收盘) | | 当场取最新 |
| 总市值 / 流通市值 | | |
| PE-TTM(以扣非归母净利润计算) | | 自算:总市值 / 过去4季扣非归母净利润之和 |
| PE-TTM(以归母净利润计算) | | 若与扣非PE偏差>30%,标"⚠️一次性项污染,以扣非PE为准" |
| PB(以归母净资产计算) | | |
| PS-TTM | | |
| 股息率(TTM) | | |
- 与历史估值分位数对比(3年/5年)
- 与自己设定的买入区间/卖出区间对照 → 是否需要重校
## 十、同业对比
| 指标 | {公司} | {可比公司A} | {可比公司B} | 口径日期 |
|------|--------|-----------|-----------|---------|
| 营收增速 | | | | |
| 扣非净利率 | | | | |
| 毛利率 | | | | |
| PE-TTM(扣非) | | | | |
| 研发费用率 | | | | |
- 拉不到最新数据就标注口径日期,不硬凑
- 不同财年的公司需调整到可比期间
## 十一、风险扫描
逐项过一遍,命中即列,无则标"本季未发现":
- 商誉减值:商誉/净资产比,减值测试关键假设是否变化(年报必查)
- 大股东质押:质押比例 >50% 需标注平仓线估算
- 限售解禁:未来6个月解禁量 vs 流通盘
- 关联交易:关联采购/销售占比是否异常
- 应收质量:账龄结构恶化、大额单项计提
- 存货减值:库龄结构、跌价准备计提比例变化
- 业绩承诺到期:并购标的承诺期满年份(承诺期最后一年常有大额计提)
- 会计政策变更:收入确认/折旧/减值方法变化
## 十二、核心判断
3-6点,每点结构:**判断 → 依据(本季数据)→ 对照投资框架中的买入/卖出/警戒条件**
示例格式:
> 判断:主业盈利能力企稳回升
> 依据:扣非净利率从-5%回到+3%,非经常性损益占比从45%降到15%
> 框架对照:触及"扣非转正"买入条件,但"连续两季扣非为正"尚未满足
## 十三、对持仓的启示
- 原有论点 vs 本季证据 → 强化/动摇/推翻
- 操作含义:加仓/减仓/观望/止损 → 具体触发条件
- 新增季度检查项:本季新发现的需持续跟踪的指标
## 十四、下次关键时点
- 下一份报告类型及法定披露截止日
- 管理层本季承诺的验证点(如"下半年量产"→ 何时验证)
- 限售解禁日期(如有)
- 业绩预告/快报预计发布窗口(如适用)
- 自身设定的季度检查项截止日
## 十五、资料链接
1. 官方财报PDF(巨潮资讯网/交易所公告原文)← 置顶
2. 业绩说明会回放/纪要链接
3. 关键自算公式备忘:
- FCF = 经营活动现金流净额 − 购建固定资产/无形资产/其他长期资产支付的现金
- 扣非PE-TTM = 总市值 / 过去4季扣非归母净利润之和
- 盈利现金含金量 = 经营活动现金流净额 / 归母净利润
- 研发资本化比例 = 研发支出资本化金额 / (资本化金额 + 费用化金额)
4. 数据验证源:Tushare(income/balancesheet/cashflow/daily_basic)、baostock、东方财富datacenter
8条核验纪律(逐条执行,不可跳过)
| # | 规则 | 操作方法 | 触发条件 |
|---|---|---|---|
| 1 | FCF自算 | 经营现金流 − 资本开支(购建固定资产/无形资产/其他长期资产支付的现金) | 每次必算 |
| 2 | 股数反推自洽 | 归母净利润 ÷ EPS ≈ 披露股本,偏差>2%找原因 | 每次必算 |
| 3 | 剔一次性项 | 非经常性损益占比大的季度,GAAP口径标"禁用" | 扣非/归母 < 0.7时 |
| 4 | actual与forecast分开 | 业绩预告区间 vs 实际值,永不混排 | 有预披露时 |
| 5 | 扣非偏差审查 | 扣非归母/归母 < 0.7 → 非经常性损益占比过高,扣非口径优先 | 每次必算 |
| 6 | 现金含金量预警 | 经营现金流/归母净利润 < 0.5 连续两季 → 盈利质量预警 | 每次必算 |
| 7 | 应收-营收增速对比 | 应收增速 > 营收增速 连续两期 → 收入质量预警,查账龄 | 每次必算 |
| 8 | 研发资本化突变 | 资本化比例环比突变>10个百分点 → 利润调节嫌疑,单列审查 | 有研发费用时 |
单位与命名规则
- 统一用「亿元(人民币)」,同一公司跨季度保持列结构一致
- A股绝大多数为日历年,无需特殊财年标注
- 命名:
{公司简称}{年份}Q{X}财报拆解.md,如德方纳米2025Q3财报拆解.md - 简化报表(一季报/三季报)在标题后加
(简),如德方纳米2025Q1财报拆解(简).md
Tushare接口调用关键参数速查
period(报告期)对照表
| 报告期 | period值 | 说明 |
|---|---|---|
| 年报 | YYYYMMDD(如20251231) | 每年12月31日 |
| 半年报 | YYYYMMDD(如20250630) | 每年6月30日 |
| 三季报 | YYYYMMDD(如20250930) | 每年9月30日 |
| 一季报 | YYYYMMDD(如20250331) | 每年3月31日 |
获取单季数据的方法
Tushare的income接口默认返回累计数据。获取单季数据有两种方式:
- report_type=2:直接获取单季合并报表(如Q2单季=4-6月数据)
- 手动相减:Q2单季 = 半年报(H1) − 一季报(Q1),注意各科目逐项相减
Q4特殊处理:Tushare不提供Q4单季的report_type=2数据(因为Q4=年报−三季报,而年报是report_type=1)。必须手动拉取年报(period=YYYY1231, report_type=1)和三季报(period=YYYY0930, report_type=1),逐项相减得到Q4单季数据。关键科目:total_revenue、oper_cost、operate_profit、n_income_attr_p、rd_exp。
获取上年同期数据
同一接口调用两次:
- 第一次:
period=20250930(本期) - 第二次:
period=20240930(上年同期) 对比两期数据计算YoY
利润表关键字段映射(income接口)
| Tushare字段 | 含义 | 模板用途 |
|---|---|---|
| total_revenue | 营业总收入 | 第一节 |
| revenue | 营业收入 | 第一节 |
| oper_cost | 营业成本 | 第二节毛利率自算 |
| sell_exp | 销售费用 | 第二节 |
| admin_exp | 管理费用 | 第二节 |
| fin_exp | 财务费用 | 第二节 |
| rd_exp | 研发费用 | 第二节研发专项 |
| operate_profit | 营业利润 | 第二节 |
| invest_income | 投资收益 | 第二节非主业项 |
| fv_value_chg_gain | 公允价值变动收益 | 第二节非主业项 |
| oth_income | 其他收益(含政府补助) | 第二节非主业项 |
| asset_disp_income | 资产处置收益 | 第二节非主业项 |
| total_profit | 利润总额 | 第二节 |
| n_income | 净利润 | 第二节 |
| n_income_attr_p | 归母净利润 | 第二节核心 |
| basic_eps | 基本EPS | 第二节 |
| diluted_eps | 稀释EPS | 第二节 |
| credit_impa_loss | 信用减值损失 | 第二节调节项审查 |
| assets_impair_loss | 资产减值损失 | 第二节调节项审查 |
资产负债表关键字段映射(balancesheet接口)
| Tushare字段 | 含义 | 模板用途 |
|---|---|---|
| accounts_receiv | 应收账款 | 第三节 |
| accounts_receiv_bill | 应收票据 | 第三节 |
| inventories | 存货 | 第三节 |
| contract_assets | 合同资产 | 第三节 |
| contract_liab | 合同负债 | 第一/三节 |
| goodwill | 商誉 | 第三节/第十一节 |
| lt_eqt_invest | 长期股权投资 | 第三节 |
| st_borr | 短期借款 | 第三节有息负债 |
| lt_borr | 长期借款 | 第三节有息负债 |
| bond_payable | 应付债券 | 第三节有息负债 |
| non_cur_liab_due_1y | 一年内到期非流动负债 | 第三节有息负债 |
| total_assets | 总资产 | 第三节 |
| total_hldr_eqy_exc_min_int | 归母净资产 | 第九节PB计算 |
| money_cap | 货币资金 | 第三节 |
| intan_assets | 无形资产 | 第三节(含资本化研发) |
| r_and_d | 研发支出(开发支出) | 第二节资本化比例 |
现金流量表关键字段映射(cashflow接口)
| Tushare字段 | 含义 | 模板用途 |
|---|---|---|
| n_cashflow_act | 经营活动现金流净额 | 第四节 |
| c_pay_acq_const_fiolta | 购建固定资产/无形资产/其他长期资产支付的现金 | 第四节资本开支 |
| free_cashflow | ⚠️ 禁止使用——Tushare已算字段,实测经常与自算值严重不符(如腾景科技2024年返回+1.32亿,自算为-0.20亿,方向相反)。必须用 n_cashflow_act − c_pay_acq_const_fiolta 自算 | 第四节 |
| c_recp_borrow | 取得借款收到的现金 | 第三节验证 |
| proc_issue_bonds | 发行债券收到的现金 | 第三节验证 |
| c_pay_dist_dpcp_int_exp | 分配股利/利润/偿付利息支付的现金 | 第五节 |
| c_rep_cap_incr_repur | 回购/增发支付的现金 | 第五节 |
| net_profit | 净利润(间接法起点) | 第四节现金含金量 |
三个最常见的坑(A股实测版)
-
只看归母不看扣非——A股公司靠政府补助/投资收益/资产处置粉饰业绩是常态,归母净利润暴涨50%、扣非亏损的例子比比皆是。扣非是第一口径,归母是参考口径。
-
漏看资产负债表——营收利润双增但应收暴涨30%、存货翻倍,这种"纸面利润"在A股极为常见。不看资产负债表等于只验证了报表的三分之一。
-
商誉减值年底突袭——很多公司前三季报利润漂亮,年报突然大额商誉减值一把亏完。商誉/净资产>30%的公司,年报必须审减值测试假设(折现率、永续增长率、关键参数 vs 上年变化)。
Tushare API实测Pitfalls(2026-08首次实战发现)
以下问题在腾景科技(688195.SH)财报拆解中实际遇到,后续分析均需注意:
1. free_cashflow字段不可信(严重)
- 现象:cashflow接口返回的
free_cashflow字段与自算值方向相反(腾景2024年返回+1.32亿,自算-0.20亿) - 处理:禁止使用该字段,必须用
n_cashflow_act - c_pay_acq_const_fiolta自算 - 已修复:字段映射表已标注"禁止使用"
2. news接口无权限(40203)
- 现象:
mcp_tushareMcp_news返回40203错误,当前Tushare积分等级无此接口权限 - 处理:改用
cn-web-search技能搜索财经新闻,或用wechat-article-search搜索公众号文章
3. anns_d接口无权限(40203)
- 现象:
mcp_tushareMcp_anns_d(公告数据)返回40203错误 - 处理:改用巨潮资讯网(http://www.cninfo.com.cn)手动检索公告原文,或上交所/深交所官网
4. daily_basic当日可能返回空
- 现象:
trade_date=20260812返回空数组(当日收盘后数据尚未更新到API) - 处理:回退到前一交易日重试(
trade_date=20260811),直到返回非空结果
5. forecast/pledge_stat/share_float返回空数组
- 现象:部分公司无业绩预告、无股权质押、无限售解禁,API返回空数组
- 处理:空数组=正常无数据,不是API错误。在报告中标注"无"即可,不需重试
6. 模板数据缺口(非API错误)
以下模板节在纯API数据下通常无法完整填充,需手动补充:
- 第七节(业务里程碑):API不提供业务进展描述,需查年报"经营情况讨论与分析"章节
- 第八节(战略动作与管理层表态):需查业绩说明会纪要/年报原文
- 第十节(同业对比):需额外拉取可比公司同期数据(逐个公司调用income/fina_indicator)
- 第二节研发资本化比例:年报附注中披露,API字段
r_and_d(开发支出)可能为空,需查附注
数据校验铁律(与racing-quant-ai一致)
🔴 以下规则继承自racing-quant-ai skill,同为最高优先级
- 禁止编造数据:所有财务数据必须来自实际API调用结果,失败时标注"数据获取失败"
- 禁止凭记忆引用财务数据:净利润/营收/亏损/毛利率等具体数字,严禁从模型记忆中引用
- 财务数据必须API验证:必须通过Tushare/baostock/东方财富datacenter之一验证后才能写入
- 无法验证则不写:标注"⚠️ 财务数据未验证",严禁用任何具体数字填充
- 禁止时间错配:严禁将年度数据包装为半年或季度数据,引用时必须标注对应报告期
- 报告标注数据源:每份报告必须标注本次数据来源(Tushare MCP / akshare / baostock / 东方财富API)
- 交叉验证:从Tushare获取数据后,关键字段(归母净利润、营收)应与东方财富datacenter交叉验证
输出规范
- 严格按16节模板顺序,标题和编号固定,不增不减
- 表格统一格式:列对齐,总计行加粗,子项缩进
- 口径警示标记到位:⚠️ 标记不可遗漏
- 数据来源透明:每节末尾或表格末尾标注数据来源接口
- 成文时效:财报热度48小时,当天写完
- 文件命名:
{公司简称}{年份}Q{X}财报拆解.md,简化报表加(简) - 免责声明:报告末尾添加"本报告仅供学习交流,不构成投资建议"
使用示例
示例1:拆解某公司最新年报
用户:"帮我拆解德方纳米2025年年报"
→ stock_basic(300769.SZ) 获取基本信息
→ disclosure_date(300769.SZ, end_date=20251231) 确认披露日期
→ income(300769.SZ, period=20251231, report_type=1) 利润表
→ income(300769.SZ, period=20241231, report_type=1) 上年同期利润表
→ balancesheet(300769.SZ, period=20251231) 资产负债表
→ cashflow(300769.SZ, period=20251231) 现金流量表
→ fina_indicator(300769.SZ, period=20251231) 财务指标
→ fina_mainbz(300769.SZ, type=P, period=20251231) 主营构成
→ forecast(300769.SZ, period=20251231) 业绩预告对照
→ daily_basic(300769.SZ, trade_date=最新) 估值数据
→ top10_floatholders(300769.SZ, period=20251231) 股东结构
→ stk_holdernumber(300769.SZ) 股东人数
→ pledge_stat(300769.SZ) 质押情况
→ share_float(300769.SZ, start_date=今日) 解禁计划
→ repurchase(300769.SZ) 回购情况
→ cn-web-search 搜索最新财报新闻
→ wechat-article-search 搜索深度研报
→ 8条核验纪律逐条执行
→ 按16节模板输出
示例2:拆解某公司三季报(简化报表)
用户:"分析中际旭创2025年三季报"
→ 判断报告类型=三季报,标注"简化报表"
→ income(300308.SZ, period=20250930, report_type=1) 利润表
→ income(300308.SZ, period=20250930, report_type=2) 单季利润(Q3单季)
→ balancesheet(300308.SZ, period=20250930) 资产负债表(仅期末数)
→ cashflow → 标"简化报表,暂缺"
→ fina_mainbz → 标N/A(三季报通常不披露附注明细)
→ 其余流程同年报,按16节模板输出,缺失节标注原因
依赖
- Tushare MCP(主数据源):MCP Server
tushareMcp已在 config.yaml 中配置。若 MCP 连接失败则自动降级 baostock技能:第二备用数据源cn-web-search技能:搜索最新公开信息wechat-article-search技能:搜索公众号深度研报racing-quant-ai技能:数据源优先级和降级链路参考(本skill继承其数据源架构)
版本信息
- 作者:Warwick
- 版本:1.0.0
- 创建日期:2026-08-12
- 数据源架构继承自 racing-quant-ai v1.11.0
Top skills in this category
Stock Analysis
@udiedrichsenAnalyze stocks and cryptocurrencies using Yahoo Finance data. Supports portfolio management, watchlists with alerts, dividend analysis, 8-dimension stock scoring, viral trend detection (Hot Scanner), and rumor/early signal detection. Use for stock analysis, portfolio tracking, earnings reactions, crypto monitoring, trending stocks, or finding rumors before they hit mainstream.
Stock Market Pro
@kys42Yahoo Finance (yfinance) powered stock analysis skill: quotes, fundamentals, ASCII trends, high-resolution charts (RSI/MACD/BB/VWAP/ATR), plus optional web a...
A股量化 AkShare
@mbpzA股量化数据分析工具,基于AkShare库获取A股行情、财务数据、板块信息等。用于回答关于A股股票查询、行情数据、财务分析、选股等问题。
Stock Watcher
@robin797860Manage and monitor a personal stock watchlist with support for adding, removing, listing stocks, and summarizing their recent performance using data from 10jqka.com.cn. Use when the user wants to track specific stocks, get performance summaries, or manage their watchlist.
Intelligent Stocks Screener
@financial-ai-analyst基于东方财富数据库,支持通过自然语言输入筛选A港美股、基金、债券等多种资产,支持多元指标筛选,含技术面、消息面、基本面及市场情绪等,可用于全球资产速筛、跨市场监控、投资组合构建、策略回测等场景。返回结果包含数据说明及 csv 文件。Natural language screener for investment...