abaquant.marketdata.providers.financial_statements¶
Import path: abaquant.marketdata.providers.financial_statements
Domain: Provider-neutral market-data facades, normalized records, caching, and analytics.
Purpose¶
Financial-statement provider protocol.
When to use it¶
This module belongs to the provider layer. Most users reach it through the market-data facades; custom integrations can implement or instantiate the documented contracts directly.
Public objects¶
class:
FinancialStatementProvider— Provider capability for annual or quarterly financial statements. *FinancialStatementProvider.sec_facts— Return raw SEC Company Facts JSON when the provider supports it. *FinancialStatementProvider.income_statement— Return the requested income statement table. *FinancialStatementProvider.balance_sheet— Return the requested balance-sheet table. *FinancialStatementProvider.cash_flow_statement— Return the requested cash-flow statement table.
Detailed reference¶
Financial-statement provider protocol.
- class abaquant.marketdata.providers.financial_statements.FinancialStatementProvider(*args, **kwargs)¶
Bases:
ProtocolProvider capability for annual or quarterly financial statements.
- sec_facts(symbol, *, refresh_policy='if_stale', max_age_days=None)¶
Return raw SEC Company Facts JSON when the provider supports it.
Providers without SEC support may omit this method at runtime; the financial-statement facade checks for the method before calling it.
- Parameters:
symbol (str)
refresh_policy (str)
max_age_days (float | None)
- Return type:
dict[str, Any]
- income_statement(symbol, *, period='annual')¶
Return the requested income statement table.
- Parameters:
symbol (str)
period (Literal['annual', 'quarterly'])
- Return type:
DataFrame
- balance_sheet(symbol, *, period='annual')¶
Return the requested balance-sheet table.
- Parameters:
symbol (str)
period (Literal['annual', 'quarterly'])
- Return type:
DataFrame
- cash_flow_statement(symbol, *, period='annual')¶
Return the requested cash-flow statement table.
- Parameters:
symbol (str)
period (Literal['annual', 'quarterly'])
- Return type:
DataFrame