Slik fungerer modellenHow the model works
Hver klubb i Eliteserien og OBOS-ligaen har en styrkerating som lærer av hver kamp. To modeller gjør ratingene om til odds for hver kamp, og resten av sesongen spilles 50 000 ganger for å se hvor hver klubb trolig ender. Først kort forklart, så med alle formlene.
Every club in Eliteserien and OBOS-ligaen has a strength rating that learns from each match. Two models turn the ratings into odds for every match, and the rest of the season is played out 50,000 times to see where each club is likely to finish. First in plain words, then with every formula.
KortversjonenThe short version
- Hver klubb har en styrkerating. Den fungerer som sjakkratinger. Etter hver kamp tar vinneren poeng fra taperen: en seier alle ventet flytter ratingene litt, en overraskelse flytter dem mye. I 2026 ligger Eliteserie-klubbene mellom omtrent 1500 og 1900, OBOS-klubbene mellom 1230 og 1560, og alle står på samme skala, så en klubb tar med seg ratingen når den rykker opp eller ned. Mellom sesongene trekkes alle ratinger litt mot snittet i divisjonen, så et unntaksår ikke føres helt videre.
- Every club has a strength rating. It works like chess ratings. After each match the winner takes points from the loser: a win everyone expected moves the ratings a little, an upset moves them a lot. In 2026 the Eliteserien clubs sit between roughly 1500 and 1900 and the OBOS-ligaen clubs between 1230 and 1560, all on one scale, so a club keeps its rating when it goes up or down. Between seasons every rating is pulled a little toward its division’s average, so one freak year does not carry over in full.
- Flaks filtreres bort med forventede mål. Forventede mål (xG) måler hvor gode sjanser et lag fikk: et skudd fra seks meter er verdt langt mer enn ett fra tretti. En klubb som vinner 1–0 mens den blir utspilt, får mye mindre enn resultatet alene ville gitt, og en klubb som dominerte og tapte, mister mindre.
- Luck is filtered out with expected goals. Expected goals (xG) measure how good a team’s chances were: a shot from six metres is worth far more than one from thirty. A club that wins 1–0 while being outplayed gains much less than the result alone would give it, and a club that dominated and lost loses less.
- En annen modell teller mål. Hver klubb har også en angrepsrating, en forsvarsrating, en avslutningsrating og en keeperrating. Sammen sier de hvor mange mål hvert lag bør score i en gitt kamp, for eksempel 1.8 mot 0.9, og ut fra det får hvert resultat fra 0–0 til 8–8 en sannsynlighet. Mellom sesongene er det stallens markedsverdi som avgjør hvor disse ratingene trekkes: en dyr stall mot et nivå over snittet, en billig mot et nivå under.
- A second model counts goals. Each club also has an attack rating, a defence rating, a finishing rating and a goalkeeper rating. Together they say how many goals each side should score in a given match, say 1.8 against 0.9, and from that every scoreline from 0–0 to 8–8 gets a probability. Between seasons the squad’s market value decides where these ratings are pulled to: an expensive squad toward a level above the average, a cheap one toward a level below.
- De to blandes til kampoddsene. Begge modellene gir odds for hjemmeseier, uavgjort og borteseier. Oddsene på siden blander dem, en firedel fra styrkeratingen og tre firedeler fra målmodellen, fordi blandingen har truffet bedre enn hver av dem alene. I de siste rundene får en klubb som har noe å spille for et lite løft, og en klubb uten noe å spille for et lite trekk ned.
- The two are mixed into the match odds. Both models give odds for a home win, a draw and an away win. The odds on the site mix them, a quarter from the strength rating and three quarters from the goals model, because the mix has predicted better than either on its own. In the last rounds a club with something to play for gets a small push up, and one with nothing to play for a small push down.
- Resten av sesongen spilles 50 000 ganger. For hver kamp som gjenstår trekker datamaskinen et resultat ut fra oddsene, regner ut tabellen og begynner på nytt, 50 000 ganger. Vinner en klubb serien i 15 000 av disse sesongene, er gullsjansen 30 %. Hver simulerte sesong gjør også hver klubb litt sterkere eller svakere enn ratingen sier, fordi en rating er et anslag og formen endrer seg.
- The rest of the season is played 50,000 times. For every match left, the computer draws a result from the odds, works out the table and starts again, 50,000 times. If a club wins the league in 15,000 of those seasons, its title chance is 30%. Each simulated season also makes every club a little stronger or weaker than its rating says, because a rating is an estimate and form changes.
Hvordan vet vi at den virker?How do we know it works?
Hver del av modellen er testet på kamper den ikke hadde sett: hver kamp spås bare med det som var kjent før avspark, sesong for sesong, og en endring beholdes bare hvis den spår bedre. Over 4 800 kamper fra 2016 til 2025 er modellens odds 5.9 % bedre enn å bare bruke hvor ofte det blir hjemmeseier, uavgjort og borteseier. I Eliteserien er modellen 6.0 % bedre og bookmakernes sluttodds, som kjenner lagoppstillingene, 6.8 %.
Every part of the model was tested on matches it had not seen: each match is predicted only from what was known before kickoff, season by season, and a change is kept only if it predicts better. Over 4,800 matches from 2016 to 2025 the model’s odds are 5.9% better than simply using how often home wins, draws and away wins happen. In Eliteserien the model is 6.0% better and the bookmakers’ closing odds, which know the line-ups, 6.8%.
I dybdenIn depth
Resten av siden er modellen slik koden regner, versjon elo-v16.0. H står for hjemmelaget og A for bortelaget (away) hele veien.
The rest of the page is the model as the code computes it, version elo-v16.0. H stands for the home side and A for the away side throughout.
DataeneThe data
Alle seriekamper i Eliteserien og OBOS-ligaen fra 2015, begge divisjoner på én ratingskala, med sluttabellene fra 2014 som utgangspunkt. Forventede mål per skudd kommer fra FotMob for Eliteserien fra 2020, også xG på mål, som keeperratingen bruker, og fra Sofascore for OBOS-ligaen fra 2023. Eldre kamper rates på mål alene. Markedsverdiene for stallene kommer fra Transfermarkt, og i tillegg vet modellen hvilke klubber som spiller hjemmekampene på naturgress.
Every league match in Eliteserien and OBOS-ligaen from 2015, both divisions on one rating scale, with the 2014 final tables as the starting point. Expected goals per shot come from FotMob for Eliteserien from 2020, including xG on target, which the goalkeeper rating uses, and from Sofascore for OBOS-ligaen from 2023. Earlier matches are rated on goals alone. Squad market values come from Transfermarkt, and the model also knows which clubs play their home matches on grass.
1. Styrkeratingen1. The strength rating
Hver klubb har ett tall, ratingen R. Modellens forventning til hjemmelaget er den forventede poengandelen E, der seier teller 1 og uavgjort ½:
Each club has one number, its rating R. The model’s expectation for the home side is its expected score E, the share of the points it would take if a win counts 1 and a draw ½:
der h = 60 er hjemmefordelen og s en underlagsfordel på 20 poeng i Eliteserien når bortelaget spiller hjemmekampene sine på et annet underlag (gress mot kunstgress). I sluttspurten legger tabellinnsatsen også til på Δ (avsnitt 8). Ved 400 poengs forskjell er det sterkeste lagets forventede poengandel ti ganger det svakestes.
where h = 60 is home advantage and s a 20-point surface edge in Eliteserien when the visitors play their home matches on the other surface (grass against artificial turf). In the run-in, table stakes add to Δ as well (section 8). At a gap of 400 points the stronger side’s expected score is ten times the weaker side’s.
2. Fra ratingforskjell til odds2. From a rating gap to odds
E er ennå ikke tre odds: uavgjort tar litt fra begge sider. Uavgjort er mest sannsynlig mellom like lag og blir sjeldnere jo større forskjellen er, noe modellen beskriver med en klokkekurve. Halvparten av uavgjort-sannsynligheten tas fra hver side, så de tre oddsene gir den samme forventede poengandelen:
E is not yet three odds: a draw takes something from both sides. Draws are likeliest between equal sides and get rarer as the gap grows, which the model describes with a bell curve. Half of the draw’s probability comes off each side, so the three odds give the same expected score:
Toppen p0 = 0.26, sjansen for uavgjort mellom to helt jevne lag, og bredden på 375 poeng er tilpasset på 5 543 kamper.
The peak p0 = 0.26, the chance of a draw between two exactly level sides, and the width of 375 points were fitted on 5,543 matches.
Odds ut fra ratingforskjellenOdds by rating difference
3. Når en rating flytter seg3. How a rating moves
Etter kampen flytter begge ratingene seg like mye, i hver sin retning, så poengene en klubb vinner er poengene motstanderen taper:
After the match both ratings move by the same amount in opposite directions, so the points a club gains are the points its opponent loses:
Uten xG er S bare resultatet W: 1 for hjemmeseier, ½ for uavgjort og 0 for tap. Med xG ser S også på sjansene:
Without xG, S is just the result W: 1 for a home win, ½ for a draw and 0 for a defeat. With xG, S also looks at the chances:
X er poengandelen hjemmelaget ville fått om kampen ble spilt mange ganger med de to lagenes xG, xH og xA, og mål trukket fra Poisson-fordelinger (opptil 12 per lag, normalisert). Siste ledd er en xG-margin, som blir større jo mer det ene laget skapte enn det andre, med γ = 0.12 og c = 0.25. Fra 2022 er steget K = 30 og xG-vekten α = 0.30; før det var K = 20 og α = 0.45. S kappes ikke ved 0 eller 1, så en dominerende seier får hele marginen sin. Endringen kan deles i tre, ett ledd for hver del av S:
X is the share of the points the home side would take if the match were played many times at the two sides’ xG, xH and xA, with goals drawn from Poisson distributions (up to 12 a side, normalised). The last term is an xG margin, larger the more one side out-created the other, with γ = 0.12 and c = 0.25. From 2022 the step is K = 30 and the xG weight α = 0.30; before that K = 20 and α = 0.45. S is not cut off at 0 or 1, so a dominant win earns its full margin. The change splits into three, one term for each part of S:
En ratingendring, tatt fra hverandreA rating change, taken apart
4. Start og sesongskifte4. Where ratings start, and between seasons
Ratingene ble satt én gang, fra sluttabellene i 2014: begge divisjoner på én stige, der en plassering i OBOS-ligaen regnes som 14 plasser dårligere enn den samme i Eliteserien, spredt fra 1670 for seriemesteren til 1330 for sisteplassen i OBOS-ligaen. Siden er hver kamp spilt av i rekkefølge, så en klubb tar med seg ratingen over sesonger og mellom divisjoner. En klubb som kommer opp fra 2. divisjon, utenfor dataene, starter på 1330.
The ratings were set once, from the 2014 final tables: both divisions on one ladder, with a place in OBOS-ligaen counted 14 places below the same place in Eliteserien, spread from 1670 for the champions to 1330 for OBOS-ligaen’s last. Since then every match has been replayed in order, so a club carries its rating across seasons and divisions. A club coming up from 2. divisjon, the third tier and outside the data, starts at 1330.
Ved hver ny sesong trekkes hver rating 12 % mot snittet R̄ i sin egen divisjon (ω = 0.88), så et unntaksår ikke føres helt videre:
At each new season every rating is pulled 12% toward the mean R̄ of its own division (ω = 0.88), so one freak year does not carry over in full:
Markedsverdien er ikke med i dette trekket: testet ga den ingenting ekstra for Elo-ratingene, ut over det målmodellen allerede henter fra den (avsnitt 5). Unntaket er en klubb som rykker ned i OBOS-ligaen. Den trekkes halvveis, mot et nivå T satt av stallens markedsverdi V på Transfermarkt sesongen før mot divisjonens geometriske snitt V̄, i stedet for å beholde det meste av Eliteserie-ratingen:
Squad value plays no part in this pull: tested, it added nothing to the Elo ratings beyond what the goals model already takes from it (section 5). The exception is a club relegated into OBOS-ligaen. It is pulled half way, toward a level T set by its squad value V on Transfermarkt the season before against the division’s geometric mean V̄, instead of keeping most of its Eliteserien rating:
En nedrykket stall verdt dobbelt så mye som divisjonens typiske får T 52 poeng over snittet (75 · ln 2), og ratingen går halve veien dit.
A relegated squad worth twice the division’s typical one has T 52 points above the mean (75 · ln 2), and its rating goes half the way there.
5. Målmodellen5. The goals model
Den andre modellen gir hver klubb fire tall på en log-mål-skala: angrep a, forsvar d, avslutning f og keeper g. Kampens forventede mål er
The second model gives each club four numbers on a log-goals scale: attack a, defence d, finishing f and goalkeeping g. A match’s expected goals are
med β = 0.37 (et snittlag scorer e0.37 ≈ 1.45 mål), hjemmefordel η = 0.22 (25 % flere mål hjemme) og σ = 1.10, en strekk som brukes når modellen spår, fordi ratinger som oppdateres i faste steg henger etter og havner for nær snittet.
with β = 0.37 (an average side scores e0.37 ≈ 1.45 goals), home advantage η = 0.22 (25% more goals at home) and σ = 1.10, a stretch used when predicting, because ratings that update in fixed steps lag behind and end up too close to the average.
Angrep og forsvar lærer som Elo, men av mål. Etter kampen flytter avviket mellom det som ble observert og det som var ventet angrepet til laget som scoret opp og forsvaret til laget som slapp inn ned, med samme steg:
Attack and defence learn like Elo, but from goals. After the match, the gap between what was observed and what was expected moves the scoring side’s attack up and the conceding side’s defence down by the same step:
og det samme med H og A byttet om. G er målene, λ̂ er λ uten strekken σ. Med xG er observasjonen o 90 % xG og 10 % mål (αg = 0.9), og den gir et større steg, k = 0.05 mot 0.015 på mål alene, fordi xG er det renere signalet. Et avvik teller høyst 4 mål, og en klubbs første kamper i sesongen tar et større steg, så ratingene tar igjen vinterens overganger raskere (n er antall kamper klubben har spilt i sesongen):
and the same with H and A swapped. G is goals, and λ̂ is λ without the stretch σ. With xG the observation o is 90% xG and 10% goals (αg = 0.9), and it earns a larger step, k = 0.05 against 0.015 on goals alone, because xG is the cleaner signal. A surprise counts for at most 4 goals, and a club’s first matches of a season take a bigger step, so the ratings catch up with a winter of transfers sooner (n is the number of matches the club has played that season):
Avslutning og keeper er tregere mål:
Finishing and goalkeeping are slower measures:
Avslutning er en klubbs mål delt på xG over en hel sesong, ført inn i neste sesong og trukket 30 % mot divisjonens snitt. Keeperratingen sammenligner xG på mål (xOT) en klubb har møtt med målene den har sluppet inn (Gin) over de siste 45 kampene, mot det samme forholdet for divisjonens siste 240, med vekt κ = 0.75. Den teller fra 22 kamper, og bare i Eliteserien, der FotMob har xG på mål.
Finishing is a club’s goals over its xG across a whole season, carried into the next season and pulled 30% toward the division’s mean. Goalkeeping compares the xG on target (xOT) a club has faced with the goals it let in (Gin) over its last 45 matches, against the same ratio for the division’s last 240, with weight κ = 0.75. It counts from 22 matches, and only in Eliteserien, where FotMob has xG on target.
Mellom sesongene trekkes angrep og forsvar mot divisjonens snitt, men ikke mot selve snittet: målet flyttes etter hva stallen er verdt. V er stallens markedsverdi på Transfermarkt sesongen før og V̄ divisjonens geometriske snitt, så v er 0 for en typisk stall, positiv for en dyr og negativ for en billig:
Between seasons attack and defence are pulled toward the division’s mean, but not to the mean itself: the target moves with what the squad is worth. V is the squad’s market value on Transfermarkt the season before and V̄ the division’s geometric mean, so v is 0 for a typical squad, positive for an expensive one and negative for a cheap one:
og det samme for forsvaret d, mot d̄ + φv. Eliteserien bruker ω = 0.88 og φ = 0.2. OBOS-ligaen bruker ω = 0.75 og φ = 0.3, fordi stallene der skifter mer mellom sesongene og verdien sier mer, og en klubb som rykker ned dit får ω = 0.5. Bare delen som trekkes, 1 − ω, går mot målet, så verdien flytter ratingen (1 − ω)φv. For en stall verdt dobbelt så mye som divisjonens typiske (v = ln 2 ≈ 0.69) er det 0.017 i både angrep og forsvar i Eliteserien, rundt 2 % flere mål for og færre mot, 0.052 i OBOS-ligaen (rundt 6 %) og 0.10 for en klubb som rykker ned dit (rundt 12 %). En klubb uten verdi på Transfermarkt, som en klubb opp fra 2. divisjon, trekkes mot selve snittet, og en klubb uten historikk starter 0.15 under det.
and the same for the defence d, toward d̄ + φv. Eliteserien uses ω = 0.88 and φ = 0.2. OBOS-ligaen uses ω = 0.75 and φ = 0.3, because its squads change more between seasons and the value says more, and a club relegated into it gets ω = 0.5. Only the part that is pulled, 1 − ω, goes toward the target, so the value moves the rating by (1 − ω)φv. For a squad worth twice the division’s typical one (v = ln 2 ≈ 0.69) that is 0.017 in both attack and defence in Eliteserien, about 2% more goals scored and fewer let in, 0.052 in OBOS-ligaen (about 6%) and 0.10 for a club relegated there (about 12%). A club with no value on Transfermarkt, such as one coming up from 2. divisjon, is pulled toward the mean itself, and a club with no history starts 0.15 below it.
6. Resultatene6. Scorelines
Målene behandles som to Poisson-tall med snitt λ og μ, med Dixon og Coles’ korreksjon for de lave resultatene (ρ = −0.05), opptil 8 mål per lag, skalert så alt summerer til 1:
Goals are treated as two Poisson counts with means λ and μ, with Dixon and Coles’s correction for the low scores (ρ = −0.05), up to 8 goals a side, scaled to sum to 1:
og τ = 1 ellers. Summen av cellene der hjemmelaget scorer flest gir målmodellens egen sjanse for hjemmeseier, diagonalen sjansen for uavgjort og resten sjansen for borteseier.
and τ = 1 otherwise. Summing the cells where the home side scores more gives the goals model’s own home-win chance, the diagonal its draw chance and the rest its away-win chance.
En kamp gjennom begge modelleneA match through both models
7. De to modellene sammen7. The two models together
Oddsene på siden er en geometrisk blanding, en firedel Elo og tre firedeler målmodell (θ = 0.25), skalert så de summerer til 1. Vekten er valgt på tidligere sesonger, der blandingen spådde bedre enn hver modell alene.
The odds on the site are a geometric blend, a quarter Elo and three quarters goals model (θ = 0.25), scaled to sum to 1. The weight was chosen on past seasons, where the blend predicted better than either model alone.
Resultatene tar så hvem som vinner fra disse oddsene og hvor mange mål fra rutenettet: cellene for hvert utfall o (hjemmeseier, uavgjort, borteseier) skaleres til utfallets odds.
The scorelines then take who wins from these odds and how many goals from the grid: the cells of each outcome o (home win, draw, away win) are scaled to that outcome’s odds.
8. Tabellinnsats i sluttspurten8. Table stakes in the run-in
Sent i sesongen spiller en klubb nær en strek i tabellen (gull, Europa- eller opprykksplass, kvalifisering, nedrykk) som om den er sterkere enn ratingen sier, og en klubb uten noe å spille for som om den er svakere. Når begge lag har spilt 24 kamper, er hvert lags press
Late in a season, a club near a line in the table (the title, the European or promotion places, the play-offs, relegation) plays as if stronger than its rating says, and a club with nothing left to play for as if weaker. Once both sides have played 24 matches, each side’s pressure is
der m er avstanden i poeng til nærmeste strek, ℓ antall kamper igjen og ν = 0.8: 1 innenfor ett poeng av en strek, og så avtagende når avstanden blir større enn det som gjenstår å spille om. Forskjellen flytter spådommen, men aldri ratingene (ψ = 0.05):
where m is the distance in points to the nearest line, ℓ the matches left and ν = 0.8: 1 within a point of a line, then falling as the distance outgrows what is left to play for. The difference moves the prediction, never the ratings (ψ = 0.05):
Tabellen er den før kampdagen; i simuleringen er det hver simulerte sesongs egen tabell.
The table is the one before the match day; in the simulation it is each simulated season’s own table.
Press ut fra avstanden til strekenPressure by distance to the line
9. Sesongsimuleringen9. The season simulation
Tabellsjansene kommer av å spille hver gjenstående kamp 50 000 ganger. I hver gjennomkjøring trekker hver klubb først et styrkesjokk z fra en normalfordeling med standardavvik ξ = 0.20, som gjelder hele gjennomkjøringen, fordi dagens rating bare er et anslag. Sjokket vipper hver av klubbens kamper:
The table chances come from playing every remaining match 50,000 times. In each run every club first draws a strength shock z from a normal distribution with standard deviation ξ = 0.20, kept for the whole run, because today’s rating is only an estimate. The shock tilts each of the club’s matches:
Så trekkes hver kamps utfall fra disse oddsene, et resultat fra målmodellens celler for det utfallet, og tabellen sorteres på poeng, målforskjell, scorede mål og innbyrdes oppgjør. Etter siste runde spiller hver gjennomkjøring kvalifiseringen: OBOS-ligaens 3.–6. plass i enkeltkamper (5. mot 6., vinneren borte mot 4., så borte mot 3.), vinneren mot Eliteseriens nr. 14 over to kamper, og OBOS-ligaens nr. 14 mot et lag fra 2. divisjon over to kamper. Står det likt etter full tid, avgjør ekstraomgangene omtrent halvparten; resten går til straffer, som er et myntkast. Ratingene endres ikke i løpet av en gjennomkjøring. Med 50 000 gjennomkjøringer er den største tilfeldige feilen i en celle rundt et halvt prosentpoeng.
Then each match’s outcome is drawn from those odds, a scoreline from the goals model’s cells for that outcome, and the table is sorted on points, goal difference, goals scored and head-to-head. After the last round each run plays the play-offs: OBOS-ligaen’s 3rd to 6th in single matches (5th v 6th, the winner away at 4th, then away at 3rd), the winner against Eliteserien’s 14th over two legs, and OBOS-ligaen’s 14th against a side from 2. divisjon over two legs. A tie level at full time is settled by extra time about half the time; the rest go to penalties, a coin flip. Ratings do not change during a run. With 50,000 runs the largest sampling error in any cell is about half a percentage point.
Sluttplassering i 50 000 sesongerFinishing place in 50,000 seasons
10. Avgjørende kamper10. Decisive matches
Når en klubb har en reell sjanse til tittel, kvalik eller å berge plassen, er den avgjørende kampen det gjenstående oppgjøret som flytter den sjansen mest. Selv et stort utslag er bare gapet mellom to simulerte sjanser, ingen garanti, og de to oppgjørene i et par teller nesten likt, så det mest avgjørende oppgjøret er det som vises. Avgjørende kamper merkes bare i de ti siste rundene: testet på tidligere sesonger pekte utslagene før det ikke ut kampene som faktisk avgjorde noe. En lagside viser hele sesongen hva neste kamp gjør med sjansene.
When a club has a real shot at the title, qualification or survival, its decisive match is the remaining fixture that moves that chance the most. Even a large swing is only the gap between two simulated chances, not a guarantee, and the two legs of a pairing count almost the same, so the more decisive leg is the one named. Decisive matches are only flagged in the last ten rounds: tested on past seasons, earlier swings did not pick out the matches that went on to settle anything. A club page shows what its next match does to its chances all season.
11. Slik testes den11. How it is tested
Alt over er valgt fremover i tid (walk-forward): hver sesong spås med innstillinger tilpasset bare på sesongene før, og hver kamp bare med det som var kjent før avspark. Hovedmålet er log loss, den gjennomsnittlige overraskelsen over det som skjedde:
Everything above was chosen walk-forward: each season is predicted with settings fitted only on the seasons before it, and each match only from what was known before kickoff. The main yardstick is log loss, the average surprise at what happened:
der pn,on er sjansen modellen ga utfallet som faktisk skjedde i kamp n. Grunnratene, som alltid gir den samlede andelen hjemmeseire, uavgjort og borteseire, får L0 = 1.062, og 1 − L/L0 er hvor mye bedre modellen er. En endring tas bare i bruk når den slår versjonen før på kamper den ikke har sett, parvis over kampene og med en t-verdi, og da med en verdi trukket mot ingen endring. På 4 800 kamper 2016–2025 får dagens versjon L = 0.9997, 5.9 % bedre enn grunnratene; den første versjonen var 2.5 % bedre. I Eliteserien er modellen 6.0 % bedre og bookmakernes sluttodds 6.8 %; i sesongene med xG (Eliteserien 2020–2025, 1 440 kamper) 8.0 % mot 8.3 %. Hver versjon, og hvor godt oddsene stemmer med det som skjedde, står i modellvisningen.
where pn,on is the chance the model gave the outcome that actually happened in match n. Base rates, which always give the overall share of home wins, draws and away wins, score L0 = 1.062, and 1 − L/L0 is how much better the model is. A change ships only when it beats the version before on matches it has not seen, paired across matches and with a t statistic, and then at a value shrunk toward no change. On 4,800 matches 2016–2025 the current version scores L = 0.9997, 5.9% better than base rates; the first version was 2.5% better. In Eliteserien the model is 6.0% better and the bookmakers’ closing odds 6.8%; in the seasons with xG (Eliteserien 2020–2025, 1,440 matches) 8.0% against 8.3%. Every version, and how well its odds match what happened, is in the model view.
12. Det modellen ikke vet12. What the model does not know
- Lagoppstillinger, skader, karantener og overganger i løpet av sesongen. Spillertilgjengelighet er testet og ga ikke bedre odds; markedsverdiene kommer bare inn ved sesongstart.
- Det som skjedde før 2015, og 2. divisjon: en klubb som rykker opp derfra starter nederst på stigen og rettes av resultatene.
- Forventede mål før 2020 i Eliteserien og før 2023 i OBOS-ligaen: de kampene rates på mål alene.
- Form innenfor en simulert sesong: ratingene står stille, og styrkesjokket står for formen som endrer seg.
- Line-ups, injuries, suspensions and transfers during a season. Player availability was tested and did not improve the odds; squad values come in only at the start of a season.
- What happened before 2015, and 2. divisjon: a club coming up from there starts at the bottom of the ladder and is corrected by its results.
- Expected goals before 2020 in Eliteserien and before 2023 in OBOS-ligaen: those matches are rated on goals alone.
- Form within a simulated season: the ratings stand still, and the strength shock stands in for form that changes.