The Equity Extension provides comprehensive access to equity market data through a unified interface that supports multiple data providers. It organizes equity-related functionality into logical sub-routers covering fundamental data, price data, analyst estimates, ownership information, calendar events, discovery/screening tools, and comparison utilities.
This page documents the extension's structure, available endpoints, provider integration patterns, and testing approaches. For information about the Provider Architecture that enables multi-provider support, see Provider Architecture. For general extension system concepts, see Extension System.
The Equity Extension is organized into seven major sub-router categories, each accessible through the obb.equity namespace:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1-1600
The fundamental sub-router provides access to company financial statements, growth metrics, management information, and corporate filings. All endpoints support multiple providers with standardized output models.
Three core statement types are available with consistent parameter patterns:
| Endpoint | Standard Model | Providers | Key Parameters |
|---|---|---|---|
balance | BalanceSheet | fmp, intrinio, yfinance | symbol, period, limit, fiscal_year |
cash | CashFlowStatement | fmp, intrinio, yfinance | symbol, period, limit, fiscal_year |
income | IncomeStatement | fmp, intrinio, yfinance | symbol, period, limit, fiscal_year |
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py21-168 openbb_platform/providers/fmp/openbb_fmp/__init__.py78-148 openbb_platform/providers/intrinio/openbb_intrinio/__init__.py72-112
Growth endpoints provide year-over-year or quarter-over-quarter percentage changes for financial statement line items:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py61-185
| Endpoint | Description | Providers |
|---|---|---|
management | Key executives and leadership | fmp, yfinance |
management_compensation | Executive compensation details | fmp |
employee_count | Historical employee headcount | fmp |
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py186-318
Historical corporate actions are available through dedicated endpoints:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py236-295
Comprehensive metric endpoints provide calculated financial ratios and key performance indicators:
The metrics endpoint supports multiple providers with varying data schemas:
industry_group_number parameterSources: openbb_platform/extensions/equity/integration/test_equity_python.py508-536 openbb_platform/extensions/equity/integration/test_equity_python.py763-793
Geographic and business line revenue breakdowns:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py795-834
Access to SEC filings and regulatory documents:
Provider support includes:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py837-908
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py927-940
Intrinio provider offers specialized endpoints for accessing custom financial data tags:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1127-1284
The estimates sub-router provides analyst forecasts and consensus data:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py320-333
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py578-610
Multiple providers offer consensus views with different parameter sets:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py638-660
Forward-looking estimates support multiple fiscal period configurations:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py662-761
The Benzinga provider offers analyst and firm search capabilities:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py612-636
The ownership sub-router tracks institutional holdings, insider transactions, and share statistics:
Track corporate insider transactions with multiple provider options:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py388-437
Quarterly 13F filing data showing institutional holdings:
Note: The Intrinio institutional ownership endpoint has been disabled due to reliability issues with the upstream API.
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py439-467
Significant institutional positions:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py554-576
Float, shares outstanding, and ownership percentages:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py910-925
The calendar sub-router provides upcoming and historical corporate events:
| Endpoint | Event Type | Parameters | Providers |
|---|---|---|---|
dividend | Dividend announcements | start_date, end_date | fmp, nasdaq |
splits | Stock splits | start_date, end_date | fmp |
earnings | Earnings releases | start_date, end_date, country | fmp, nasdaq, tmx, seeking_alpha |
ipo | IPO events | start_date, end_date, status | intrinio, nasdaq, fmp |
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py76-130 openbb_platform/extensions/equity/integration/test_equity_python.py92-105 openbb_platform/extensions/equity/integration/test_equity_python.py107-130 openbb_platform/extensions/equity/integration/test_equity_python.py469-506
The price sub-router provides historical price data with extensive interval and adjustment options:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py970-1131
Peer comparison and group analysis functionality:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py942-968
Screen for equities based on performance, valuation, and growth criteria:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1485-1600
Several endpoints exist directly under obb.equity:
Multi-provider equity search with flexible query options:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1286-1311
Filter equities by financial criteria:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1313-1386
Company profile and information:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1388-1483
The Equity Extension demonstrates comprehensive provider integration. Each endpoint follows a consistent pattern:
The FMP provider implements the most comprehensive set of equity fetchers:
Fundamental Data:
FMPBalanceSheetFetcher, FMPBalanceSheetGrowthFetcherFMPCashFlowStatementFetcher, FMPCashFlowStatementGrowthFetcherFMPIncomeStatementFetcher, FMPIncomeStatementGrowthFetcherFMPFinancialRatiosFetcher, FMPKeyMetricsFetcherFMPRevenueGeographicFetcher, FMPRevenueBusinessLineFetcherFMPHistoricalDividendsFetcher, FMPHistoricalSplitsFetcher, FMPHistoricalEmployeesFetcherFMPKeyExecutivesFetcher, FMPExecutiveCompensationFetcherFMPCompanyFilingsFetcher, FMPEarningsCallTranscriptFetcherEstimates & Analysis:
FMPAnalystEstimatesFetcher, FMPHistoricalEpsFetcherFMPPriceTargetFetcher, FMPPriceTargetConsensusFetcherFMPForwardEpsEstimatesFetcher, FMPForwardEbitdaEstimatesFetcherOwnership:
FMPInsiderTradingFetcher, FMPInstitutionalOwnershipFetcherFMPEquityOwnershipFetcher, FMPShareStatisticsFetcherCalendar & Events:
FMPCalendarDividendFetcher, FMPCalendarSplitsFetcherFMPCalendarEarningsFetcher, FMPCalendarIpoFetcherPrice & Market Data:
FMPEquityHistoricalFetcher, FMPEquityQuoteFetcherFMPGainersFetcher, FMPLosersFetcher, FMPEquityActiveFetcherDiscovery & Screening:
FMPEquityScreenerFetcher, FMPEquityProfileFetcherFMPEquityPeersFetcher, FMPMarketSnapshotsFetcherSources: openbb_platform/providers/fmp/openbb_fmp/__init__.py1-153
Intrinio provides 40+ equity fetchers with focus on real-time data and specialized financial metrics:
Core Financials:
IntrinioBalanceSheetFetcher, IntrinioCashFlowStatementFetcher, IntrinioIncomeStatementFetcherIntrinioFinancialRatiosFetcher, IntrinioKeyMetricsFetcherAdvanced Data:
IntrinioHistoricalAttributesFetcher, IntrinioLatestAttributesFetcher, IntrinioSearchAttributesFetcherIntrinioReportedFinancialsFetcherEstimates:
IntrinioForwardEpsEstimatesFetcher, IntrinioForwardSalesEstimatesFetcherIntrinioForwardEbitdaEstimatesFetcher, IntrinioForwardPeEstimatesFetcherIntrinioPriceTargetConsensusFetcherMarket Data:
IntrinioEquityHistoricalFetcher, IntrinioEquityQuoteFetcherIntrinioOptionsChainsFetcher, IntrinioOptionsUnusualFetcher, IntrinioOptionsSnapshotsFetcherIntrinioMarketSnapshotsFetcherOwnership & Filings:
IntrinioInsiderTradingFetcher, IntrinioShareStatisticsFetcherIntrinioCompanyFilingsFetcher, IntrinioHistoricalDividendsFetcherSources: openbb_platform/providers/intrinio/openbb_intrinio/__init__.py1-117
The Equity Extension employs comprehensive integration testing covering both Python and API interfaces:
Each endpoint is tested with multiple provider configurations:
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py21-59
API tests validate HTTP endpoints and response formats:
Sources: openbb_platform/extensions/equity/integration/test_equity_api.py23-64
Each provider maintains unit tests for individual fetchers using VCR for HTTP recording:
Sources: openbb_platform/providers/fmp/tests/test_fmp_fetchers.py188-205 openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py195-203
Tests use VCR to record and replay HTTP interactions, filtering sensitive credentials:
Sources: openbb_platform/providers/fmp/tests/test_fmp_fetchers.py92-103 openbb_platform/providers/intrinio/tests/test_intrinio_fetchers.py75-90
All equity endpoints return data normalized to standard models defined in openbb_core.provider.standard_models. This ensures consistent field names and data types regardless of provider:
| Endpoint | Standard Model | Key Fields |
|---|---|---|
balance | BalanceSheetData | date, symbol, assets, liabilities, equity |
cash | CashFlowStatementData | date, symbol, operating_cash_flow, investing_cash_flow, financing_cash_flow |
income | IncomeStatementData | date, symbol, revenue, net_income, eps |
dividends | HistoricalDividendsData | ex_dividend_date, amount, declaration_date, payment_date |
filings | CompanyFilingsData | filing_date, form_type, symbol, url |
insider_trading | InsiderTradingData | transaction_date, filing_date, insider_name, transaction_type, shares |
Provider-specific fields are added as extensions to the standard models without breaking compatibility.
Sources: openbb_platform/extensions/equity/integration/test_equity_python.py1-1600
The Equity Extension provides a comprehensive, multi-provider interface to equity market data organized into seven functional sub-routers: fundamental, estimates, ownership, calendar, price, compare, and discovery. With support for 10+ data providers and 80+ endpoints, it enables flexible data access while maintaining consistent output through standard models. The extension's testing infrastructure ensures reliability across all providers and interfaces.
Refresh this wiki