Senát 2026 · forecast

Statistical model

A separate series: a three-layer statistical model with Monte Carlo simulation. It uses only official ČSÚ data and sees no betting odds. From Monday the AI agent gets it as an input, so we can compare four series: AI alone (2 Oct), model alone, AI + model, and the market.

Layers

  1. Party base: the Chamber election result (2025 for this year, 2021 for history) by precinct, mapped to Senate districts with ČSÚ's official mapping tables. A candidate's base is the sum of the shares of the parties that nominated or backed them. The national swing since the 2025 election comes from the poll average (Kantar, Median, NMS, STEM, Aug–Sep 2026); it is shared by all districts and drawn in the simulation.
  2. Local base: the municipal-election share (2018 for the 2020 and 2022 cycles, 2022 for 2024 and 2026) of local and regional movements that do not run in Chamber elections. Established national parties (SOCDEM, KSČM) are excluded.
  3. Candidate effect (round 1): a regression on 582 candidates from 2020–2024. Features: incumbent and former senator (from election history), mayor or governor and MP (from occupation), government party, ANO, STAN, KDU-ČSL, no party base, number of backing parties, number of candidates.
  4. Runoff: a model of the finalists' result from the round-1 margin, the same-bloc vote reservoir (DEM / ANO / NAT / other) and government affiliation. Fitted on about 80 runoffs.
  5. Simulation: 20,000 runs with a shared national swing, candidate noise and the runoff outcome. Finally, calibration p ∝ p0.55.

Validation (leave one election cycle out, 81 districts 2020–2024)

Model / heuristicBrier ↓log score ↑
statistical model0.673−1.40
probability proportional to party base0.770−1.75
incumbent 50 %, rest uniform0.783−1.78
uniform0.843−1.92

By cycle: 2020 0.748 · 2022 0.625 · 2024 0.645. The mean absolute error of the round-1 share is 5.8 pp. The model's favourite won in 44 % of districts.

Honest limitations

Round-1 coefficients (percentage points)

const-4.10
base+0.77
base_gov-0.30
local_extra+0.73
incumbent+10.99
former_senator+0.56
local_exec+2.55
mp+3.41
gov+1.32
ano+0.38
stan+5.35
kdu+6.08
no_base+2.84
n_support-1.28
inv_n+65.17

Code: tools/senat_model/, data: data/snapshots/*-model.json.