Small-cap stocks on October 16, 2026: gappers, halts and filings
On October 16, 2026, these are the small-cap stocks that moved, read from the same data the replay plays: the pre-market gappers, the day's gainers, intraday runners, losers and fades, the after-hours movers, every halt, and the offerings and splits filed or in effect. A day's high runs from 4 a.m., pre-market included, to the 4 p.m. close. The biggest gapper was PMI, up 22.1% at the open.
Pre-market gappers
Fewer than three small caps met the rule at 9:30 a.m. ET, so there is no list.
The small-cap rule: price from 2 to 20 dollars, gapped up 10% or more before the open, relative volume 5× or more, float under 20 million shares.
Play the moment: XXII at 2:08 p.m. ET
The real Level 2, time and sales and chart from 2:05 p.m. to 2:17 p.m. ET, from the same feed the replay plays. It stops at 2:08 p.m. and asks what you would do, then plays on.
Gainers
Fewer than three small caps met the rule at 4:00 p.m. ET, so there is no list.
The small-cap rule: price from 2 to 20 dollars, up 10% or more on the day, relative volume 5× or more, float under 20 million shares.
Intraday runners
The small caps whose high from 4:00 a.m. to 8:00 p.m. ET, pre-market and after hours included, was the furthest above the previous close, wherever they finished: a stock that spiked before the bell, during the day or after the close and gave it back is here.
The small-cap rule: the high priced from 2 to 20 dollars, a high 10% or more above the previous close, held by at least 3 one-minute bars that closed at or above that level on 100 shares or more, relative volume 5× or more, float under 20 million shares.
Or in play: up 30% or more at any moment on $3 million or more really traded, whatever its price, relative volume or float, its high at $1 or more.
| Symbol | Previous close | High, 4 a.m. to 4 p.m. | After-hours high, 4 p.m. to 8 p.m. | Close, 4 p.m. | Volume, 4 a.m. to 4 p.m. | Relative volume by 8 p.m. | Float |
|---|---|---|---|---|---|---|---|
| XLAB why it ran | $1.36 | $3.80 | $2.49 | $2.34 | 54.16 million | 163.8× | 21.86 million |
| XXII why it ran | $0.6272 | $1.30 | $0.4595 | $0.3447 | 11.15 million | 27.2× | 713,986 |
| WORX why it ran | $2.01 | $3.76 | $1.56 | $1.35 | 3.70 million | 11.6× | 742,099 |
| ZTG why it ran | $0.623 | $1.11 | $0.93 | $0.7049 | 59.53 million | 37.5× | 9.98 million |
| SGRX why it ran | $0.6851 | $1.21 | $0.9213 | $0.8619 | 60.06 million | 100.4× | 1.88 million |
| JBDI why it ran | $2.34 | $3.95 | $2.64 | $2.56 | 2.36 million | 1.0× | 3.48 million |
| SMX why it ran | $3.60 | $5.61 | $2.40 | $1.85 | 4.87 million | 41.5× | 758,975 |
| NCPL why it ran | $1.98 | $3.06 | $2.28 | $2.15 | 9.46 million | 1.2× | 6.71 million |
| CTSO why it ran | $3.00 | $4.60 | $4.30 | $4.02 | 219,427 | n/m | 2.39 million |
| TCRT why it ran | $2.18 | $3.19 | $2.76 | $2.62 | 9.75 million | 1.4× | 2.36 million |
| LRHC why it ran | $0.8962 | $1.31 | $0.82 | $0.76 | 4.24 million | 17.9× | 552,335 |
| FLYE why it ran | $3.38 | $4.77 | $2.68 | $2.65 | 1.10 million | 0.4× | 1.56 million |
| HUIZ why it ran | $1.43 | $1.98 | $1.98 | $1.75 | 2.19 million | 232.6× | 6.16 million |
| PMI why it ran | $10.00 | $13.72 | $12.90 | $12.56 | 735,628 | 3.7× | 1.55 million |
| IAM why it ran | $18.91 | $25.00 | $24.20 | $23.35 | 1.37 million | 24.2× | 9.38 million |
| TNMG why it ran | $3.25 | $4.29 | $3.21 | $3.18 | 1.04 million | 0.7× | 697,299 |
| GUTS why it ran | $4.16 | $4.84 | $1.61 | $1.56 | 5.41 million | 67.0× | 12.38 million |
Losers
Fewer than three small caps met the rule at 4:00 p.m. ET, so there is no list.
The small-cap rule: price from 2 to 20 dollars, down 10% or more on the day, relative volume 5× or more, float under 20 million shares.
Fades
Fewer than three small caps met the rule at 4:00 p.m. ET, so there is no list.
The small-cap rule: price from 2 to 20 dollars, gapped up 10% or more and closed 10% or more below the open, relative volume 5× or more, float under 20 million shares.
After hours
Fewer than three small caps met the rule at 8:00 p.m. ET, so there is no list.
The small-cap rule: price from 2 to 20 dollars, moved 10% or more after the close, relative volume 5× or more, float under 20 million shares.
Why they ran
The stocks we wrote up for this day, each with its gap, float, halts, the news before the move and a chart.
Halts
Every trading halt in the exchange's feed that day, in New York time: the small caps in the lists above first, then every other stock. See LULD halts.
| Halted | Symbol | Resumed | Length | Reason in the feed |
|---|---|---|---|---|
| 9:30 a.m. | SGRX | 9:35 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 9:48 a.m. | WORX | 9:58 a.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 10:08 a.m. | XLAB | 10:13 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:11 a.m. | SMX | 10:16 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:25 a.m. | SMX | 10:30 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:31 a.m. | SMX | 10:36 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:37 a.m. | SMX | 10:42 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:43 a.m. | SMX | 10:48 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:48 a.m. | SMX | 10:53 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:55 a.m. | SMX | 11:05 a.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 11:06 a.m. | SMX | 11:16 a.m. | 10 min 1 s | LULD pause (limit up-limit down) |
| 11:12 a.m. | PMI | 11:17 a.m. | 5 min 0 s | No reason given in the feed |
| 11:17 a.m. | SMX | 11:22 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 11:22 a.m. | SMX | 11:27 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 11:24 a.m. | PMI | 11:29 a.m. | 5 min 0 s | No reason given in the feed |
| 11:30 a.m. | SMX | 11:35 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 11:41 a.m. | SMX | 11:46 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 11:54 a.m. | FLYE | 12:04 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 12:04 p.m. | FLYE | 12:09 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 12:11 p.m. | FLYE | 12:36 p.m. | 25 min 3 s | LULD pause (limit up-limit down) |
| 12:36 p.m. | FLYE | 12:41 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 12:42 p.m. | FLYE | 12:52 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 12:52 p.m. | FLYE | 12:57 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 12:57 p.m. | FLYE | 1:07 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 1:38 p.m. | FLYE | 1:48 p.m. | 10 min 1 s | LULD pause (limit up-limit down) |
| 2:06 p.m. | CTSO | 2:11 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 2:12 p.m. | CTSO | 2:17 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 2:22 p.m. | CTSO | 2:27 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
Every other halt that day: 35
| Halted | Symbol | Resumed | Length | Reason in the feed |
|---|---|---|---|---|
| 4:00 a.m. | CTY | 11:59 a.m. | 479 min 36 s | Administrative |
| 4:00 a.m. | MMF | 9:45 a.m. | 345 min 9 s | No reason given in the feed |
| 4:00 a.m. | TCXB | 11:00 a.m. | 420 min 25 s | Administrative |
| 9:30 a.m. | JAGX | 9:40 a.m. | 10 min 1 s | LULD pause (limit up-limit down) |
| 9:38 a.m. | RPGL | 9:43 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 9:41 a.m. | AHT-I | 9:51 a.m. | 9 min 56 s | LULD pause (limit up-limit down) |
| 9:50 a.m. | FVNNU | 10:15 a.m. | 24 min 8 s | LULD pause (limit up-limit down) |
| 10:19 a.m. | AACG | 10:24 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:23 a.m. | FGL | 10:28 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:36 a.m. | NSTR | 10:46 a.m. | 10 min 0 s | No reason given in the feed |
| 10:38 a.m. | SEED | 10:43 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:42 a.m. | FVNNU | 10:52 a.m. | 10 min 3 s | LULD pause (limit up-limit down) |
| 10:43 a.m. | NWGL | 10:48 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 10:46 a.m. | NSTR | 10:56 a.m. | 10 min 0 s | No reason given in the feed |
| 10:50 a.m. | TRBG | 11:00 a.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 11:05 a.m. | NWGL | 11:10 a.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 11:33 a.m. | EOCN | 11:43 a.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 12:00 p.m. | EXOZ | 12:05 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 12:29 p.m. | FVNNU | 12:54 p.m. | 24 min 27 s | LULD pause (limit up-limit down) |
| 12:57 p.m. | FVNNU | 1:07 p.m. | 10 min 1 s | LULD pause (limit up-limit down) |
| 1:03 p.m. | ATIIU | 1:13 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 1:12 p.m. | BKHA | 1:17 p.m. | 5 min 3 s | LULD pause (limit up-limit down) |
| 1:19 p.m. | WZRD | 1:24 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 2:00 p.m. | YXT | 2:10 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 2:03 p.m. | RIBB | 2:13 p.m. | 10 min 0 s | LULD pause (limit up-limit down) |
| 2:49 p.m. | MHX | 2:54 p.m. | 5 min 0 s | Regulatory |
| 2:55 p.m. | SMCC | 3:00 p.m. | 5 min 0 s | LULD pause (limit up-limit down) |
| 3:05 p.m. | FVN | 3:10 p.m. | 5 min 3 s | LULD pause (limit up-limit down) |
| 3:10 p.m. | IBO | 3:20 p.m. | 10 min 0 s | No reason given in the feed |
| 3:54 p.m. | CHWM | 4:00 p.m. | 5 min 59 s | LULD pause (limit up-limit down) |
| 7:50 p.m. | FRGT | did not resume that day | News pending | |
| 7:50 p.m. | GP | did not resume that day | News pending | |
| 7:50 p.m. | CAPS | did not resume that day | News pending | |
| 7:50 p.m. | OBAI | did not resume that day | News pending | |
| 7:50 p.m. | AMTD | did not resume that day | No reason given in the feed |
Offerings filed
Offering filings with the SEC that day, from EDGAR, in New York time: the small caps in the lists above first, then the others. See offerings.
| Filed | Symbol | Form |
|---|---|---|
| 2:23 p.m. | WORX | S-3 |
| 12:15 a.m. | SVIA | EFFECT |
| 12:15 a.m. | RLYB | EFFECT |
| 12:15 a.m. | NXL | EFFECT |
| 12:15 a.m. | PINE | EFFECT |
| 12:15 a.m. | GLBS | EFFECT |
| 4:23 p.m. | NWCL | 424B3 |
| 4:23 p.m. | TNON | 424B5 |
| 4:30 p.m. | GLBS | 424B3 |
| 5:21 p.m. | MDCX | 424B3 |
Splits that took effect
| Symbol | Split | Took effect |
|---|---|---|
| KNDI | 1-for-10 reverse split | October 16, 2026 |
Trade this day
Replay October 16, 2026 in Hindsight Markets: the real tape, the order book and the halts for every stock, on a clock you control, and see where your orders would have filled.