Skip to main content
Factor Lab relates one stock to six prediction-market themes: its beta to each theme, the current theme levels, an out-of-sample P&L comparison, a paper portfolio of theme contracts that tracks the stock, and the company’s earnings, dividends, splits, and material SEC 8-K events. Every response is research only. Nothing in it is an order, a trade size, or a hedge ratio. paper, research, and official are always true. executable is always false.

Request

Authentication

Send an API key with the factors:read scope (see API keys) in either header:

Ticker

ticker is a Yahoo symbol: 1 to 32 letters or digits, with . or - allowed between them, for example AAPL, BRK-B, 0700.HK, 7203.T. It is case-insensitive and returned upper-case.

Errors

Every error is an RFC 9457 problem (application/problem+json), the same as the other v1 routes. See the problem types. Every error response carries Cache-Control: no-store. detail is a short sentence. It never contains upstream error text.

Response

200 OK, application/json, Cache-Control: no-store. All timestamps are ISO 8601. All dates are YYYY-MM-DD. Any field documented as nullable is null when its data is unavailable.

Top-level fields

equity

Each history row:

sources

sources.equity: sources.kalshi and sources.polymarket:

calendar

Earnings, dividends, splits, and material SEC 8-K events for a U.S. primary listing.

Status

A U.S. primary listing is a USD equity on Nasdaq (NMS, NGM, NCM), NYSE (NYQ), or NYSE American (ASE) that trades on the America/New_York session. reason is null when status is AVAILABLE, else one of these fixed sentences:
  • Company calendar covers U.S. primary listings only.
  • Yahoo calendar data was unavailable.
  • SEC EDGAR data was unavailable.
  • Yahoo and SEC EDGAR data were unavailable.
  • Company calendar did not respond within the time budget.
  • Company calendar was unavailable.
  • Company calendar is disabled.
Sources by section: Yahoo data is cached for up to 6 hours and SEC data for up to 24 hours.

Fields

next_earnings: The time of day of the report is not included. past_earnings[]: When no 8-K matches a quarter, report_date, sec_accepted_at, reaction_session, and sec_filing_url are null, and the EPS fields are kept. EPS values are Yahoo’s reported figures, which are usually adjusted (non-GAAP). They can differ from GAAP EPS in the company’s filings. eps_estimate, eps_actual, and surprise_percent come from the same source, so they are consistent with each other. next_dividend: past_dividends[]: splits[]: company_events[]: Only these item codes are kept. A filing with none of them is left out.

Data sources

  • Prices, earnings dates and estimates, EPS, dividends, and splits: Yahoo Finance. Mecone is not affiliated with Yahoo. The data is provided as is.
  • Earnings report dates and 8-K events: SEC EDGAR.
  • Theme contracts: Kalshi and Polymarket public market data.