What happened when the X Liquidity incentives ended
2026-09-23 07:00 UTC to 2026-09-25 07:00 UTC · 48.00 h · 43,185 readings across 15 pools · largest hole none
Liquidity change by pool
In-range liquidity at the last reading of the window against the first. The asset pools first, then the route legs a sale passes through on its way to USDG.
Route legs
Window against the sessions
Before and after the campaign end
Two full engine captures, 2026-09-24 06:55 UTC and 2026-09-24 07:05 UTC. executable depth at 1% did not fall by one percent or more for any of the 10 assets; 0 rose by at least one percent and 0 changed regime. A verdict is held when C(1%) and C(3%) both moved less than 1%, fell or rose when they moved together, mixed when they disagreed.
| Asset | Verdict | Regime | C(1%) before | C(1%) after | C(1%) | C(1%) later | C(3%) | Credit Mark | Debt ceiling |
|---|---|---|---|---|---|---|---|---|---|
| BRK.Bx | Held | REFERENCE_CLOSED | $16.1K | $16.1K | $21.5K (33.46%) | ||||
| HKEXCx | Held | NORMAL | $10.8K | $10.8K | $228 (-97.88%) | ||||
| COINx | Held | REFERENCE_CLOSED | $7,064 | $7,053 | $6,314 (-10.60%) | ||||
| KUAIx | Held | THIN | $4,031 | $4,031 | $22 (-99.44%) | ||||
| ICEx | Held | REFERENCE_CLOSED | $6,282 | $6,282 | $14.3K (127.28%) | ||||
| MIXUx | Held | THIN | $1,077 | $1,077 | $83 (-92.32%) | ||||
| KOx | Held | REFERENCE_CLOSED | $6,274 | $6,274 | $18.8K (199.99%) | ||||
| SHEINx | Held | NORMAL | $5,693 | $5,693 | $1,484 (-73.93%) | ||||
| BMNRx | Held | REFERENCE_CLOSED | $8,676 | $8,663 | $13.6K (56.78%) | ||||
| SLVx | Held | REFERENCE_CLOSED | $8,009 | $8,009 | $2,606 (-67.45%) |
Executable depth at every capture
C(1%) in USDG: the largest sale that moves the price at most 1%, by walking the pool's ticks, at each capture, around 2026-09-24 07:00 UTC.
| Asset | 07:00 UTC window-start | 06:30 UTC campaign-pre | 06:55 UTC campaign-pre | 07:05 UTC campaign-post | 07:30 UTC campaign-post | 08:30 UTC campaign-post | 07:00 UTC window-end |
|---|---|---|---|---|---|---|---|
| BRK.Bx | $18.3K | $16.1K | $16.1K | $16.1K | $16.1K | $16.7K | $21.5K |
| HKEXCx | $15.9K | $10.8K | $10.8K | $10.8K | $10.8K | $1,856 | $228 |
| COINx | $7,006 | $6,720 | $7,064 | $7,053 | $7,050 | $6,045 | $6,314 |
| KUAIx | $8,042 | $4,031 | $4,031 | $4,031 | $4,031 | $3,521 | $22 |
| ICEx | $6,847 | $6,282 | $6,282 | $6,282 | $6,279 | $6,321 | $14.3K |
| MIXUx | $5,035 | $1,077 | $1,077 | $1,077 | $1,302 | $1,046 | $83 |
| KOx | $12.6K | $6,053 | $6,274 | $6,274 | $9,540 | $12.6K | $18.8K |
| SHEINx | $17.3K | $5,698 | $5,693 | $5,693 | $5,720 | $2,044 | $1,484 |
| BMNRx | $7,299 | $8,466 | $8,676 | $8,663 | $8,776 | $8,751 | $13.6K |
| SLVx | $7,658 | $8,009 | $8,009 | $8,009 | $8,009 | $3,549 | $2,606 |
Open against closed
How far in-range liquidity moved from one reading to the next, on average, while the underlying market was in its regular session and while it was shut. Basis points; never measured across a hole in the record.
| Asset | Market | Open, bp per reading | Readings | Closed, bp per reading | Readings |
|---|---|---|---|---|---|
| BRK.Bx | XNYS | 210.78 | 779 | 1.88 | 959 |
| HKEXCx | XHKG | 81.72 | 659 | 368.68 | 2,019 |
| COINx | XNAS | 16.35 | 779 | 1.36 | 959 |
| KUAIx | XHKG | 63.79 | 659 | 1.70 | 2,019 |
| ICEx | XNYS | 16.78 | 779 | 13.81 | 959 |
| MIXUx | XHKG | 24.46 | 659 | 6.20 | 2,019 |
| KOx | XNYS | 44.71 | 779 | 9.26 | 959 |
| SHEINx | XHKG | 40.61 | 659 | 2.14 | 2,019 |
| BMNRx | XNYS | 23.35 | 779 | 9.39 | 959 |
| SLVx | ARCX | 3.33 | 779 | 7.49 | 959 |
Findings
6 of 10 asset pools had less in-range liquidity in the hour after the campaign ended at 07:00 UTC on 24 Sep than just before it.
Last reading at or before 07:00 against the last reading at or before 08:00, per pool; KOx 95.62%, HKEXCx -67.49%, BRK.Bx 2.83%, COINx -1.68%, ICEx 0.63%, MIXUx -0.73%, KUAIx -0.51%, SHEINx -16.39%, BMNRx 1.56%, SLVx -41.06%.
Between the campaign-pre capture at 06:55 and the campaign-post capture at 07:05 UTC, executable depth at 1% did not fall by one percent or more for any of the 10 assets; 0 rose by at least one percent and 0 changed regime.
Full engine captures of every asset: executable depth at 1% and 3% by tick walk, the Credit Mark, the regime and the debt ceiling Kerb would publish.
By the 07:00 UTC capture, executable depth at 1% had fallen by 10% or more for 6 of 10 assets, the largest KUAIx at -99.44%, and risen by 10% or more for 4.
C(1%) at the last capture before the cliff against the last capture of the morning, per asset: BRK.Bx 33.46%, HKEXCx -97.88%, COINx -10.60%, KUAIx -99.44%, ICEx 127.28%, MIXUx -92.32%, KOx 199.99%, SHEINx -73.93%, BMNRx 56.78%, SLVx -67.45%. The Hong Kong market closes at 08:00 UTC, inside this interval, so for its assets the incentive end and the close cannot be told apart from these readings alone.
Now that the record holds sessions, it can compare them: for 8 of 10 assets, in-range liquidity moved more from minute to minute while the underlying market was in its regular session than while it was shut.
Mean absolute change between consecutive readings, never across a hole: BRK.Bx 210.78 bp open, 1.88 bp closed; HKEXCx 81.72 bp open, 368.68 bp closed; COINx 16.35 bp open, 1.36 bp closed; KUAIx 63.79 bp open, 1.70 bp closed; ICEx 16.78 bp open, 13.81 bp closed; MIXUx 24.46 bp open, 6.20 bp closed; KOx 44.71 bp open, 9.26 bp closed; SHEINx 40.61 bp open, 2.14 bp closed; BMNRx 23.35 bp open, 9.39 bp closed; SLVx 3.33 bp open, 7.49 bp closed.
What this report does not show
- Two days either side of one event is one observation of that event. It shows what happened here, not what always happens.
- The later comparison spans the Hong Kong close at 08:00 UTC; for HKEXCx, KUAIx, MIXUx and SHEINx the end of incentives and the market close overlap.
- In-range liquidity L is in protocol units, not dollars; executable depth C(1%) in the captures is the dollar measure.
- The session comparison measures how much L moved, not why. Liquidity providers act for reasons the record does not hold.
Every 60 seconds the collector reads each X Layer pool's slot0, in-range liquidity and initialised ticks and appends the reading. Around the campaign end, full engine captures were taken at 06:30, 06:55, 07:05, 07:30 and 08:30 UTC: executable depth at 1% and 3% by walking the pool's ticks, the Credit Mark, the regime and the debt ceiling. Every figure below is one of those stored readings or captures, or exact integer arithmetic on them.
Sources
- xstocks:price-data
- 39,813 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:0388.HK
- 5,759 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:0625.HK
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:1024.HK
- 5,759 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:2097.HK
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:BMNR
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:BRK-B
- 5,757 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:COIN
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:HKD=X
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:ICE
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:KO
- 5,758 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
- yahoo:chart:SLV
- 5,759 observations, 2026-09-23 07:00 UTC to 2026-09-25 06:59 UTC
Appendix: pool by pool
In-range liquidity L, protocol units (the pool's uint128 divided by 1018). L is not dollars; C(1%) is the dollar measure.
| Pool | L at start | L at end | Change | L low | L high | Readings | Address |
|---|---|---|---|---|---|---|---|
| KOx | 0.137 | 0.206 | +50.23% | 0.066 | 0.300 | 2,879 | 0x273D…3114 |
| HKEXCx | 0.233 | 0.003 | -98.50% | 0.001 | 0.250 | 2,879 | 0x293A…7Ed4 |
| BRK.Bx | 0.084 | 0.098 | +16.43% | 0.047 | 0.951 | 2,879 | 0x34Fa…A507 |
| COINx | 1,453.451 | 1,036.112 | -28.71% | 811.343 | 1,601.586 | 2,879 | 0x7013…5edF |
| ICEx | 0.058 | 0.119 | +104.59% | 0.033 | 0.119 | 2,879 | 0x8D01…736f |
| MIXUx | 0.107 | 0.010 | -90.43% | 0.010 | 0.130 | 2,879 | 0x94D6…c3b8 |
| KUAIx | 0.422 | 0.032 | -92.35% | 0.012 | 0.473 | 2,879 | 0x9D5d…a0f2 |
| SHEINx | 0.815 | 0.072 | -91.16% | 0.070 | 0.989 | 2,879 | 0xF1ef…4497 |
| BMNRx | 4,189.300 | 9,173.330 | +118.97% | 4,189.300 | 9,545.497 | 2,879 | 0xcd5a…729b |
| SLVx | 0.103 | 0.043 | -58.20% | 0.037 | 0.112 | 2,879 | 0xd510…f4a6 |
| Route leg | 0.037 | 0.070 | +88.98% | 0.037 | 0.070 | 2,879 | 0x6E18…F6D5 |
| Route leg | 0.017 | 0.016 | -7.92% | 0.016 | 0.017 | 2,879 | 0x91db…2663 |
| Route leg | 0.000 | 0.000 | 0.00% | 0.000 | 0.000 | 2,879 | 0xFD69…00ab |
| Route leg | 0.001 | 0.001 | 0.00% | 0.001 | 0.001 | 2,879 | 0xbB9a…0d40 |
| Route leg | 0.000 | 0.000 | +0.80% | 0.000 | 0.000 | 2,879 | 0xf055…cC0e |
Reproduce it
pnpm --filter @kerb/engine exec tsx scripts/market-time-report-2.ts regenerates this file from the observation store and the window captures in data/windows. Every row is a SELECT over append-only tables.
The hourly record behind every Market-Time Report, gaps included: Download the dataset (CSV) · JSON.
pnpm --filter @kerb/engine market-time-report