Most financial analysis stops at ratios — revenue growth, margins, ROE. Those are useful, but they don’t tell you how reliable or persistent a company’s performance actually is.
I built a structural feature layer on top of SEC financial data to focus on three things: earnings quality, stability, and consistency over time. Instead of just asking “what are the numbers today?”, the goal is to understand how those numbers behave across periods — whether they’re cash-backed, volatile, or structurally coherent.
At a high level, the system takes cleaned fundamentals and transforms them into a panel of structural signals, along with a composite structural_score that enables cross-sectional comparison between companies.

What this adds beyond traditional analysis
- Earnings quality
- Are reported earnings supported by cash flow?
- Measured through accrual-based signals
- Stability
- Are margins and returns steady or noisy?
- Captured via rolling volatility and persistence
- Consistency
- Do financial relationships hold over time?
- Identified through structural drift and signal decay
Where this fits
This project is part of a broader financial data pipeline:
- secfsn → raw SEC data ingestion and normalization
- secfsn_plus → fundamental ratios and factor-style features
- secfsn_plus_structural → (this project) structural signals and scoring
Each layer builds on the previous one, moving from raw data → standardized features → interpretable structural insights.
Why this matters
Two companies can look identical on a snapshot basis but behave very differently over time. This framework helps surface that difference in a systematic and scalable way.
The output is a (company, period) panel of structural features + a scoring layer that can plug into screening, research workflows, or downstream models.
GitHub: Link