get_upcoming_reverse_splits
Get Upcoming Reverse Splits
What it does
Get reverse stock splits SCHEDULED to take effect within a day-offset window of the current US market day, for companies under a market-cap ceiling. Offsets are days from today on the US market calendar: fromOffset=1, toOffset=1 is tomorrow; fromOffset=1, toOffset=7 is the week ahead.
Each row carries the ticker, company name, the exact vendor integers (splitFrom/splitTo), a pre-rendered ratio ("1-for-20"), the effective date, market cap, float in SHARES, and price. floatShares is on the SAME split basis as the market cap. floatBasis says what it is: "measured", or "estimate" / "estimate_rebased" (the float ladder's point estimate, moved across this split when it predates it) — present an estimate as an estimate.
floatShares: null MEANS NOT MEASURED OR WITHHELD — never zero, never "no float". Such rows ARE included (they have a valid market cap); floatWithheldReason says why.
Do not substitute a float from another source. floatUnknownCount counts those null-float rows IN the list; it is not a withholding count (withheldCount is). price is on the SAME split basis as the market cap (null when it cannot be stated on one basis), so never pair it with a pre-split price from elsewhere.
WHAT THIS IS: rows are splits scheduled AS OF NOW — not a guarantee that every split effective in the window is already known. The underlying stock_splits table has NO created_at column, so there is no way to measure when a row first appeared, and a split announced later will simply be missing. Describe results as "scheduled as of now", NEVER as "all of" or "every" reverse split.
A scheduled split can also be postponed or cancelled after it is announced.
capUnknownCount IS A WITHHOLDING COUNT, NOT A ZERO. It counts rows that passed every other filter and were DELIBERATELY EXCLUDED because Signal8 has no measured market cap for them — typically real OTC microcaps. It does NOT mean those companies have no dilution, no split, or no cap; it means the cap was not measured, so they cannot be asserted to sit under the stated ceiling.
If you publish a "under $Xm" framing and capUnknownCount is above zero, say that N further companies were withheld for unmeasured market cap — do not present the list as complete and do not describe the withheld rows at all. Funds, ETFs and sub-1.5x fractional ratio adjustments are already removed server-side; do not re-filter or re-derive the ratio.
AN EMPTY splits ARRAY IS A NORMAL, COMMON RESULT — most single weekdays have no sub-cap reverse split scheduled at all. It is NOT an error, NOT a failure, and NOT evidence that reverse-split activity has stopped.
Publish nothing rather than publishing an empty-list framing. includeLifecycle=true adds Signal8's SEC-filing lifecycle tracker: top-level lifecycleAvailable, and per row lifecycle = the tracked episode (state, ratio, ratioRange, meetingDate, the ISSUER-STATED effectiveDate, effectiveCondition, verification, asOf, sourceUrl). lifecycle: null means NO EPISODE TRACKED — NOT "no split" and not a contradiction of the calendar row; a row with NO lifecycle key could not be matched to an SEC registrant (not measured). lifecycleAvailable: false means the tracker is switched off or unreadable — say nothing about lifecycle at all. verification "provisional" = one source, not cross-checked.
SCOPE: this is the VENDOR MARKET CALENDAR only (unchanged). For the merged list the Signal8 Reverse Splits page shows (the calendar UNION the SEC-filing tracker, one row per security, with the stage, approval route, authority terms, source filings and the Approved-no-date / Vote-pending tabs) use get_reverse_splits_list.
Ask your AI
With the Signal8 MCP server connected, your assistant calls this tool when a question needs it. For example:
Using Signal8, get reverse stock splits scheduled to take effect within a day-offset window of the current US market day, for companies under a market-cap ceiling.
Parameters
| Name | Type | Description |
|---|---|---|
fromOffsetoptional | integer | Window start as a day offset from the US market day (default 1 = tomorrow). Must be <= toOffset; an inverted window is rejected rather than silently returning an empty list. |
toOffsetoptional | integer | Window end, inclusive, as a day offset from the US market day (default 1). Use 7 with fromOffset 1 for the week ahead. |
includeLifecycleoptional | boolean | Attach the tracked SEC-filing lifecycle episode to each row (default false). null = no episode tracked, never "no split"; a missing key = not matched to a registrant (not measured). |
maxMarketCapoptional | number | Exclusive market-cap ceiling in USD (default 300000000). Rows with NO measured market cap are excluded and counted in capUnknownCount, never assumed to be under the ceiling. |
Other Calendars tools
- get_earnings_calendarUpcoming and recent earnings releases.
- get_economic_calendarMacro events: CPI, FOMC, jobs reports, GDP.
- get_ended_reverse_splitsFailed votes, abandoned splits and expired authorities across companies (Pro rows).
- get_filing_calendarForward-looking 10-K / 10-Q filing deadlines.
- get_legislative_calendarUpcoming House/Senate floor-vote catalysts.
- get_post_earnings_moversStocks that moved sharply after earnings on a date.
- get_recent_material_filingsRecent material 8-K filings (last 7 days).
- get_recent_uplistingsOTC-to-exchange uplistings FINRA recorded on a day.
- get_reverse_split_authorityBoards still holding reverse-split authority: cap, used vs remaining, expiry (Pro rows).
- get_reverse_split_lifecycleA ticker's reverse-split lifecycle from its SEC filings, with quotes.
- get_reverse_splits_listCross-company reverse splits: upcoming, recent, approved with no date, vote pending (Pro rows).