# gardera.ai — documentation

> AI-driven analystjänst för Stryktipset (Svenska Spel). Du driver ett genomtänkt
> systemspel i konversation med din AI-klient (Claude Desktop, ChatGPT eller
> annan klient som stödjer externa verktyg via MCP). Tjänsten hämtar veckans
> kupong, läser på inför varje match, värderar 1 594 323 möjliga rader och
> producerar en fil du laddar upp på Svenska Spel.

Den här sidan är en självständig referens — främst tänkt för AI-klienter som
behöver fast mark att stå på i en konversation, men också för människor som
vill förstå modellen utan grafiska element.

---

## Tre saker per match

För varje av de 13 matcherna i en omgång finns tre sammanlänkade men distinkta
storheter. Dessa är fundamentala för att förstå modellen.

### Picks (universumet)

Vilka utfall (1, X eller 2) du är beredd att spela på en match.

- **Spik** = 1 utfall (du bestämmer dig för en favorit)
- **Halvgardering** = 2 utfall (du tror på två rimliga utgångar)
- **Helgardering** = alla 3 utfall (du vill inte gissa alls)

Tillsammans definierar dina picks alla möjliga rader — *universumet* — innan
någon poängsättning sker. Universumets storlek är produkten av picks-storlekar
per match: spik bidrar med 1, halv med 2, hel med 3.

**Exempel**: 5 spikar, 6 halva, 2 hela = 1⁵ × 2⁶ × 3² = 1 × 64 × 9 = 576
möjliga rader.

**Hur du tänker när du sätter picks**:

- Spik när favoriten är tydlig och du har starka skäl att tro mer på utfallet
  än oddsen visar.
- Halvgardering när två utfall är rimliga — typiskt en jämn match där
  hemmafördelen knappt räcker.
- Helgardering när du faktiskt inte vet — bättre än att gissa fel på en spik.

**Konsekvens**: fler spikar = mindre universum, mer koncentrerade rader. Om
alla spikar håller blir topp-N kraftfullt — men en miss på en enda spik dödar
hela kupongen. Fler garderingar = bredare universum, mer robust mot oväntade
utfall — varje rad får lägre individuell sannolikhet, men du täcker fler
scenarier. Kostnaden påverkas inte av universumets storlek; bara av N
(antalet valda rader).

### Sannolikheter (din bedömning)

Dina egna sannolikheter `[p1, pX, p2]` för varje match. Tre tal som summerar
till ungefär 1.

Det är dina värden som driver poängsättningen. Utan dem härleds defaults från
oddsen, och då ligger du där bookmakern redan ligger — alltså ingen edge.
Sätter du egna och de avviker från oddsen åt rätt håll har du en *edge*.

Det finns ingen "sann" sannolikhet i en fotbollsmatch — bara olika
bedömningar: dina, bokmakarens, folkets.

**Exempel**: `[0,55, 0,27, 0,18]` för en hemmafavorit du tror lite mer på än
marknaden.

**Hur du tänker när du sätter sannolikheter**:

- Använd odds som riktvärde, men avvik där du har information som bookmakern
  inte fullt prisat in (skador, formkurva, väder, taktiska upplägg).
- Var inte för tvärsäker — sätt sällan något över 0,75 på en fotbollsmatch,
  även när favoriten ser given ut. En skada eller en utvisning kan vända allt.

**Konsekvens**: om dina sannolikheter ligger nära oddsen har du ingen edge —
du tippar i linje med marknaden. Avviker du åt rätt håll (du kalibrerar
bättre än bookmakern) → edge. Avviker du åt fel håll → systematiska förluster
över tid.

### Svenska folket (vad andra spelar)

Hur den genomsnittlige Stryktipset-spelaren har lagt sina tippade utfall.
Hämtas automatiskt med kupongen.

Värdefull eftersom utdelningen i Stryktipset delas mellan vinnande rader — om
många har samma rad blir potten tunn. Att avvika från folket på rätt sätt
avgör hur mycket du vinner när du har rätt.

**Exempel**: 85 % av folket på ettan, du tror 0,55 på ettan → du tar troligare
halv eller hel istället.

**Hur du tänker kring folket**:

- Folket är inte sanningen — bara en majoritet som ofta lutar för tungt mot
  favoriterna. Använd det som en signal om var potten kommer att vara tunn.
- Om dina sannolikheter och folket säger samma sak: du är på en *folklig*
  rad. Du kommer ha rätt ofta men dela vinsten med många andra.
- Om dina sannolikheter avviker från folket: du tar en
  *anti-folket-position*. Du har rätt mer sällan, men när du har rätt blir
  potten större.

**Konsekvens**: stryktipset-vinster är skevt fördelade. Att slå folket *när du
har rätt* är ofta värt mer än att ha en aning högre träffsäkerhet.

---

## Två steg, inte ett

Modellen körs i två tydliga steg:

**Steg 1 — Picks bestämmer universumet.** Multiplicera picks-storlek per match.
Ingen poängsättning, ingen vikt — bara kombinationerna som existerar.

**Steg 2 — Sannolikheter + α/γ + filter väljer N rader ur universumet.** Av
universumet rangordnas alla rader och de N högst poängsatta väljs ut. Du
betalar för N rader, inte för universumet.

### Det är inte ett reduktionssystem

Klassiska reduktionssystem spelar *alla* kombinationer från ditt universum
(576 rader = 576 kr). gardera.ai gör inte det — det tar de N bäst rankade ur
universumet. Du kan ha 576 möjliga rader och ändå bara spela 200 (de mest
högkvalitativa). Universumets storlek är inte kostnaden — N är.

**Storleksriktmärke**: håll universumet klart större än N — runt 5–20× är en
bra start. Är universumet ungefär lika stort som N väljer du i praktiken alla
rader och scoringen kommer aldrig till nytta — då hade du lika gärna kunnat
spela hela universumet rakt av.

---

## Reglagen

### α (Alpha) — Tilltro till din bedömning

Hur tungt scoringen viktar dina sannolikheter — alltså hur hårt raden ska luta
på det du själv tror händer. Hög α drar mot rader där dina favoriter står;
låg α tillåter rader som offrar din bedömning till förmån för unicitet.

Riktvärden:

- `α = 1,5` — vågar mer, lutar mot uniciteten
- `α = 2,0` — default, balanserat
- `α = 3,0` — litar tungt på din bedömning

**Konsekvens**: sätter du α för högt blir scoringen helt styrd av dina
sannolikheter — du får rader nära din favorit. Om dina sannolikheter dessutom
ligger nära folkets hamnar du i samma rader som många andra spelar. Sätter
du α för lågt får du udda rader som inte ens du själv tror på. Default α=2 är
ett rimligt utgångsläge; justera 0,3 i taget och se vad som händer.

### γ (Gamma) — Unicitet

Hur tungt scoringen viktar att raden avviker från vad svenska folket spelar.
Hög γ söker rader få andra har; låg γ ignorerar folket och optimerar bara på
dina sannolikheter.

Riktvärden:

- `γ = 0,0` — bortse helt från folket; bara dina sannolikheter styr
- `γ = 0,5` — default, viss unicitetsbonus
- `γ = 1,5` — aggressivt mot strömmen

**Konsekvens**: hög γ är värdefull i Stryktipset eftersom potten delas mellan
vinnande rader — om många har samma rad blir potten tunn. Men för hög γ tar
dig till rader som nästan ingen spelar — och om de inte heller passar din
bedömning blir det dubbelt fel. Balansera γ mot α: när α är låg räcker det
med γ=0,5; när du höjer α kan du höja γ också för att kompensera.

**Specialfall**: sätt γ=0 om du vill plocka ut dina rent mest sannolika rader
och struntar i hur potten delas — då blir scoringen bara en funktion av dina
egna sannolikheter.

### N — Antalet valda rader

Det är detta du betalar för — 1 kr per rad i Stryktipset. 100 rader = 100 kr.
Inte universumets storlek.

Olika strategier blir olika intressanta vid olika N. Säkra system fungerar i
lägre N; kontra-folket-system brukar behöva fler för att fånga upp uniciteten.

**Konsekvens**: för litet N och du missar nästan alltid 13 rätt. För stort N
och du blöder pengar på lågkvalitativa rader längre ner i listan. Riktmärke:
100–300 rader för hobby; 500–1000 om du letar systematiskt efter 13 rätt och
har tålamod över många omgångar.

### Filter — finkalibrering

Innan urvalet skärs ner till N rader kan du peta bort hela klasser av rader
som inte passar din profil. Filter är valfria, men ett par stycken gör nästan
alltid resultatet renare.

**Spridning mellan rader** *(aka Hamming-distans)*: minsta antal matcher där
två valda rader måste skilja sig åt. Sprider urvalet över ett bredare
sannolikhetsspann istället för att samla rader runt en favoritrad. Distans
= 2 är ett vanligt utgångsläge — du behåller den breda täckningen utan att
förlora möjligheten till 12 rätt, eftersom två olika 12-rätt-rader naturligt
skiljer sig på minst två matcher från varandra.

**Min/max ettor, kryss, tvåor**: intervall för hur många hemmaseger,
oavgjorda eller bortavinster en rad får innehålla. Sätt golv för balans, eller
tak för att stänga ute extrema rader som "alla 13 hemma".

**Max samma utfall i följd**: tak på sviter. Inga osannolikt långa svängar —
t.ex. inte fler än fyra hemmaseger eller kryss i rad. Plockar bort rader som
ser orealistiska ut.

**Hoppa över topp-N**: skippa de N högst rankade raderna och börja urvalet
längre ner. Användbart när toppraderna är så uppenbara att också alla andra
spelar dem — du tar näst-bästa istället, där färre medspelare ligger.

---

## Rangordningen — så väljs raderna

Varje rad i universumet får en *score*. De N högst rankade tas till ditt
spelade urval (efter att filter applicerats).

Formeln:

```
score = α · log P + γ · log U
```

där:

- `P` = produkten av *dina* sannolikheter för utfallen i raden, över de 13
  matcherna
- `U` = produkten av (1 − folket-%) för samma utfall, över de 13 matcherna
- `α, γ` = vikterna du satt — säkerhet respektive unicitet

Att räkna i logaritmer är inte kosmetik — utan dem skulle multiplikationen
över 13 matcher snabbt bli astronomiskt liten. Logaritmen vänder produkterna
till summor, vikterna får en vettig effekt och varje rad får en jämförbar
score.

---

## Strategier & presets

### Strategier

En *strategi* är en namngiven uppsättning av picks, sannolikheter, scoring och
filter. Per omgång kan du ha flera namngivna strategier (t.ex. "balanced" och
"kontra-folket"), var och en med egna picks/sannolikheter/scoring.

När omgången är avgjord utvärderas *varje* strategi mot samma resultat. Då
kan du jämföra: vilken hade bäst ROI? Hur många 13 rätt? Var det α/γ-vikten,
picks-mönstret eller filtren som gjorde skillnad?

- Skapa en strategi när du börjar — eller låt en automatisk "default" skapas
  första gången du sätter en pick.
- Byt aktiv strategi när du vill prova ett annat angreppssätt.
- Ladda ner systemspelfiler per strategi — namnet följer med i filnamnet.

### Presets

En *preset* är en sparad scoring-konfiguration: alpha, gamma, antal rader och
filter — paketerade under ett namn. Användbart när du vecka efter vecka kör
samma kombination och inte vill skriva ut alla värden varje gång.

Skillnaden mot strategier: en preset är bara en mall — den finns på ditt
konto, inte på en specifik omgång. En strategi är vad du faktiskt körde på en
given omgång. Tänk preset som receptet, strategi som måltiden.

Exempel-presets:

- `balanced` — α 2,0, γ 0,5, 200 rader (default — säker grund)
- `kontra-folket` — α 1,5, γ 1,5, 300 rader (söker rader få andra spelar)
- `safe-100` — α 3,0, γ 0,2, 100 rader (favorittunga, billigt)

---

## Slash-kommandon

Slash-kommandon är guidade flöden i din AI-klient. Skriv kommandot,
eventuellt med argument, och AI:n vet precis vilka steg som ska köras.

### `/gardera/analyze` — bygg ett system

När en ny omgång har öppnat och du vill jobba mot den.

Tar dig hela vägen från tom kupong till färdig fil. Hämtar veckans kupong,
läser på inför varje match, sätter sannolikheter, föreslår garderingar,
väljer rader och skapar nedladdningsfilen.

Argument:

- `rows` — antal rader att välja. Default 200.
- `style` — `safe` / `balanced` / `contrarian`. Sätter α och γ åt dig så du
  slipper finjustera själv.
- `strategy` — namn på strategin du jobbar mot. Valfritt.

### `/gardera/settle` — utvärdera avgjord omgång

När matcherna är spelade och du vill se utfallet.

Hämtar resultatet och vinstplanen, räknar hur många rätt varje vald rad fick,
summerar vinst och ROI. Har du flera strategier på samma omgång jämförs de
sida vid sida.

Argument:

- `date` — datum för omgången (YYYY-MM-DD). Utan värde används aktiv omgång.

### `/gardera/explain` — förklara modellen

När du vill förstå hur det fungerar — eller behöver förklara för någon
annan.

Går igenom modellen: skillnaden mellan picks (universumet) och sannolikheter
+ N (urvalet), scoring-formeln, varför det inte är ett klassiskt
reduktionssystem, och vad strategier ger dig över tid.

---

## Flöde

Det typiska flödet under en vecka:

```
start_round → enrich_match × 13 → set_match (sannolikheter) →
suggest_coverage (sätter picks) → preview_combinations →
score_and_select → download_file
```

Efter avgjord omgång:

```
fetch_results → evaluate_selection → list_strategies (för att jämföra om flera)
```

### Kompass

Om du tappar bort dig i flödet — säg bara "visa aktiv omgång". Svaret
innehåller alltid ett `nextStep`-fält som föreslår nästa naturliga steg
baserat på vad som redan är gjort. Du behöver inte memorera ordningen.

---

## Ansvar

gardera.ai är en oberoende analystjänst. Inte ansluten till Svenska Spel AB.

AI:n kan räkna fel eller missförstå dig. Granska alltid kupongen innan du
skickar in den — slutkontrollen är på dig. Spela aldrig mer än du har råd
att förlora. Stödlinjen: 020-81 91 00 · stodlinjen.se
