news 2026/9/12 1:43:51

Vibe-Trading 美股现金流量表获取指南:基于 Tushare us_cashflow 接口的财务数据实战

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Vibe-Trading 美股现金流量表获取指南:基于 Tushare us_cashflow 接口的财务数据实战

Vibe-Trading 美股现金流量表获取指南:基于 Tushare us_cashflow 接口的财务数据实战

【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading

本指南以 Vibe-Trading 仓库内置的 Tushare 技能文档为骨架,系统讲解如何通过us_cashflow接口获取美股上市公司的现金流量表数据(含主要美股与中概股),覆盖接口权限、输入/输出参数、Python 调用示例与数据解读,并深入仓库源码印证 token 配置与调用链路,帮助你在量化研究与 Agent 数据管道中直接落地使用。

一、接口概述与适用场景

us_cashflow是 Tushare 数据服务中用于获取美股上市公司现金流量表的接口,在 Vibe-Trading 仓库中的对应文档位于 美股现金流量表.md,属于技能目录agent/src/skills/tushare/references/美股数据/下美股财务数据三件套之一(另外两个为美股利润表与美股资产负债表)。

该接口的主要特征如下:

  • 覆盖范围:目前只覆盖主要美股和中概股,例如英伟达(NVDA)等头部标的。
  • 数据内容:返回经营活动、投资活动、筹资活动三大现金流板块下的明细科目,以及期初期末现金余额、净利润、折旧摊销、减值拨备等关键行项目。
  • 获取方式:按单只股票获取其历史数据,单次请求最大返回10000 行,可循环提取以覆盖全部历史。
  • 权限要求:需单独开权限或账户积分达到15000,具体权限说明以 Tushare 官方权限列表为准。

从仓库源码结构看,Tushare 在 Vibe-Trading 中被定义为category:>pip install tushare -i https://pypi.tuna.tsinghua.edu.cn/simple

2.2 配置 TUSHARE_TOKEN 环境变量

注册 Tushare 账号获取 token 后,将其配置为环境变量:

export TUSHARE_TOKEN=your_token

在 Vibe-Trading 仓库中,TUSHARE_TOKEN是受官方环境模式(env schema)约束的标准配置项,定义于 env_schema.py:

tushare_token: str = Field(alias="TUSHARE_TOKEN", default="")

同时该 token 也属于运行前检查项(见 preflight.py),仓库会校验 token 是否为空或仍为占位符your-tushare-token。仓库自带的示例脚本 stock_data_example.py 展示了标准的初始化方式:

import tushare as ts from src.config.accessor import get_env_config # 读取环境变量中的 token, 或者读取本地记录的 token token = get_env_config().data.tushare_token or ts.get_token() # 初始化pro接口 pro = ts.pro_api(token)

2.3 权限开通

us_cashflow属于需要一定积分的接口:需单独开通权限或账户拥有15000 积分。积分不足时会收到权限错误,此时应优先检查账户积分与接口权限状态,而不是排查代码。

三、输入参数详解

us_cashflow的输入参数定义如下(与仓库文档 美股现金流量表.md 完全一致):

名称类型必选描述
ts_codestrY股票代码(如 NVDA)
periodstrN报告期,格式 YYYYMMDD,即每个季度最后一天的日期(如 20241231)
ind_namestrN指标名(如:新增借款)
report_typestrN报告期类型:Q1 一季报、Q2 半年报、Q3 三季报、Q4 年报
start_datestrN报告期开始时间,格式 YYYYMMDD
end_datestrN报告期结束时间,格式 YYYYMMDD

使用要点:

  • ts_code是唯一必选参数,其他参数均用于缩小查询范围。
  • period使用季度最后一天作为报告期标识,例如获取 2024 年度数据传20241231
  • ind_name支持指定财务科目名称做定向提取,例如新增借款经营活动产生的现金流量净额等,返回结果只包含该科目的历年数据,非常适合做单科目时间序列分析。
  • report_type用于区分报告口径(单季/累计),可与start_dateend_date组合实现时间窗过滤。

四、输出参数与数据字段说明

每次调用返回一张 DataFrame,输出字段如下:

名称类型默认显示描述
ts_codestrY股票代码
end_datestrY报告期
ind_typestrY报告期类型(Q1 一季报、Q2 半年报、Q3 三季报、Q4 年报)
namestrY股票名称
ind_namestrY财务科目名称
ind_valuefloatY财务科目值
report_typestrY报告类型

值得注意的字段语义:

  • 长表结构:与 A 股cashflow接口的宽表(每列一个科目)不同,us_cashflow返回的是长表,即每一行是一条"科目 × 报告期"记录,ind_name标识科目、ind_value给出数值。这种结构对按科目过滤、跨报告期拼接(pivot)非常友好。
  • end_date为报告期截止日(也是财报披露对应季度末日期),ind_type说明报告期类型,report_type说明是单季报还是累计口径。
  • ind_value为 float 类型,样例中以科学计数法展示(如1.523400e+10),实际为美元金额(单位通常为美元)。

五、接口调用示例(Python)

以下为仓库文档提供的完整用法(见 美股现金流量表.md):

pro = ts.pro_api() # 获取美股英伟达 NVDA 股票的 2024 年度现金流量表数据 df = pro.us_cashflow(ts_code='NVDA', period='20241231') # 获取美股英伟达 NVDA 股票现金流量表历年新增借款数据 df = pro.us_cashflow(ts_code='NVDA', ind_name='新增借款')

两个调用分别演示了两种典型场景:

  1. 按报告期取全量科目ts_code + period返回该期现金流量表的全部科目,适合重建完整报表。
  2. 按科目取历史序列ts_code + ind_name返回该科目全部历史报告期的取值,适合观察某一资金项目的长期趋势。

5.1 进阶:循环提取全部历史数据

由于接口单次请求最大返回 10000 行,且按单只股票维度取数,当需要覆盖多年份、多科目时,建议按报告期循环请求,并合并结果:

import tushare as ts import pandas as pd pro = ts.pro_api() frames = [] for period in ['20241231', '20240930', '20240630', '20240331']: df = pro.us_cashflow(ts_code='NVDA', period=period) frames.append(df) full = pd.concat(frames, ignore_index=True) print(full.shape)

这种"按单只股票 + 报告期循环、分块拼接"的模式与文档中"可循环提取"的提示一致,也是规避单次请求行数上限的标准做法。

六、数据样例解读

以仓库文档给出的 NVDA(英伟达)2025Q1(报告期 20250427)数据为例:

ts_code end_date ind_type name ind_name ind_value report_type 0 NVDA 20250427 Q1 英伟达 现金及现金等价物期末余额 1.523400e+10 单季报 1 NVDA 20250427 Q1 英伟达 现金及现金等价物期初余额 8.589000e+09 单季报 2 NVDA 20250427 Q1 英伟达 现金及现金等价物增加(减少)额 6.645000e+09 单季报 3 NVDA 20250427 Q1 英伟达 筹资活动产生的现金流量净额 -1.555300e+10 单季报 4 NVDA 20250427 Q1 英伟达 筹资业务其他项目 -1.584000e+09 单季报 ... ... ... ... ... ... ... ... 2001 NVDA 20050501 Q1 英伟达 经营业务调整其他项目 0.000000e+00 单季报 2002 NVDA 20050501 Q1 英伟达 减值及拨备 -3.410000e+05 单季报 2003 NVDA 20050501 Q1 英伟达 基于股票的补偿费 2.850000e+05 单季报 2004 NVDA 20050501 Q1 英伟达 折旧及摊销 2.489700e+07 单季报 2005 NVDA 20050501 Q1 英伟达 净利润 6.444400e+07 单季报

从样例中可以提炼出几条实战要点:

  • 历史深度:数据从 2005 年(甚至更早)即开始覆盖,足以支撑长达二十年维度的现金流趋势研究。
  • 科目体系:既包含三大活动的"净额"汇总科目(如"筹资活动产生的现金流量净额"),也包含细分子科目(如"筹资业务其他项目"、"基于股票的补偿费"),以及"净利润"、"折旧及摊销"、"减值及拨备"等与间接法现金流量表编制直接相关的行项目。
  • 正负号含义ind_value为负值表示现金流出,如筹资活动净流出-1.555300e+10,在分析中需注意符号方向,避免口径误判。
  • 单季报口径report_type=单季报说明返回的是单季度口径数据,若需年度累计口径,应通过report_type参数(Q4/年报)或ind_type字段过滤。

七、在 Vibe-Trading 中的实际使用与关联数据

7.1 与同系列美股财务接口的组合使用

美股财务数据在 Vibe-Trading 技能库中是成体系的一组接口,除现金流量表外还包括:

  • 美股利润表(us_income):获取营收、毛利、净利润等损益类科目,与现金流量表互为印证。
  • 美股资产负债表(us_balancesheet):获取资产、负债、股东权益科目。
  • 美股财务指标数据(us_fina_indicator):提供 ROE、毛利率、资产负债率等派生比率指标,其中ocf_liqdebt(经营业务现金净额/流动负债)等指标与现金流量数据直接关联。

在构建美股基本面因子时,可以将三张报表与财务指标通过ts_code + end_date对齐后做交叉分析,例如"经营现金流净额/净利润"的利润含金量指标,或"资本开支/经营现金流"的扩张质量指标。

7.2 作为 Agent 技能文档被检索引用

该文档位于agent/src/skills/tushare/references/美股数据/目录,是 Tushare 技能包的一部分。Vibe-Trading 的 Agent 可以通过技能加载机制读取这些接口文档(入口见 SKILL.md 中维护的完整接口列表,其中第 396 行条目即us_cashflow -> 美股现金流量表),从而在对话中按需生成数据获取代码。这意味着一套文档同时服务于"人类开发者手写调用"与"Agent 自动生成调用"两条路径。

7.3 数据源配置与前置检查

若要在 Vibe-Trading 更广的数据链路中使用 Tushare 数据源,需要注意:

  • TUSHARE_TOKEN配置于 env_schema.py,是市场数据源凭据体系的一部分。
  • 系统启动预检(preflight.py)会检查 tushare 包是否可导入、token 是否已配置且未使用占位符。
  • 通过 Settings API(settings_routes.py)可以在运行时写入或清除TUSHARE_TOKEN环境变量,并同步到os.environ

八、常见问题与注意事项

  1. 权限错误:返回提示积分不足时,确认账户积分是否达到 15000 或接口是否已单独开通,与本接口代码无关。

  2. 单次请求行数限制:单次最多返回 10000 行,按period/start_date/end_date分片循环请求即可。

  3. 长表转宽表:如需每列一个科目的宽表,可用 pandas 透视:

    wide = df.pivot_table( index=['ts_code', 'end_date'], columns='ind_name', values='ind_value', aggfunc='first', ).reset_index()
  4. 符号方向:现金流流出科目为负值,做同比/环比分析前先确认符号口径。

  5. 报告期类型report_type(Q1~Q4)与输出字段ind_type均标识报告口径,注意区分单季报与累计(年报)数据,避免混用。

结语

us_cashflow是 Tushare 在美股财务数据方向上的核心长表接口,单只股票 + 报告期/科目的灵活组合使其既适合完整报表重建,也适合单科目历史序列研究。在 Vibe-Trading 中,它作为标准 contenteditable="false">【免费下载链接】Vibe-Trading"Vibe-Trading: Your Personal Trading Agent"项目地址: https://gitcode.com/GitHub_Trending/vi/Vibe-Trading

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

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

一文读懂 HCCL Reduce:集合通信里的多卡归约接口

一文读懂 HCCL Reduce:集合通信里的多卡归约接口 【免费下载链接】runner-images GitHub Actions runner images 项目地址: https://gitcode.com/GitHub_Trending/ru/runner-images HcclReduce 是 HCCL 集合通信中的归约算子:多台 NPU 各持一份数…

作者头像 李华
网站建设 2026/9/12 1:32:12

AI Agent安全围栏:DeepSeek Harness沙箱隔离策略与实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

作者头像 李华
网站建设 2026/9/12 1:30:40

Copperhead:从提示词到实物,AI生成PCB的验证闭环实践

1. 这个项目到底在做什么我第一次看到“Copperhead”这个名字,第一反应是蛇。细看下来,这名字起得确实妙——铜头蛇,PCB的核心材料是铜,AI智能体负责“咬住”设计目标不松口,从提示词直通真实电路板。这个项目给我最大…

作者头像 李华
网站建设 2026/9/12 1:30:29

低功耗设计失效的四大物理根源与飞线诊断实战

1. 这不是故障,是低功耗设计的“照妖镜”智能锁修了两次,板子飞线调了三周——这句话刚在硬件工程师群里刷出来,底下立刻冒出一串“懂的都懂”的表情包。不是夸张,是真实发生的现场:某款搭载AXU15EGP系列嵌入式处理器开…

作者头像 李华