The deviation of daily vessel transits from a trailing baseline at seven maritime chokepoints, and the bilateral trade exposed when a stressed chokepoint lies on a modeled sea route.
Surface: /chokepoint-nowcast
BACI 202601 (CEPII), HS96, 1996-2024 (retrieved 2026-06-01)
For each of seven chokepoints, the endpoint averages n_total over the latest seven days and compares it with the preceding 90-day average, covering days -96 through -7 relative to the latest date.
Stress is red when deviation <= -0.15, amber when -0.15 < deviation <= -0.05, and green when deviation > -0.05. Red and amber chokepoints trigger the trade-at-risk calculation.
The trade calculation reads the latest available BACI bilateral year. Positive bilateral flows are mapped to chokepoints with a static continent-cluster sea-route heuristic, and a flow is counted for both its exporter and importer when at least one currently stressed chokepoint lies on the route.
Trade-at-risk is returned in thousands of USD. BACI values are thousands of USD and must be multiplied by 1,000 for display. Exposure share divides that value by the country's total exports plus imports.
The route returns the top 20 countries by exposed bilateral value, together with the stressed chokepoint codes contributing to each total.
The route heuristic follows continent-cluster origin-destination mapping. It models no vessel class, draft, canal fees, insurance, Arctic routes or Panama bypasses; it does not differentiate containerised, bulk and tanker cargo; intra-regional short-sea flows are marked none.
The related chokepoint workbench also reports static 30-day closure exposure as WORLD_USD times published chokepoint share times 30/365, and concentration ratios as the cumulative shares of the top N exporters.
deviation = (avg_7d_transits - avg_prior_90d_transits) / avg_prior_90d_transitsred if deviation <= -0.15; amber if -0.15 < deviation <= -0.05; green if deviation > -0.05risk(c) = sum X(o,d) where c is o or d and route(o,d) contains a stressed chokepointexposure_share(c) = risk(c) / (exports(c) + imports(c))closure_at_risk = WORLD_USD * chokepoint_share * 30 / 365CR_N = sum of the top N exporter shares in a route class| Path | Method | Returns | Example |
|---|---|---|---|
| /api/chokepoint-nowcast | GET | The latest source date and lag, seven chokepoint transit statuses with 90-day sparklines, and the top 20 countries by BACI trade exposed to currently stressed modeled routes. | /api/chokepoint-nowcast |