Share Dilution Events and Shelf Takedowns
Every SEC filing that signals dilution, classified by kind: shelf takedowns, notices of effectiveness, Form D private placements, employee-plan registrations, new registration statements, and the 8-K disclosures of unregistered equity sales. One row per filing, dated the day the filing became public.
edgar_dilution_events - the dataset name to pass to the Obscura API.
What one row means
One dilution-relevant SEC filing, classified into a dilution event kind - a read-only `edgar_dilution_events` VIEW that UNIONs (a) `edgar_filings` whose form is a dilution family (424B* takedowns, EFFECT, Form D, S-8, S-1/S-3/ F-1/F-3/POS AM) and (b) `edgar_8k_items` carrying 8-K Item 3.02 (unregistered equity sales). For EDGAR the filing date IS the public-availability date.
One row per One row per SEC filing, keyed on `ref` (edgar_filings.filename for the registration branch, edgar_8k_items.accn for the 8-K Item 3.02 branch)..
Derived in-database from edgar_filings, edgar_8k_items.
Point-in-time availability
Every Obscura dataset carries available_date: the calendar day the publisher made the row
available, day-of, with no session rounding. It is the one column a backtest filters on, and it means the
same thing on every dataset in the catalog.
For edgar_dilution_events: published: available_date = the SEC filing/acceptance (dissemination) date. For EDGAR the filing date is the public date - no look-ahead. DERIVED: this is a SQL VIEW (pg_class.relkind = 'v') over edgar_filings UNION the 8-K Item 3.02 rows of edgar_8k_items, with no collector and no raw payload of its own.
Refresh cadence
Obscura refreshes edgar_dilution_events every 6 hours - the most frequent scheduled job that re-collects or re-exports it. This is Obscura's own pipeline cadence, not the upstream publisher's release schedule; when a row became public is recorded per row in available_date.
Schema - 7 columns
The full public column list for edgar_dilution_events, with the meaning of every field. The same
schema is served unauthenticated at https://api.obscura.trade/v1/catalog/edgar_dilution_events.
| Column | Type | Description |
|---|---|---|
| cik | bigint | SEC Central Index Key of the filer/registrant. |
| company_name | text | Filer/registrant name (edgar_filings.company_name, or edgar_8k_items.display_name for the 8-K branch). |
| form_type | text | SEC form type driving the classification (e.g. '424B5','S-3','S-8','D','EFFECT','POS AM'), or '8-K' for the unregistered-sale branch. |
| date_filed | date | The SEC filing date - natural filing-date column. Identical in value to `available_date` (for EDGAR the filing date IS the public date); retained as the named natural date. |
| ref_ | text · not null | The filing's unique reference and natural key: edgar_filings.filename (daily-index path) for the filings branch, edgar_8k_items.accn (accession number) for the 8-K branch. |
| kind | text | Dilution event classification: prospectus_takedown, registration_effective, private_placement, employee_plan, shelf_or_registration (form-type CASE), or unregistered_sale (8-K Item 3.02 branch). |
| available_date | date | PUBLIC-availability date = the SEC filing/dissemination date. The point-in-time column to filter/join on. |
Access edgar_dilution_events
Two delivery paths, one identifier. Both require an Obscura account and an active subscription; the catalog entry and the schema above are public.
import obscura
client = obscura.Client("obs_live_…")
df = client.query(
dataset="edgar_dilution_events",
symbols=["NVDA", "AAPL"],
start="2024-01-01",
)
Create a free account Browse all 122 datasets
Frequently asked questions
What is in the edgar_dilution_events dataset?
Every SEC filing that signals dilution, classified by kind: shelf takedowns, notices of effectiveness, Form D private placements, employee-plan registrations, new registration statements, and the 8-K disclosures of unregistered equity sales. One row per filing, dated the day the filing became public. One dilution-relevant SEC filing, classified into a dilution event kind - a read-only `edgar_dilution_events` VIEW that UNIONs (a) `edgar_filings` whose form is a dilution family (424B* takedowns, EFFECT, Form D, S-8, S-1/S-3/ F-1/F-3/POS AM) and (b) `edgar_8k_items` carrying 8-K Item 3.02 (unregistered equity sales). For EDGAR the filing date IS the public-availability date.
How do I avoid look-ahead bias with edgar_dilution_events?
Filter on edgar_dilution_events.available_date, the day the publisher made the row public. For this dataset that date is derived as follows - published: available_date = the SEC filing/acceptance (dissemination) date. For EDGAR the filing date is the public date - no look-ahead. DERIVED: this is a SQL VIEW (pg_class.relkind = 'v') over edgar_filings UNION the 8-K Item 3.02 rows of edgar_8k_items, with no collector and no raw payload of its own. A query of the form WHERE available_date <= '<as-of date>' never sees a row before it existed.
In what formats can I get edgar_dilution_events?
As a Parquet bulk export (POST https://api.obscura.trade/v1/download) or as JSON from the typed query API (POST https://api.obscura.trade/v1/query), both with dataset="edgar_dilution_events". The column schema is public at https://api.obscura.trade/v1/catalog/edgar_dilution_events.
Can I filter edgar_dilution_events by company or symbol?
Yes. edgar_dilution_events carries cik, the column the API's symbols filter resolves against.
How often is edgar_dilution_events updated?
Obscura refreshes edgar_dilution_events on a every 6 hours schedule - that is the most frequent scheduled job that re-collects or re-exports the table. It is Obscura's own pipeline cadence, not the upstream publisher's release schedule; when the publisher makes a row available is described by the availability rule above, and is recorded per row in available_date.