Källrapport: EXP-0009
Tillbaka till forskningsposten
Oförändrad rapportkopia. Rapportens resultat gäller försöket, inte appens allmänna träffsäkerhet.
# EXP-0009 — Regimtröskel: betingad driftpunkt i ett blandat fönster
Preregistrering: research/hypotheses/HYP-0006-regimtroskel.md incheckad 2026-09-07 18:29:36 +0200 (6502a65)
Fönster 2026-07-25T00:00 → 2026-07-29T00:00, 2 oberoende körningar.
## Status per arm
Denna tabell avgör vad som får citeras. Den säger ingenting om vad
som är intressant.
| arm | status | skäl |
|---|---|---|
| `fast_20` | **mätt** | identisk i 2 processer |
| `fast_18` | **mätt** | identisk i 2 processer |
| `regim_q05_18` | **mätt** | identisk i 2 processer |
| `regim_q05_18_invers` | **mätt** | identisk i 2 processer |
| `regim_q02_18` | **mätt** | identisk i 2 processer |
| `regim_q15_18` | **mätt** | identisk i 2 processer |
| `regim_n2_18` | **mätt** | identisk i 2 processer |
| `regim_n12_18` | **mätt** | identisk i 2 processer |
| `regim_q05_16` | **mätt** | identisk i 2 processer |
| `sanity_alla_blota` | **mätt** | identisk i 2 processer |
| `sanity_inga_blota` | **mätt** | identisk i 2 processer |
Citerbara: 11. Suspenderade: 0.
## Körningar
- `result_1.json` — styrker villkor 1-2: kod 57ae734, moduler b3c6688a19ade97d; datatillgång 1.000 (8646/8646)
- `result_2.json` — styrker villkor 1-2: kod 57ae734, moduler b3c6688a19ade97d; datatillgång 1.000 (8646/8646)
## Utfall mot hypotesen
Fönstret (W1, screenat per §5, D0=2026-07-24, se `window_selection.md`):
150 punkter, 1 026 händelser, basfrekvens 6,58 %. S1 (marginalfördelningen av
b₆) klarades i förhand — se `s1_result.json` — så q=0,05 kvarstår primärt.
Alla 11 armar citerbara (K1–K8 uppfyllda: se `code`/`data`/`regime`-blocken i
resultatfilerna, K4:s test i `tests/test_regime.py` grönt, K5 bekräftat nedan).
Talen nedan är från `python -m app.backtest.exchange result_1.json` (armarnas
egna tal, inte omräknade för hand):
| arm | +varn | +falska | hand + | hand − | netto (ΔE) | falska/netto |
|---|---|---|---|---|---|---|
| `fast_18` | 100 | 55 | 46 | 15 | 31 | 1,8 |
| `regim_q05_18` | 40 | 28 | 10 | 0 | **10** | **2,8** |
| `regim_q05_18_invers` | 63 | 30 | 36 | 15 | **21** | 1,4 |
**K5 (maskineriet):** `sanity_alla_blota` == `fast_18` och `sanity_inga_blota`
== `fast_20`, kolumn för kolumn, i båda oberoende körningar. Betingnings-
mekaniken kollapsar rätt vid extremt q. (352 återfall av 172 950 celler i det
här fönstret — några celler hade för få kända slots; det stör inte K5, se
`regime.resolve_min_dbz`s docstring för varför.)
### P1 — pekar indikatorn åt rätt håll?
ΔE(regim_q05_18) >= 3 × max(ΔE(invers), 0) och ΔE(regim_q05_18) >= 8
ΔE(primär) = 10, ΔE(invers) = **21**. 10 ≥ 3×21=63 är falskt redan innan
8-tröskeln är relevant. Det explicita motsägelsevillkoret i §4 —
**"Vinner inversen minst lika många nettohändelser som den primära armen är
hypotesen förkastad"** — är uppfyllt med god marginal: inversen vinner mer än
dubbelt så många nettohändelser (21 mot 10). **P1 är motsagd**, inte bara
obekräftad. b₆ pekar inte tillförlitligt åt rätt håll i det här fönstret —
möjligen åt fel håll, även om konstruktionen (armarna delar inte nästling)
gör att "fel håll" inte kan läsas som starkare än "ingen riktning alls."
### P2 — köper betingningen billigare än en likformig sänkning?
växelkurs(regim_q05_18) = 28/10 = **2,8**. växelkurs(fast_18) = 55/31 = **1,8**.
P2 kräver 2,8 ≤ 0,60×1,8=1,08 — långt ifrån. Kvoten 2,8/1,8=1,56 ≥ 1,0, vilket
är det uttryckliga motsägelsevillkoret ("betingningen köper inte billigare
alls"). **P2 är motsagd**: den betingade sänkningen är dyrare per nettohändelse
(2,8 falsklarm) än att sänka tröskeln likformigt överallt (1,8).
### P3 — kollapsar inte precisionen?
precision(`fast_20`) = 0,719. precision(`regim_q05_18`) = 0,695. Fallet är
0,024, under ribban 0,03 — **P3:s första villkor är inte motsagt.**
Varningar per punkt och dygn: `regim_q05_18` 685/600 = 1,142,
`fast_18` 745/600 = 1,242. 1,142 ≤ 1,242 — **inte motsagt.** **P3 håller.**
Den svagaste av de fyra förutsägelserna är den enda som inte faller.
### P4 — avstår indikatorn i torrt väder?
Prövas i `EXP-0010` (W2). Se den rapporten för talen; sammanfattat: kvoten
ΔA(regim)/ΔA(fast_18) = 19/43 = **0,442** — över bekräftelseribban (≤0,25) men
under motsägelseribban (>0,50). **P4 varken bekräftas eller motsägs**, men
§6 kräver att P4 *håller* (≤0,25) för att hypotesen ska stå — och det gör den
inte.
### Sammanfattning: hypotesen står inte
§6: **"P1 och P4 måste hålla, och P3 får inte motsägas."** P1 är motsagt (inte
bara obekräftat — inversen vann fler nettohändelser än den primära armen, det
uttryckliga förkastandevillkoret i §4). P4 håller inte (0,442 > 0,25). P3
håller. Eftersom P1 måste hålla och gör motsatsen är utfallet entydigt:
**HYP-0006 står inte, i den här konstruktionen, i de här två fönstren.**
Det är inte ett svagt eller gränsfallsutfall som en annan klustring eller ett
tredje fönster sannolikt vänder: nollkontrollen VANN över den primära armen,
vilket är den starkaste formen av motsägelse konstruktionen kan ge (§4:s egen
formulering). b₆ vid punktens egen pixel, sex timmar bakåt, bär i det här
materialet inte information om var en tröskelsänkning lönar sig — möjligen
för att avsvalningsmekanismen (§ 8.4, pausen som förstör grannars träffar,
suspenderad sedan tidigare) dominerar över regimsignalen, möjligen för att
indikatorn helt enkelt inte fångar rätt storhet. Ingetdera går att skilja åt
i den här designen (§9: "Hur mycket av en vinst som är regim och hur mycket
är avsvalning" var redan preregistrerat som oavgörbart).
**Sensitivitetsarmarna** (`regim_q02_18`, `regim_q15_18`, `regim_n2_18`,
`regim_n12_18`, `regim_q05_16`) ligger alla i samma härad (ΔE 9–20, växelkurs
0,7–4,3) — ingen av dem vänder slutsatsen, och de prövas inte formellt mot
P1–P4 (bara `regim_q05_18` är preregistrerad som primär).