Swiss CPI m/m on CHFJPY: big-miss median deepens 2.9× through 4 hours (from -9.2p at 15m to -26.6p at 4h) while big-beat median doubles (+5.7p to +13.1p) — both tails amplify
First-ever CHFJPY News Impact anchor in the ledger. 199 non-contaminated Swiss CPI m/m releases, 15-minute window. Median walk perfectly monotonic across all 5 buckets: -9.15 / -4.55 / +0.60 / +3.10 / +5.70p. Pct-up walk has a small miss-side 15m inversion (big_miss 38.9% > small_miss 31.7%) that resolves by 1h. Both tails amplify through 4 hours — big-miss median goes -9.15 → -19.40 → -26.60p (2.9×) and big-beat median goes +5.70 → +11.50 → +13.10p (2.3×).
Prior CHF CPI posts covered USDCHF and EURCHF, both CHF-quote pairs. CHFJPY is a CHF-base pair, which flips the direction convention and is a distinct anchor.

The 5-bucket table at 15 minutes
| Bucket | n | Median | Pct-up | Reading |
|---|---|---|---|---|
| big_miss | 18 | −9.15p | 38.9% | textbook: CHF miss → CHFJPY down; amplifies through 4h |
| small_miss | 60 | −4.55p | 31.7% | muddier tape but same direction |
| in_line | 67 | +0.60p | 52.2% | flat |
| small_beat | 43 | +3.10p | 62.8% | textbook: CHF beat → CHFJPY up |
| big_beat | 11 | +5.70p | 63.6% | amplifies to +13.1p 77.8% up at 4h |
Both tails amplify through 4 hours
| Window | big_miss med | big_miss pct_up | big_beat med | big_beat pct_up |
|---|---|---|---|---|
| 1m | -3.65p | 16.7% | +2.00p | 63.6% |
| 5m | -4.55p | 16.7% | +1.00p | 54.5% |
| 15m | -9.15p | 38.9% | +5.70p | 63.6% |
| 30m | -12.65p | 27.8% | +6.20p | 54.5% |
| 1h | -19.40p | 26.7% | +11.50p | 77.8% |
| 4h | -26.60p | 13.3% | +13.10p | 77.8% |
Big-miss median walks -3.65 → -4.55 → -9.15 → -12.65 → -19.40 → -26.60p across the six windows — a 7.3× deepening from 1m to 4h, or 2.9× from 15m to 4h. Big-beat median walks +2.00 → +1.00 → +5.70 → +6.20 → +11.50 → +13.10p — a 6.6× amplification from 1m to 4h (2.3× from 15m to 4h). Pct-up walks tighten as the window widens: 4h big-miss 13.3% (2 of 15 up), 4h big-beat 77.8% (7 of 9 up).
Both tails carry the same message: on Swiss CPI release day, the initial 15-minute response is only 1/3 to 1/2 of what the 4-hour move will end up being. This is a slow-burn release, not a first-minute event.
The pct-up walk cleans up by 1 hour
| Window | big_miss | small_miss | in_line | small_beat | big_beat |
|---|---|---|---|---|---|
| 15m | 38.9% | 31.7% | 52.2% | 62.8% | 63.6% |
| 1h | 26.7% | 49.0% | 55.7% | 60.5% | 77.8% |
| 4h | 13.3% | 46.0% | 47.5% | 50.0% | 77.8% |
At 15m: 38.9 / 31.7 / 52.2 / 62.8 / 63.6% — small inversion between big_miss and small_miss. At 1h: 26.7 / 49.0 / 55.7 / 60.5 / 77.8% — strictly monotonic. At 4h: 13.3 / 46.0 / 47.5 / 50.0 / 77.8% — still strictly monotonic. The 15m miss-side inversion is a first-15-minute cross-noise artefact that resolves by 1h; the bucket-order signal comes through clean at every window from 1h onward.
Cross-link to today’s slot 2 CHFJPY post
Today’s slot 2 post argued that CHFJPY’s AGGREGATE weekday loudness is heavily concentrated in Thu/Fri 12:30-14:30 UTC (US-morning macro), with none of the top-20 loudest cells landing in Swiss or Japanese hours. Today’s slot 5 (this post) shows what happens on Swiss CPI RELEASE DAY specifically: domestic Swiss macro overrides the pure-US-flow-satellite regime for the release-day print itself. Both findings are true and non-contradictory — the aggregate cell-loudness metric averages one Swiss CPI print per Wednesday against ~20 other non-release Wednesdays, so the release-day 4-hour spike (which on this data is on the order of 27p median tail range) gets washed out of the cell average. On the release day, it’s a real 2-3× typical-day move.
Verification note
All numbers verified against live /api/v1/news-impact/stats and /api/v1/news-impact/releases on 2026-08-24. The 199-release sample spans January 2010 through the 2026-08-03 print. Swiss CPI m/m releases 06:30-08:15 UTC in a rotating early-morning window (63 releases at 07:15, 54 at 06:30, 44 at 08:15, 38 at 07:30). Tail sample sizes: big_miss n=18 at 15m falls to n=15 at 1h/4h; big_beat n=11 at 15m falls to n=9 at 1h/4h — 3 releases per tail dropped by the long-window contamination filter because a subsequent event landed inside the 4-hour post-release window. Chart generated via the standard pnpm insights:chart CLI for all 6 windows.