Financial Data Collector
Collect 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 Constraints
NO FALLBACK values. If a field cannot be retrieved, set it to null with _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 _source field.
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.
Workflow
Step 1: Collect Data
Run the collection script:
The script collects in this priority:
- yfinance — market data, historical financials, beta, analyst estimates
- yfinance ^TNX — 10Y Treasury yield as risk-free rate proxy
- User supplement — for years where yfinance returns NaN (report to user, do not guess)
Step 2: Validate Data
Checks: field completeness, cross-field consistency (Market Cap = Price × Shares), range sanity (WACC 5-20%, beta 0.3-3.0), sign conventions.
Step 3: Deliver JSON
Single file: {TICKER}_financial_data.json. Schema in references/output-schema.md.
Do NOT create: README, CSV, summary reports, or any auxiliary files.
Output Schema (Summary)
Full schema with all field definitions: references/output-schema.md
<correct_patterns>
Handling Missing Years
CapEx Sign Preservation
Datetime Column Indexing
Field Name Guards
</correct_patterns>
<common_mistakes>
Mistake 1: Default Values for Missing Data
Mistake 2: Assuming All Years Have Data
Mistake 3: Using yfinance FCF in DCF Models Directly
yfinance 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
</common_mistakes>
Known yfinance Pitfalls
See references/yfinance-pitfalls.md for detailed field mapping and workarounds.

