SPB Git

spb/firc0001_uqo

Public
6.7 KB · 55 lines latex
1% ============================================================================2\section{Sample: Issuer Universe and Filing Coverage}\label{sec:sample}3% ============================================================================45\subsection{Estimand: current constituents at a snapshot date}67Two different populations can be labeled ``the Russell~3000''. The first is the set of \emph{historical point-in-time constituents}: for each date, the companies that FTSE Russell included in the index after its annual reconstitution \citep{ftserussell2026}. The second is the set of \emph{current constituents at a snapshot date}. The two differ because of index entries and exits, mergers, delistings and IPOs; a panel built on the second population is subject to survivorship and backfilling biases that a point-in-time panel is not. SPID targets the second population. No licensed historical constituent list was available to the team at the time of the build, and FTSE Russell does not publish machine-readable membership lists for free. Any inference about the ``Russell~3000 over 2010--2026'' from this database is therefore an inference about firms that were in the proxy universe in October 2026 and about their filings back to 2010.89\subsection{Universe construction and reconciliation}1011The issuer universe is frozen in a single JSON artifact, \texttt{data/metadata/universe.json}, built by \texttt{scripts/build\_universe.py} and documented in \texttt{docs/universe\_definition.md}. It merges two sources on the SEC Central Index Key (CIK):1213\begin{enumerate}14\item the S\&P~500 constituent list scraped from the public Wikipedia table on May~25, 2026 (503 rows, 500 distinct CIKs, with GICS sector and sub-industry), used for the first SPID release; and15\item the holdings file of the iShares Russell~3000 ETF (ticker IWV) published by iShares as \texttt{latest-holdings.csv}, with holdings as of October~23, 2026. IWV is an index-tracking fund; its holdings are a close but not exact replica of the index, and the file carries the fund's own sector labels.16\end{enumerate}1718Tickers are normalized to the SEC convention (share-class separators become hyphens: ``BRK B'' $\to$ \texttt{BRK-B}) and mapped to CIKs through the SEC's public \texttt{company\_tickers.json}. Lines that are not operating companies (contingent value rights, escrow shares, rights when-issued) and tickers without a CIK (banks that file with the FDIC rather than the SEC) are dropped and listed in the artifact's \texttt{unmatched} field. Table~\ref{tab:reconciliation} gives the full reconciliation from input securities to issuers with resolved projects.1920\begin{table}[H]21\centering\small22\caption{Universe-to-dataset reconciliation}\label{tab:reconciliation}23\begin{threeparttable}24\input{tables/tab_reconciliation}25\begin{tablenotes}\footnotesize26\item Source: \texttt{data/metadata/universe.json}, \texttt{russell3000\_constituents.json}, \texttt{sp500\_constituents.json} and the merged DuckDB database. The 65 issuers without filings are listed in \texttt{data/issuers\_without\_filings.csv}; most are foreign private issuers (e.g., Spotify, QIAGEN, Canadian Solar, Amdocs) that file annual reports on Form 20-F or 40-F, which are outside the current form scope, plus a few banks whose periodic reports are filed with the FDIC. Seven issuers have filings but no resolved project.27\end{tablenotes}28\end{threeparttable}29\end{table}3031Several design decisions deserve to be stated plainly. The proxy universe counts \emph{issuers}, not securities: two share classes of the same registrant collapse into one CIK (2{,}587 equity lines map to 2{,}555 CIKs). Companies in the S\&P~500 snapshot but no longer in the IWV file (nine issuers, typically recently acquired) are retained with an \texttt{in\_sp500} flag so that the June 2026 release remains a subset. The universe table records, for each issuer, the SEC name, SIC code and description, state of incorporation, exchange and fiscal-year end from the SEC submissions header, the fund weight, and the cluster node that processed its filings (\texttt{shard\_node}). The brief's recommendation of a \texttt{universe\_snapshots} table with source checksums, membership dates and match confidence is only partially met: snapshot date, source URL and match method are recorded; file hashes and per-row match confidence are not yet stored and are listed as open items in the implementation audit (\texttt{docs/implementation\_audit.md}).3233\subsection{Filing scope}3435For every issuer the pipeline enumerates the SEC submissions index (\texttt{data.sec.gov/}\allowbreak\texttt{submissions/}\allowbreak\texttt{CIK\{cik\}.json}, including the paginated archive blocks) and retains the primary document of every Form 10-K, 10-Q and 8-K filed on or after January~1, 2010. Amendments (\texttt{/A}), exhibits other than the primary document, proxy statements, registration statements and foreign-issuer forms are out of scope. The choice reflects where strategic initiatives are described in prose---Items 1, 1A, 2, 7 and 7A of the 10-K, the MD\&A and risk-factor items of the 10-Q, and the body of the 8-K---and it is a defensible but not innocuous restriction: press releases attached as Exhibit~99 to an 8-K, which often carry the first and most detailed announcement of a project, are not read when they are not the primary document. Testing whether this scope omits important announcements is part of the validation roadmap.3637\begin{table}[H]38\centering\small39\caption{Filings in the corpus, by form}\label{tab:filings}40\begin{threeparttable}41\input{tables/tab_filings}42\begin{tablenotes}\footnotesize43\item ``Not parsed'' counts filings whose primary document could not be cleaned (parser error) or was not found on disk after download. Raw HTML size is the sum of primary-document sizes recorded at download time.44\end{tablenotes}45\end{threeparttable}46\end{table}4748Table~\ref{tab:filings} summarizes the corpus: 527{,}548 primary documents, 254.5~GB of raw HTML, of which only 16 documents (0.003\%) failed parsing. Figure~\ref{fig:coverage} and Table~\ref{tab:coverage_year} in the appendix show the coverage by year. The number of issuers with at least one filing rises from 1{,}392 in 2010 to 2{,}498 in 2026: the snapshot universe contains many companies that went public after 2010, so the early years of the panel are populated by the older and larger survivors. This is the concrete form taken by the survivorship caveat above.4950\begin{figure}[H]51\centering52\includegraphics[width=\textwidth]{figures/fig_coverage.pdf}53\caption{Filings and issuers per year in the corpus. The 2026 bar covers January~1 to October~27, 2026. Issuers that went public after 2010 enter the panel at their first filing, so the number of observed issuers increases mechanically over time under the snapshot design.}\label{fig:coverage}54\end{figure}55
Files · 906fea1f908066104ce14052071507e67d7843ed
Menu

Theme