Skip to content

Learn

AI-Assisted Evidence Checks

Company ID joins: use effective intervals, not tickers

A company identifier join needs a validity interval and a relationship type. Matching a ticker in two tables can connect different securities or different historical entities. Before AI combines filings, prices or operating data, create a dated crosswalk that preserves the distinction between the reporting company and the instrument being observed.

SEC submissions documentation describes CIK-keyed filing histories and metadata including current and former names, tickers and exchanges. That metadata is useful evidence, but it does not automatically provide every historical ticker-validity interval. Establish the missing dates from appropriate underlying records.

Define the join objects

Create separate keys for the research entity, legal reporting entity and security. A company can issue multiple classes, while a merger can connect predecessor and successor entities without making their full histories interchangeable. Record the relationship explicitly rather than storing every association as an alias.

For each mapping, keep valid-from and valid-to dates, the source establishing the boundary, and unresolved precision. Choose a clear interval convention, such as including the start and excluding the end. A vague year should not be silently transformed into a precise trading-day boundary.

Require the observation date to fall within the mapping interval. Also require compatible market and security class where those affect identity. An entity-level financial fact can join to several securities legitimately, but the resulting multiplication must be intentional and should not duplicate the company’s revenue in an aggregate.

Hypothetical recycled ticker

Assume fictional company Elm uses ticker ABC through June 30. A different company, Slate, starts using ABC on September 1. An annual current-ticker lookup maps ABC to Slate. Joining all historical ABC prices to that lookup would incorrectly attach Elm’s earlier observations to Slate.

A dated crosswalk routes pre-July observations to Elm, September onward observations to Slate, and the gap to an unresolved or inactive status under the evidence. It does not fill the summer gap by nearest-name matching. All dates, entities and tickers are hypothetical.

Now suppose Elm had two classes during the first interval. An entity-level filing row may be relevant to both classes, but a class-specific price must retain its own key. After joining, count entity-period facts separately from security-period observations so the shared filing does not become two independent companies.

Temporal crosswalk worksheet

FieldValidation rule
Research entity keyStable internal object with documented continuity
Reporting entity IDVerified issuer or filer relationship
Security keyMarket and class retained
Display symbolTime-varying label, never sole identity
Valid intervalSource-backed boundaries and precision
Relationship typeSame entity, predecessor, successor or unresolved

Test for overlapping intervals within the intended unique mapping. More than one valid match can be legitimate for different classes, but it should fail a supposedly one-to-one join. Record unmatched observations rather than dropping them in an inner join and declaring the remaining dataset complete.

Review before synthesis

Ask AI to propose candidates, not finalize identity. Review weak matches using original issuer documents and relevant market records. Similar names, websites and logos can help locate evidence but should not override a contradictory identifier or class description.

Compare row counts and aggregate totals before and after the join. A clean company name column is not proof of a correct mapping. The final packet should retain the crosswalk version, interval logic, ambiguous matches and excluded rows. This makes errors inspectable and prevents an apparently fluent company history from stitching together unrelated economic objects.

FAQ

Is a CIK the same thing as a traded security?

No. It anchors a filing entity; security class, market and historical relationship still need their own fields.

Should unmatched old tickers be filled by today’s closest name?

No. Preserve the unresolved row and seek evidence. A convenient guess can create a false historical company series.