金融数据采集_financial-data-collector
以下为本文档的中文说明financial-data-collector 是一个专业的金融数据采集技能能够从 yfinance 等免费公开渠道收集美国上市公司的真实财务数据并以标准化 JSON 格式输出供下游金融分析技能如 DCF 估值建模、可比公司分析、财报审查使用。该技能有严格的数据采集规范第一严格禁止使用回退值——如果某个字段无法获取必须设置为 null 并附带 _source: missing 标记绝不允许用默认值替代例如不能将缺失的 beta 值设为 1.0由下游技能自行决定如何处理缺失数据。第二强制数据来源标注——每个数据部分都必须包含 _source 字段确保数据可追溯。第三保持原始符号约定——yfinance 返回的 CapEx资本支出为负值现金流出必须保留原始符号并在输出元数据中注明约定。第四明确数据差异——yfinance 的自由现金流与投资银行算法不同yfinance FCF 运营现金流 CapEx不扣除股权激励必须标注这一差异。该技能采集的数据涵盖市场数据价格、流通股、Beta、历史财务报表利润表、现金流量表、资产负债表、WACC 输入参数、分析师预测。核心原则是“真实、可追溯、不篡改”——金融数据的准确性是后续分析的前提任何人为回退或修改都可能误导决策。Financial Data CollectorCollect and validate real financial data for US public companies using free data sources.Output is a standardized JSON file ready for consumption by other financial skills.Critical ConstraintsNO FALLBACK values.If a field cannot be retrieved, set it tonullwith_source: missing.Never substitute defaults (e.g.,beta or 1.0). The downstream skill decides how to handle missing data.Data source attribution is mandatory.Every data section must have a_sourcefield.CapEx sign convention:yfinance returns CapEx as negative (cash outflow). Preserve the original sign. Document the convention in output metadata. Do NOT flip signs.yfinance FCF ≠ Investment bank FCF.yfinance FCF Operating CF CapEx (no SBC deduction). Flag this in output metadata so downstream DCF skills don’t overstate FCF.WorkflowStep 1: Collect DataRun the collection script:python scripts/collect_data.py TICKER[--years5][--output path/to/output.json]The script collects in this priority:yfinance— market data, historical financials, beta, analyst estimatesyfinance ^TNX— 10Y Treasury yield as risk-free rate proxyUser supplement— for years where yfinance returns NaN (report to user, do not guess)Step 2: Validate Datapython scripts/validate_data.py path/to/output.jsonChecks: field completeness, cross-field consistency (Market Cap Price × Shares), range sanity (WACC 5-20%, beta 0.3-3.0), sign conventions.Step 3: Deliver JSONSingle file:{TICKER}_financial_data.json. Schema inreferences/output-schema.md.Do NOT create: README, CSV, summary reports, or any auxiliary files.Output Schema (Summary){ticker:META,company_name:Meta Platforms, Inc.,data_date:2026-03-02,currency:USD,unit:millions_usd,data_sources:{market_data:...,2022_to_2024:...},market_data:{current_price:648.18,shares_outstanding_millions:2187,market_cap_millions:1639607,beta_5y_monthly:1.284},income_statement:{2024:{revenue:164501,ebit:69380,tax_expense:...,net_income:...,_source:yfinance}},cash_flow:{2024:{operating_cash_flow:...,capex:-37256,depreciation_amortization:15498,free_cash_flow:...,change_in_nwc:...,_source:yfinance}},balance_sheet:{2024:{total_debt:30768,cash_and_equivalents:77815,net_debt:-47047,current_assets:...,current_liabilities:...,_source:yfinance}},wacc_inputs:{risk_free_rate:0.0396,beta:1.284,credit_rating:null,_source:yfinance ^TNX},analyst_estimates:{revenue_next_fy:251113,revenue_fy_after:295558,eps_next_fy:29.59,_source:yfinance},metadata:{_capex_convention:negative cash outflow,_fcf_note:yfinance FCF OperatingCF CapEx. Does NOT deduct SBC.}}Full schema with all field definitions:references/output-schema.mdcorrect_patternsHandling Missing Yearsifpd.isna(revenue):result[year]{revenue:None,_source:yfinance returned NaN — supplement from 10-K}# Report missing years to the user. Do NOT skip or fill with estimates.CapEx Sign Preservationcapexcash_flow.loc[Capital Expenditure,year_col]# -37256.0result[capex]float(capex)# Preserve negativeDatetime Column Indexingyear_col[cforcinfinancials.columnsifc.yeartarget_year][0]revenuefinancials.loc[Total Revenue,year_col]Field Name GuardsifTotal Revenueinfinancials.index:revenuefinancials.loc[Total Revenue,year_col]elifRevenueinfinancials.index:revenuefinancials.loc[Revenue,year_col]else:revenueNone/correct_patternscommon_mistakesMistake 1: Default Values for Missing Data# ❌ WRONGbetainfo.get(beta,1.0)growthdata.get(growth)or0.02# ✅ RIGHTbetainfo.get(beta)# May be None — thats OKMistake 2: Assuming All Years Have Data# ❌ WRONG — 2020-2021 may be NaNrevenuefloat(financials.loc[Total Revenue,year_col])# ✅ RIGHTvaluefinancials.loc[Total Revenue,year_col]revenuefloat(value)ifpd.notna(value)elseNoneMistake 3: Using yfinance FCF in DCF Models Directlyyfinance FCF does NOT deduct SBC. For mega-caps like META, SBC can be $20-30B/yr, making yfinance FCF ~30% higher than investment-bank FCF. Always flag this in output.Mistake 4: Flipping CapEx Sign# ❌ WRONG — double-negation risk downstreamcapexabs(cash_flow.loc[Capital Expenditure,year_col])# ✅ RIGHT — preserve original, document conventioncapexfloat(cash_flow.loc[Capital Expenditure,year_col])# -37256.0/common_mistakesKnown yfinance PitfallsSeereferences/yfinance-pitfalls.mdfor detailed field mapping and workarounds.

相关新闻

SolidWorks快捷键全攻略:从S键到自定义,解锁高效设计

SolidWorks快捷键全攻略:从S键到自定义,解锁高效设计

你是不是也遇到过这样的场景:在SolidWorks里画图,左手在键盘上摸索半天,右手握着鼠标来回切换工具,一个简单的操作硬是拖慢了整个设计节奏?或者,看着同事行云流水地建模,自己却还在菜单栏里“大…

2026/10/21 20:15:14 阅读更多 →
金融周度展望_finance-weekly-outlook

金融周度展望_finance-weekly-outlook

以下为本文档的中文说明finance-weekly-outlook 是一个生成式金融周度展望技能,旨在为下一个交易周输出基于可靠数据源的、高概率的看多和看空行业及个股分析报告,同时覆盖美股和中国 A 股两大市场。该技能位于完整的金融分析流水线的末端:da…

2026/10/22 8:00:15 阅读更多 →
一文读懂汽车CAN总线 —— 从原理到故障诊断

一文读懂汽车CAN总线 —— 从原理到故障诊断

一、CAN总线是什么CAN(Controller Area Network,控制器局域网)是一种串行通信总线标准,最初由德国BOSCH公司于1980年代开发,用于解决汽车内部电子控制单元(ECU)之间的数据交换问题。在CAN出现之…

2026/10/22 10:49:02 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/10/22 10:18:38 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/10/22 11:01:53 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/10/22 9:44:47 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/10/22 10:42:00 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/10/22 10:40:08 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/10/22 10:56:37 阅读更多 →

日新闻

周新闻

基于GMM的语音识别系统原理与MATLAB实现详解

基于GMM的语音识别系统原理与MATLAB实现详解

说到基于高斯混合模型(GMM)的语音识别系统,很多人第一反应就是一堆数学公式,觉得门槛很高。但如果你真的在MATLAB里把它落地跑通,会发现核心其实就是三件事:把声音变成特征向量,用GMM给每个类别…

2026/10/22 1:47:45 阅读更多 →
数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理入门:反白、灰度化、调色板修改与导出txt实践

数字图像处理这四个字听起来挺唬人,但落到具体操作上,无非就是让计算机按你的想法“摆弄”像素。我在一个模拟项目X里用了一套特别经典的基础处理流程:对图像做反白、改调色板、彩色转灰度,最后把像素数据导出成txt文件。单看每一…

2026/10/21 21:32:28 阅读更多 →
机器人大脑技术盘点:具身智能的感知、决策与数据闭环

机器人大脑技术盘点:具身智能的感知、决策与数据闭环

如果你的信息流最近也天天刷到“机器人大脑”这个词,你会发现一个很有意思的现象:每个人说的“大脑”根本不是同一个东西。有人指的是大语言模型,有人指的是运动控制系统,还有人指的是能理解物理世界的端到端模型。在2026年这个时…

2026/10/22 5:12:39 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

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

2026/10/21 21:50:56 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

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

2026/10/21 21:51:55 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

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

2026/10/22 19:06:46 阅读更多 →