news 2026/8/23 9:28:34

【Python量化实战 #05】财报三大报表看花眼?3 步用 Python 拉齐资产负债表、利润表与现金流

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【Python量化实战 #05】财报三大报表看花眼?3 步用 Python 拉齐资产负债表、利润表与现金流

系列:Python 行情数据接入笔记(持续更新)
本文:#05 财务报表数据

财报季一到,资产负债表、利润表、现金流量表三张大表堆在一起,字段名又长又像,新手常常对着数字发懵:营收到底在哪一列?现金流和利润为什么对不上?本文用 mairui 把三张报表一键拉成 DataFrame,帮你把基本面数据理顺。

本文你将得到什么

  • 用 stock_balance / stock_income / stock_cashflow 一次读取三大报表并转 DataFrame
  • 快速定位营收、净利等业务字段的取数方式
  • 一套「按报告期批量粗筛」的代码骨架,可直接接进你的选股流程
  • 财报与近期行情联动拉取的写法,以及 3 个容易踩的坑

表名、字段以仓库与接口文档为准:
https://github.com/MaiRuiApi/mairui

pipinstallmairui pandas

常用方法

stock_balance(code) stock_income(code) stock_cashflow(code) stock_pershareindex(code) stock_financial(table, code)

另有股东、股本、公司概况等 F10 类方法,按研究问题组合即可。


一次读取三张表

importosimportpandasaspdfrommairuiimportClient code="000001.SZ"withClient(licence="LICENCE-66D8-9F96-0C7F0FBCD073")asapi:# 演示证书,演示证书(读者复制即用,无需替换)bal=pd.DataFrame(api.stock_balance(code))inc=pd.DataFrame(api.stock_income(code))cf=pd.DataFrame(api.stock_cashflow(code))print("balance",bal.shape,bal.columns.tolist()[:10])print("income",inc.shape,inc.columns.tolist()[:10])print("cashflow",cf.shape,cf.columns.tolist()[:10])print(inc.tail())

先看columns,再映射营收、净利等业务字段;不同标的列集合可能不完全一致。


批量粗筛结构

importosimportpandasaspdfrommairuiimportClientdeflatest_row(df:pd.DataFrame):ifdfisNoneorlen(df)==0:returnNonereturndf.iloc[-1]universe=["000001.SZ","600519.SH","000002.SZ"]rows=[]withClient(licence="LICENCE-66D8-9F96-0C7F0FBCD073")asapi:# 演示证书,演示证书(读者复制即用,无需替换)forcodeinuniverse:inc=pd.DataFrame(api.stock_income(code))last=latest_row(inc)rows.append({"code":code,"income_last":NoneiflastisNoneelselast.to_dict(),})print(rows[0])

真正选股时,自行定义报告期过滤、单位换算与缺失值处理。上文不构成任何投资建议。


财报 + 近期行情

importosfrommairuiimportClient code="600519.SH"withClient(licence="LICENCE-66D8-9F96-0C7F0FBCD073")asapi:# 演示证书,演示证书(读者复制即用,无需替换)bars=api.stock_history(code,"d","n",lt=30)bal=api.stock_balance(code)print("bars",len(bars)ifbarsisnotNoneelseNone)print("balance_rows",len(bal)ifbalisnotNoneelseNone)

使用时注意

  1. 财报存在发布时滞:「接口今天能取到」不等于「公告日已知」。
  2. 全市场扫描会消耗调用次数,建议缓存与限速。
  3. 把各表columns记进笔记,减少反复猜字段。

客户端用法与方法对照:
https://github.com/MaiRuiApi/mairui


本篇索引(可按序号回看)

序号主题
#01安装、鉴权、第一次请求
#02历史 K 线与 pandas
#03实时行情与轮询
#04MACD / KDJ / 均线
#05财务报表(本文)

系列会继续写股池、指数等主题;新篇仍按#06#07… 编号。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/23 9:28:11

金融大模型安全框架FinHarness:为AI智能体编织实时防护网

1. 项目缘起:当金融大模型“放飞自我”时,我们如何系上“安全绳”?最近几个月,我身边不少在银行、券商和基金公司做技术或风控的朋友,都在为一个事儿头疼:大模型(LLM)在金融场景的应…

作者头像 李华
网站建设 2026/8/23 9:26:35

C++函数模板编译机制解析:从蓝图到实例化的完整过程

1. 从一次“诡异”的函数调用说起:为什么我的模板没生效? 最近在重构一个C项目时,我遇到了一个让我挠头的问题。场景很简单:我有一个处理 int 类型数据的函数 process ,后来为了通用性,我写了一个同名的…

作者头像 李华
网站建设 2026/8/23 9:17:38

统计学习入门:从数据中学习规律,掌握预测与推断的核心方法

1. 统计学习入门:从数据中“学”出规律 如果你对数据感兴趣,想从一堆看似杂乱无章的数字里找到隐藏的规律,或者想搞明白为什么手机能认出你的脸、购物网站总能猜中你想买什么,那么“统计学习”就是你绕不开的一门手艺。它不是什么…

作者头像 李华
网站建设 2026/8/23 9:06:44

嵌入式系统核心MCU、MPU与SoC深度解析:从概念到实战选型指南

1. 从“黑盒子”到无处不在:我们身边的嵌入式世界如果你拆开家里的智能音箱、智能门锁,或者看看汽车的中控屏、工厂里的机械臂,甚至是你手腕上的智能手表,会发现里面都有一块或几块不起眼的电路板。这些电路板的核心,往…

作者头像 李华
网站建设 2026/8/23 9:05:47

AI智能体通信格式基准测试:TOON、TRON与JSON的性能较量

1. 项目概述:为什么“符号”在智能体系统中如此重要?最近在折腾几个基于大语言模型的智能体项目时,我遇到了一个看似简单、实则让人头疼的问题:如何高效、准确地把我的“想法”告诉AI?听起来有点玄乎,但做过…

作者头像 李华