2026 House & Senate · the desk’s forecast against the Polymarket board
The Midterms Model2026 House & Senate
control of the HouseD 88%·R 12%
control of the SenateD 67%·R 33%
How to read thisThe two numbers above are the model’s probabilities for who controls each chamber after the election, shown for both parties; they always add to 100. “The model” means the desk’s own forecast, built from history and fundamentals — it never looks at what people are betting. D {D["p_house"]*100:.0f}% means: if this election were run many times from today, Democrats would win the House in about {D["p_house"]*100:.0f} of 100 runs and Republicans in about {100-D["p_house"]*100:.0f}.
The chambers
House: the model puts Democratic control at 87.6% (Republican 12.4%); the Polymarket contract on Democratic control trades at 92.5c — 4.9 points apart. Senate: the race simulation gives Democratic control 66.6% (Republican 33.4%) against 65.5c — 1.1 points.
model against the price for each chamber; the small green ticks under the axis show where the price would sit if it carried a longshot bias (b = 1.31, 1.73)
How to read thisEach row is one chamber on a scale from 20% to 100%. The blue dot is the model’s probability; the green ring is the Polymarket price. On Polymarket a contract that pays $1 if Democrats win is quoted in cents, and its price is the crowd’s implied probability — 92.5c means the market thinks 92.5%. The purple bracket measures how far apart the two are. The small hollow green ticks show where the price would move to if the market systematically overpays for favorites (a known bias called “longshot bias”); they are a what-if, not a prediction.
Balance of power
Four ways the chambers can land. Green is what the Polymarket board pays for each; blue is the race simulation’s joint draw. The prices imply the chambers are correlated at φ = +0.36; the model’s own draw has φ = +0.22.
joint outcomes — model from Race_FV, prices from the balance-of-power legs
How to read thisA two-by-two grid of the four ways the election can end: who holds the Senate (rows) crossed with who holds the House (columns). In each box the green figure is what Polymarket charges for that exact combination, and the blue or red figure is the model’s probability of it. The purple number at the right of each box is the difference. φ (“phi”) is a correlation: how much the two chambers tend to swing together. A higher φ means the market thinks a good night for one party in one chamber usually comes with a good night in the other.
Triangulation
The disagreement reduces to one number, the national House vote. Our fundamentals say D+6.18. The Polymarket House price implies D+7.32, its Senate ladder D+9.63. The special elections, faded to November, give a range rather than a point — D+4.3 to D+9.4 — because the fade itself is disputed.
where each source puts the national House vote — the model uses none of the others as an input
How to read this“National House vote” is the total of every House race added up across the country, expressed as a margin: D+6.18 means Democrats ahead by 6.18 points nationally. This line shows where several different sources put that number. “PM House” and “PM Senate” are what Polymarket’s prices would have to assume about the national vote to be right. “Specials” is the swing seen in special elections held so far this cycle. The yellow band is the gap between the model and the House price — the single number the whole disagreement comes down to.
The modelthe independent forecast
House vote, medianD+6.18
tipping pointD+2.2
How to read this“House vote, median” is the model’s central estimate of the national House margin. The “tipping point” is the national margin Democrats need for the House to be a coin flip — because of how districts are drawn, an even national vote does not give an even chance of control. Here Democrats need about a one-point national lead just to be at 50/50.
Where the vote lands
The tipping point is D+2.2: Democrats need about a point to be even money on the House. The median sits 4.0 points past it. Nine in ten draws land between D+0.4 and D+12.0.
national two-party House margin — four regression specifications, weighted equally, with input and tipping-point uncertainty folded in
How to read thisA histogram: the horizontal axis is the national House margin (R+8 on the left through D+16 on the right), and taller bars mean more likely outcomes. Blue bars are outcomes past the tipping point, where Democrats would take the House; red bars are outcomes short of it. The share of blue is the House probability. The solid line marks the tipping point, the dashed blue line the model’s median, and the purple dashed line the national margin that Polymarket’s House price implies.
Seats
The joint simulation turns the vote into seats. Median 229 Democratic seats (206 Republican); nine runs in ten land between 210 and 239. The distance from the majority line to the middle of that band is what the House probability is made of.
House seats, counted on the Democratic side (Republican seats are 435 minus): 5th, median and 95th percentile from the Joint sheet
How to read thisThe same forecast, translated from a national margin into a number of House seats. 218 is a majority of the 435. The hatched band holds the middle 90% of simulated outcomes, the ring is the median, and the vertical line is the majority. How far the band sits to the right of that line is what makes the House probability high.
What a point of vote buys
House on the left axis, Senate on the right. A point of national vote buys about 2.8 House seats but only 0.5 Senate seats. The Senate line is the leans-only construction, without this year’s race polls: at the model’s vote it gives 49.7 expected Democratic seats against the 51 needed, and the polls on the Senate page add about 1.3.
seats-votes curves for both chambers. The Senate curve is the leans-only construction — each state’s 2024 lean and one national swing, before this year’s race polls; the race simulation on the Senate page, which has the polls, sits about 1.3 seats higher
How to read thisA “seats-votes curve” answers: if the national margin were X, how many seats would that produce? The horizontal axis is the national margin. The blue line reads on the left axis (House seats out of 435); the amber line reads on the right axis (Democratic Senate seats out of 100, counting the seats not up this year). The dashed lines are the majority thresholds — 218 and 51. The House line is steep because many districts are competitive; the Senate line is shallow because this year’s map tilts Republican, so the same national swing buys far fewer Senate seats.
Every figure on this page is computed from the workbook’s cached values; no market price is an input.
Houseall 435 districts
districts in play (25–75%)75
edges that clear the floor12
How to read this“In play” means the model gives Democrats between a 25% and a 75% chance of winning the district — close enough that it could go either way. “Edges that clear the floor” counts the districts where the model disagrees with the Polymarket price by enough to cover trading costs; pages 6 and 8 explain that idea fully.
Every district
Every district the model publishes, ordered from the most Democratic to the most Republican. The band between 25% and 75% holds the 75 districts that are in play; the rest of the map is settled. 39 districts are withheld — mostly seats whose last contest was uncontested, so there is no swing to measure.
every district, most Democratic to most Republican; the height is the Democratic probability (Republican = 100 minus); the shaded band is the competitive range
How to read thisAll 435 House districts in one line, sorted from the safest Democratic seat on the left to the safest Republican seat on the right. The height of the line is the model’s probability that a Democrat wins that district: blue where it is above 50%, red where it is below. The shaded band between 25% and 75% is the competitive zone; the number of districts inside it is the count of real contests. The gray ticks at the far right are districts the model does not rate, usually because nobody ran against the incumbent last time, so there is no result to build on.
The seats that decide it
In the House the decisive seat is spread far thinner: NJ-07 leads at 1.1%, and the top twelve districts together decide control in only 12% of runs. There is no single district to watch; there is a band of about 54 that each carry at least half a percent.
How to read thisSame construction as the Senate: in each run the districts are ordered by how well each party did, and the one that delivers the 218th seat is that run’s tipping-point district. The bar is how often each district plays that role; the figure on the right is the model’s own call on the district.
tipping-point probability by race, from Race_Pivotal — 40,000 runs of the race simulation; the twelve most likely of the 434 counted
The districts in play
One row per district in the competitive band, sorted by the model. The dot is the favored party’s chance of winning, in that party’s color, and the label gives its number; the green ring is the Polymarket price of the same side; the line between them is the disagreement. Purple marks an edge that clears the cost floor; most district quotes are too thin to trade, which is why so few do.
fair values from Race_FV; district prices and edges from Compare_Contracts, net of the Mkt_Costs floor
How to read thisOne row per competitive district, sorted by the model. The filled dot and label are the favored party’s probability of winning, in its color. The green ring is the price Polymarket charges for that same side in that district — again, cents as probability. The line between them is how much the model and the market disagree. Where the line is purple, that disagreement is large enough to trade after costs. “Crosswalk” tags a district whose boundaries were redrawn since the last election, so its history had to be rebuilt.
Senateall 35 seats
control of the Senate, the modelD 67%·R 33%
the Polymarket contract on D control65.5c
How to read thisThe first number is the model’s probability for who controls the Senate, both parties. The second is the Polymarket price of the contract that pays if Democrats control it — the Republican contract trades at about 100 minus that. The Senate figure comes from a race-by-race simulation that includes this year’s polls; the House figure on page 1 comes from the national model, which does not — that is why the pages treat the two chambers differently.
Every seat
One row per seat, sorted by the model. The dot is the favored party’s chance of winning — blue where a Democrat is favored, red where a Republican is — and the label gives that party’s number. The green ring is the Polymarket price of the same side; the line between them is the disagreement. Purple marks the edges that clear the cost floor. Withheld: ID, MT, NE, SD — not two-party contests.
fair values from Race_FV; prices and edges from Compare_Contracts, net of the Mkt_Costs floor
How to read thisOne row per Senate seat up this year, sorted from the seat most likely to go Democratic at the top to the seat most likely to go Republican at the bottom. Filled dot and label: the favored party’s chance of winning, in its color. Green ring: Polymarket’s price for that same side. Line between them: the disagreement, purple if it is tradeable. “Polls” marks races where the model has folded in 2026 polling; the rest run on fundamentals alone. “Withheld” seats are ones the model does not rate because the contest is not a straight Democrat-versus-Republican race.
Model against the board
The same 30 priced seats as a scatter. Both axes are stated for the Democratic contract by convention — the Republican reading is 100 minus each — so a race sits in the same place whichever side you read it from. On the diagonal the two agree. Circled races carry an edge that clears the cost floor.
model against price, both stated for the D contract (the R contract is 100 minus each); the edge is net of the Mkt_Costs floor
How to read thisThe same seats drawn as a scatter. Each dot is one race: how far right it sits is the Polymarket price of the Democratic contract, how high it sits is the model’s Democratic probability; read from the Republican side, both are simply 100 minus. The dashed diagonal is where the model and the market agree. Dots above the diagonal are races the model rates better for Democrats than the market does, which is the same as saying the market rates them better for Republicans; dots below are the reverse. The circled dots are the ones where that gap is large enough to be worth trading, listed in the top-left with the size of the edge.
The seats that decide it
The decisive seat is spread across many races: the top three together decide control in only 21% of runs, the top twelve in 75%. TX leads at 7.0%, but no single seat is the Senate. Note what is on the list: the safe seats the model rates near-certain decide nothing, and the long shots rarely do; the pivot lives where the model is closest to even.
How to read thisIn each of the 40,000 simulation runs, the races are ordered by how well each party did, and the one that delivers the 51st seat to the winning side is that run’s tipping-point race. The bar is how often each race plays that role. It is not the chance of winning the race — that is the number on the right — but the chance that the race is the one that matters.
tipping-point probability by race, from Race_Pivotal — 40,000 runs of the race simulation; the twelve most likely of the 31 counted
Seats
The race simulation’s Senate count — the same construction as the control figure at the top of the page, with this year’s race polls in it. Median 51 Democratic seats (49 Republican); nine runs in ten between 48 and 55, with control at 51. Without the polls — the leans-only curve on the model and scenarios pages — the expected count is 49.7; the polls are worth about 1.3 seats.
Senate seats, counted on the Democratic side (Republican seats are 100 minus): 5th, median and 95th percentile from the Race_FV simulation, 40,000 draws
How to read thisHow many Senate seats each party ends up with, from the race simulation that produces the control figure: the band is the middle 90% of runs, the ring the median, the line the 51 needed for control. Counted on the Democratic side; the Republican count is 100 minus. The seats-votes curve on the model page gives a lower count because it has no 2026 race polls in it.
The Senate ladder
The board also prices the Senate as a ladder — one contract per bucket of Republican seats. Add up the buckets that mean Democratic control and the ladder says 65.7%; the outright contract says 65.5c. That is 0.4 points apart, inside the ±10.1-point band that bid–ask noise could explain: the two markets agree, and the model sits with them at 66.6%. 10 of the 11 ladder legs fail the depth test in any case.
top: the ladder’s legs and prices from Mkt_SenateLadder, × where a leg fails the tradeability test; bottom: the three readings of Democratic control side by side, band from Compare_Structure
Scenarioswhat a national environment means, chamber by chamber
at D+7, control of the HouseD >99%
at D+7, control of the SenateD 71%
How to read thisThis page asks a what-if: suppose the national vote comes in at a particular number — what does each chamber look like? These are conditional figures: the chance of control if the vote lands exactly there. The two numbers above are the curves read at D+7, a strong Democratic year.
Control, given the vote
Fix the national House vote and ask how likely control is. The House line is steep: at D+2 the House is a coin flip, at D+4 it is 89%, and by D+6 it is settled. The Senate line is shallow — 49% at D+2, 71% at D+7 — because this year’s map gives Democrats few seats to win however good the year is. At the model’s own vote the House reads 100% and the Senate 68%; the headline figures are lower because they also carry the uncertainty in the vote itself.
P(Democratic control | national vote) for both chambers, from the Control_Given_Vote sheet — House from the tipping-point route, Senate from the race simulation restricted to draws within half a point of each vote
How to read thisRead a point on either line as: if the national vote came in here, this is the chance that party controls the chamber. Blue is the House, amber the Senate. The rings mark the model’s own forecast. Because these are conditional on knowing the vote, they are sharper than the headline probabilities on the overview, which have to allow for not knowing it.
The ladder of environments
Each row is one national environment, with what the workbook computes for it: House seats and P(H), the chance of Democratic control, from the tipping-point route; the Senate’s median seat count, its 5th–95th range, and P(S) from the race simulation. The highlighted row is the model’s own forecast. Rows marked thin rest on fewer than 200 simulation draws and are estimates, not refusals.
How to read thisColumns, left to right: the national margin; the House seat split and P(H), the chance Democrats control the House at that margin; the Senate’s median seat split, the range that holds 90% of runs, and P(S), the chance Democrats control the Senate. The highlighted row is the model’s own forecast.
vote
House
P(H)
Senate
range
P(S)
R+2
D 200
R 235
<1%
D 50
R 50
47–53
44% ·thin
R+1
D 207
R 228
1%
D 50
R 50
46–53
41% ·thin
D+0
D 210
R 225
6%
D 50
R 50
46–54
44% ·thin
D+1
D 214
R 221
20%
D 50
R 50
47–54
47%
D+2
D 216
R 219
44%
D 50
R 50
47–54
49%
D+3
D 221
R 214
71%
D 51
R 49
47–54
55%
D+4
D 222
R 213
89%
D 51
R 49
47–54
59%
D+5
D 225
R 210
97%
D 51
R 49
48–55
62%
D+6
D 229
R 206
>99%
D 51
R 49
48–55
67%
D+6.18
D 229
R 206
>99%
D 51
R 49
48–55
68%
D+7
D 229
R 206
>99%
D 52
R 48
48–55
71%
D+8
D 232
R 203
>99%
D 52
R 48
48–55
74%
D+9
D 233
R 202
>99%
D 52
R 48
49–55
77%
D+10
D 234
R 201
>99%
D 52
R 48
49–56
79%
The boardwhere the tradeable positions are, and where they aren’t
priced, tradeable, with an edge35
too thin to trade at all636
How to read this“The board” is the whole set of Polymarket contracts on these races — every district, every Senate seat, each side. “Tradeable with an edge” means the model disagrees with the price by more than it costs to trade, and there is enough money resting in the order book to actually buy. “Too thin to trade” means the quote exists but nobody is really there: little money offered, a wide gap between buy and sell prices, or no trade in the last week.
The whole board
Every contract the model has a view on. Purple squares are the 35 that clear the cost floor with depth behind them. Open squares are priced and deep enough but carry no edge on that side — the model either agrees with the price or would rather own the other side of the race. Hatched squares are quotes with no depth, no recent trade, or a spread too wide to cross: 636 of them, most of the House. Dotted squares are races the model withholds.
Compare_Contracts, grouped by chamber; tradeability from the Mkt_Costs composite (depth ≥ $2,000 within 5c, spread ≤ 2c, a trade inside 7 days)
How to read thisEvery contract is one small square, grouped by chamber and sorted by type. Purple hatched: a tradeable edge. Open outline: priced and deep enough, but the model and the market roughly agree, so nothing to do. Light red: the quote is too thin to trade. Dotted: the model does not rate the race. The picture is meant to show proportion — how little of the board is actually a position.
The edges, ranked
168 contracts are deep enough to price an edge at all. Ranked by edge net of the cost floor, 35 sit above the line — those are the positions. A bar below the line is not a dead end: buying the other party’s contract is the same trade as selling this one, so a negative edge here is a positive view on the mirror contract. What stops it is the mirror: in 111 of these races the other side’s quote is too thin to fill, in 2 the gap does not cover that side’s costs, and 19 are the mirrors of positions already above the line. The other 762 contracts on the board never get an edge computed, because their own quotes are too thin.
edge net of the Mkt_Costs floor, one bar per contract, from Compare_Contracts
How to read thisAn “edge” is the model’s probability minus the market price, after subtracting the cost of trading (fees plus the gap between buy and sell prices). Positive means the model thinks the contract is cheap; negative means the market prices it higher than the model would. Every contract with an edge is a bar, ranked from the largest positive on the left to the most negative on the right. Solid purple bars above the line are positions. A hollow bar below the line means the model would rather own the other party’s contract in that race, but that other contract usually has too little money behind it to buy, or the disagreement is too small to cover its costs. All of these edges assume you hold to the election; nothing here depends on selling out early.
The bookthe edges held together
expected return on $3,500 staked+$658 · +19%
95th-percentile outcome+$1,710
How to read this“The book” is all the tradeable edges held together as one portfolio. The workbook prices it at a stated size — $100 on each contract — to show the shape of the outcomes; it is not a recommendation of how much to bet. The two numbers are the expected profit on that $3,500 and the profit in a good outcome (better than 95% of simulated elections).
Each contract, as a bet
A stated stake, not a recommended one: $100 on each of the 35 contracts that clear the floor, bought at the ask and held to resolution, one taker fee at entry. Each row answers four questions. How often does the side you bought win — the model’s probability, drawn as a bar. What does $100 make if it does: at 5c it buys 2,000 shares that each pay $1, so the cheap contracts pay the most. What does it lose if not: the $100 and the fee. And what is the average of those two outcomes, weighted by how often each happens — the expected value, in purple. None of the legs is priced under 10c this capture. The 6 live Senate seats win between 33% and 67% of the time and pay well when they do; the near-certain favorites win almost always and pay pennies. The tick marks the contracts the desk’s own rules, on the Trades page, would actually size.
per contract on a $100 stake: win chance, payout, loss and expected value — Compare_Book; model probabilities from Race_FV, uncalibrated; ticks from Trade_Recs
The tick. Every row here is an edge; the tick separates the edges the desk would size from the ones it would only note. To earn it a contract passes six tests, set out on the Trades page: at least 2 race polls behind the model’s number (or an unpolled race — never a single-source lean); an edge that still clears 3 points after correcting for the model’s over-confidence at the most pessimistic correction the evidence allows; a return of at least 10% per dollar; enough depth to fill; for a Senate seat, an edge that holds on both the leans-only route and the race simulation; and a fair value of at least 20%. That last one is a typed judgment, not a statistic: a ten-point edge is not a trade at a 20% fair value, because the evidence and the tail risk both worsen the cheaper the contract. It is why the largest averages at the top of the list carry no tick, and why the ticks cluster in the coin-flip band, where the model’s number is most trustworthy. 7 rows carry it.
How to read thisOne row per contract. The bar shows how often the model expects the side you bought to win — filled in that party’s color to that share, gray for the rest. “If it wins” is the profit on $100: a contract at 5c costs 5 cents a share and pays $1 a share, so $100 buys 2,000 shares and makes about $1,900. “If it loses” is the $100 plus the fee. “On average” is the expected value: the win multiplied by how often it happens, minus the loss multiplied by how often that happens. A bet can have a high average and still lose most of the time — the first rows are like that. The tick marks the rows the desk’s rules on the Trades page would actually buy.
The book on the joint draw
Held together on the simulation’s 40,000 correlated draws, the book returns +$656 on average, in line with the +$658 the rows add up to. The middle half of outcomes runs from −$209 to +$1,089; the top decile clears +$1,710 and the best draws pass +$2,112. Because the longshots are held to resolution, the book finishes below zero in 16% of draws, with the worst at −$1575 — the price of the upside, and sized in advance at $100 a contract.
book outcomes across the draws, from Compare_Book — the box holds the middle half
How to read thisThe workbook runs the election 40,000 times and records the book’s profit or loss in each. This strip summarizes those runs: the box covers the middle half of outcomes, the hatched band the middle 90%, the solid line the median run, the dashed purple line the average. The rings at the ends are the single worst run and the 99th percentile. Because the book holds longshots that usually lose but pay big when they hit, many individual runs finish slightly negative while the average is well positive.
By national environment
Split the election runs into thirds by the national House vote, from the most Republican years to the most Democratic. The book’s expectation is nearly the same in each third and its correlation with the national margin is -0.017: the contracts sit on both parties’ favorites, so a wave in either direction is close to a wash for the book as a whole.
How to read thisThe same 40,000 runs split into thirds by how the national vote came out — the vote range shows what each third covers. “Runs that lose” is how often the book finishes below zero in that kind of year, and “winners” is the average number of the book’s contracts that settle in its favor. If the book made money only in one party’s years it would really be a bet on the national mood; profits in all three thirds show it is not.
years
vote range
mean P&L
losing runs
winners
most Republican
R+9.0 to D+4.7
+$670
15%
~26 of 35
middle
D+4.7 to D+7.7
+$654
16%
~26 of 35
most Democratic
D+7.7 to D+20.6
+$644
16%
~25 of 35
Where the variance sits
The same 15 contracts drive both tails: 3 Senate seats and 12 House districts. When they land, the book has its best draws; in the worst 5% of draws — mean −$598 — they are the ones that miss together. The other 20 contracts contribute steady, small profit and almost none of the variance.
How to read thisOf the runs in the worst 5%, which contracts were losing? These account for essentially all of it — and they are the same contracts that produce the best runs. The rest of the book is quiet either way.
contract
side
P&L, worst 5%
misses
South-Carolina Sen D
D
−$87
98%
Michigan R
R
−$64
89%
MO-02 D
D
−$54
86%
MI-07 R
R
−$47
78%
Texas R
R
−$44
78%
FL-09 D
D
−$43
82%
Kansas Sen D
D
−$42
80%
PA-08 R
R
−$39
80%
WI-01 D
D
−$35
76%
MT-01 D
D
−$29
73%
Iowa Sen D
D
−$29
68%
FL-22 R
R
−$27
66%
IA-02 R
R
−$18
60%
MI-10 R
R
−$18
70%
TX-35 R
R
−$14
64%
Net national exposure is Σ stake × λ = $35 on $3,500; entry fees total $48. Two contracts on the same race are one position. House-control contracts are refused from the book by construction because their probability is not the simulation’s marginal.
Tradesmodel against market, net of costs
contracts that clear the cost floor35 of 930
legs that pass all three tests30 of 114
How to read thisOf all the contracts on the board, these are the ones where the model’s probability beats the price by more than the cost of trading. “Legs that pass all three tests” is a separate count over the bigger, chamber-level contracts: enough money resting in the book, a tight gap between buy and sell, and a recent trade.
What the desk would actually buy
A stated set of rules, applied to every contract that carries an edge: at least 2 polls or an unpolled race (never a single-source lean); an edge that survives recalibrating the model at every slope the evidence sheet found, by at least 3 points at the worst of them; a return of at least 10% per dollar; enough depth to fill; a Senate contract clears on both the leans route and the simulation; and a fair value of at least 20%, a typed judgment that a ten-point edge is not a trade at a 20% fair value. One more thing can stop a contract that passes every test: the desk can name it as held out — a judgment, not a rule — and SC Sen D is held out this capture despite passing all six. 7 of 35 pass all of them. Sized at a quarter Kelly on a stated $10,000: $2,612 in all.
How to read thisThis is the layer above the edges: a checklist the desk applies before it would trade, and the size it would take. “Worst-case edge” is the edge after correcting for the model’s tendency to be over-confident, at the most pessimistic correction the evidence allows. “Polls” is how many race polls the model’s number rests on. “Size” is a fraction of a $10,000 notional bankroll, so the numbers show proportion, not a recommendation of how much to bet.
contract
side
ask
model
edge
worst
polls
size
PA-08 R
R
32c
48%
+14.8
+14.4
2
$550
MT-01 D
D
37c
49%
+11.4
+11.3
5
$458
FL-22 R
R
45c
56%
+9.7
+8.1
2
$451
WI-01 D
D
35c
45%
+9.6
+8.8
3
$373
MO-02 D
D
28c
38%
+9.2
+7.3
—
$321
MI-07 R
R
39c
46%
+6.3
+5.7
2
$263
Texas R
R
37c
43%
+4.9
+3.7
39
$196
7 recommended of 35 contracts that publish an edge. Fails by condition (a row may fail several): evidence 10, calibration 20, return 18, capacity 0, two_route 5, longshot 0, held_out 1. Total recommended, on the stated bankroll: $2,612; share of bankroll 0.261.
Edges that clear the floor
35 contracts carry an edge that clears the cost floor; 886 do not. The edge is the model’s probability less the price, net of the taker cost floor, ranked. 17 of them are three points or better; the rest are legs the board prices a few cents away from the model. 9 are Senate seats, 26 are House districts.
How to read thisColumns: the contract and which side (D or R). “Model” is the model’s probability that side wins. “Price” is what Polymarket charges for it. “Floor” is the cost of trading it — fees and the buy/sell gap — in cents. “Edge net” is model minus price minus floor: the expected profit per dollar, in cents. The tag on the right says where the model’s number came from: “polls” means 2026 polling is included; “crosswalk” means the district’s lines were redrawn and its history rebuilt.
contract
side
model
price
floor
edge net
SC Sen D
D
39%
14.5c
2.0c
+22.1
polls
MI-10 R
R
56%
34c
3.8c
+17.1
polls
TX-35 R
R
60%
40c
3.9c
+14.8
polls
PA-08 R
R
48%
31.5c
2.7c
+12.9
polls
FL-09 D
D
42%
29.5c
2.7c
+9.7
polls
IA-02 R
R
59%
46.5c
3.0c
+9.0
polls
MT-01 D
D
49%
36c
3.8c
+8.5
polls
FL-22 R
R
56%
44.5c
3.0c
+7.8
polls
WI-01 D
D
45%
34.5c
2.8c
+7.7
polls
KS Sen D
D
43%
32.5c
2.8c
+7.6
polls
FL-14 D
D
76%
65.5c
2.8c
+7.4
polls
MO-02 D
D
38%
27.5c
2.6c
+7.3
IA Sen D
D
52%
42.5c
3.0c
+6.2
polls
Maine D
D
67%
58.5c
2.9c
+5.4
polls
VA-06 R
R
99%
92.5c
1.6c
+4.9
polls
MI-07 R
R
46%
38.5c
2.9c
+4.4
polls
MO-04 R
R
98%
92.5c
1.6c
+3.6
TN Sen R
R
98%
94.2c
0.8c
+3.0
polls
Texas R
R
43%
36.5c
2.9c
+3.0
polls
Michigan R
R
33%
27.5c
2.6c
+2.5
polls
TX-23 R
R
69%
62c
3.9c
+2.2
crosswalk
MD-01 R
R
94%
89.5c
1.8c
+2.0
polls
OK-03 R
R
99%
96.95c
0.3c
+1.9
FL-24 D
D
100%
96.35c
1.4c
+1.6
crosswalk
NH-02 D
D
98%
94.65c
1.7c
+1.4
polls
CA-30 D
D
99%
96.65c
1.2c
+1.2
crosswalk
VA-11 D
D
99%
97.7c
0.4c
+1.1
NC-04 D
D
100%
96.35c
1.8c
+1.1
crosswalk
MA Sen D
D
100%
97.9c
0.6c
+1.0
polls
MN-04 D
D
99%
96.45c
1.2c
+0.9
WY Sen R
R
100%
97.55c
1.1c
+0.9
KY-02 R
R
99%
96.5c
1.1c
+0.7
PA-01 R
R
68%
62c
3.9c
+0.7
polls
MT-02 R
R
99%
95c
2.4c
+0.7
polls
KY-01 R
R
99%
96.15c
1.8c
+0.2
Tradeability
Desk rule: a leg counts only if it passes all three — depth of $2,000 or more within 5c, a spread of 2c or less, and a trade inside the last week. The cost floor is the minimum edge a taker needs to clear fees and spread.
How to read thisThe three tests a contract must pass before the desk will count an edge on it. Depth: at least $2,000 resting within 5c of the price, so an order can fill without moving the market. Spread: the gap between the best buy and sell prices is 2c or less. Fresh: someone has actually traded it in the last week. A tick passes, a cross fails, and the cost floor is only shown for contracts that pass all three.
leg
depth
spread
fresh
cost floor
D control of the House
1.6c
D control of the Senate
2.8c
D Senate, D House
2.8c
R Senate, D House
2.6c
Maine D
2.9c
Maine R
2.9c
Michigan D
2.6c
Michigan R
2.6c
R seats <= 47
2.9c
Sen 53+ / House 223+
—
30 of 114 legs pass. Rows above are a sample; the full ledger is Mkt_Costs.
Race fair values are layer 1b, uncalibrated, info set +2026 polls — never a market price. Prices from the 2026-10-05 snapshot; tradeability from the Mkt_Costs capture.
Directionevery race: today’s price, and which side the model rates cheap
races where the Democratic contract is the cheap side253
races where the Republican contract is the cheap side167
Every race has two contracts, one per party, and each settles at 100 or 0 — the winner’s at 100, the loser’s at 0, and their prices always add to 100. The line runs from the Republican contract at 100 on the left to the Democratic contract at 100 on the right, with the price of both sides marked along it. On each row the ring is today’s price, the dot is where the model expects the race to settle, and the arrow points toward whichever party’s contract the model rates cheap: blue, buy the D contract; red, buy the R contract. The label reads the row as that trade — the side, its price, and the model’s value for it — so a Republican-side trade is written on the Republican side, not as a fall in the Democratic price. The length of the arrow is the expected move in cents, before costs. Purple arrows are the 35 contracts where that move clears the cost floor with depth behind it; faint arrows are quotes too thin to trade. One caution: the model says where a contract ends, not when it moves — a price can sit still until resolution.
How to read thisEach row is one race. The line’s left end is a Republican win (the R contract pays 100), the right end a Democratic win (the D contract pays 100); the tick marks show both parties’ prices at each point, which always add to 100. The green ring is where the market prices the race today; the dot is where the model expects it to settle. The arrow between them points toward the party whose contract the model thinks is cheap — blue for the Democratic contract, red for the Republican one — and the label spells out that trade: which side to buy, at what price, and what the model says it is worth. Longer arrows are bigger disagreements. Only purple arrows are actual trades; the faint ones can’t be filled.
Senate, every seat
sorted from the largest move toward 100 to the largest move toward 0; prices from Compare_Contracts, probabilities from Race_FV
House, every district
Sorted the same way. Labels are shown for the contracts that clear the floor; the rest are drawn without a label so the whole map fits. On the settled seats at either end, most arrows point inward, toward even — the market is a shade richer than the model on both parties’ favorites. The trade there would be the underdog’s contract, which is almost always too thin to fill.
sorted from the largest move toward 100 to the largest move toward 0; prices from Compare_Contracts, probabilities from Race_FV
Reading guidewhat the words, colors and charts mean
Everything in this notebook is either read from the desk’s model workbook or computed from it, and every chart is drawn from the same numbers the tables show. Switch on “Explain everything” at the top to see a plain-language note under each chart on every page. This page covers the vocabulary those notes rely on.
The five pens
The color of a number tells you where it came from, without a legend.
blue ink — a Democratic figure: a Democratic probability, margin or seat count, whoever produced it red — a Republican figure green — a price quoted on the Polymarket board, untouched purple — the desk’s analysis of a price: edges, cost floors, the book, anything computed from the market rather than read from it pencil — structure, axes and neutral labels
The terms
Why D+ and “D side”
A two-party contest has one number: the Democratic probability is the Republican probability subtracted from 100, and a D+3 margin is an R−3 margin. The workbook, like Polymarket, states that number on the Democratic side by convention, so the charts do too. Nothing about that is a lean: every headline shows both parties, every race is labeled for whichever party is favored, and the colors are symmetric.
The model
The desk’s own forecast. It is built from history, election fundamentals and, for individual races, 2026 polls — never from betting prices. When a page says “the model says 80%” it means: run this election many times from today and Democrats win the House in about 80 of every 100 runs.
The board · Polymarket
Polymarket is a prediction market. For each question — “will Democrats win the House?”, “will the Democrat win Iowa’s Senate seat?” — there is a contract that pays $1 if the answer is yes. Its price, in cents, is the crowd’s probability: 52.5c means the market puts it at 52.5%. “The board” is the full set of those contracts.
D+3 · R+4
Margins. D+3 means Democrats ahead by three percentage points; R+4 means Republicans ahead by four. “National House vote” is every House race in the country added together, expressed this way.
Fair value
The model’s probability for a race or an outcome, stated as a price so it can be compared with the market. If the model says 46% and the market says 34.5c, the model’s fair value is 46c and the contract looks cheap.
Edge
Fair value minus price. A positive edge means the model thinks the contract is worth more than it costs. “Net of the floor” means trading costs have already been subtracted.
Cost floor
What it costs to make the trade: Polymarket’s fee plus the gap between the buying price and the selling price. An edge smaller than the floor is not worth taking.
Depth · spread · fresh
The three tests of whether a contract can really be traded. Depth is how much money is resting in the order book near the price — enough to fill an order without pushing the price. Spread is the gap between the best buy and sell prices. Fresh means someone has traded it recently. A contract that fails any one is “too thin to trade”.
Product A · Product B
The workbook’s shorthand. Product A: the contract passes the trading tests and an edge is computed. Product B: the quote is too thin, so the model’s view is recorded but no edge is priced.
Tipping point
The national margin at which control of the House becomes a coin flip. Because of where the district lines fall, this is not zero: Democrats need roughly a one-point national lead to be at 50/50.
Seats-votes curve
A line that converts a national margin into a number of seats. Steep means many seats change hands per point of national swing; shallow means few do.
Cushion
How far the typical outcome sits beyond the majority line. A big cushion means the House probability is high even if the national margin is modest.
Median · 5th and 95th percentile
The median is the middle outcome — half of the simulated elections come in above it, half below. The 5th and 95th percentiles bracket the middle 90% of outcomes; nine runs in ten land between them.
Histogram
A chart of how likely each outcome is: the horizontal axis is the outcome, and taller bars mean more likely. The share of blue bars versus red bars is the probability of each side.
Layer 1 · layer 1b
Two versions of the race-level model. Layer 1 uses the national forecast and each state’s or district’s past lean. Layer 1b adds this year’s race polls where they exist. The Senate control figure comes from 1b; the House control figure comes from the national model.
Balance of power
The four combinations of who holds the Senate and who holds the House. Polymarket prices each combination as its own contract.
φ (phi)
A correlation between the two chambers: how much a good night for one party in the Senate goes together with a good night in the House. Zero means independent; one means they always move together.
The Senate ladder
A second way Polymarket prices the Senate: one contract for each possible number of Republican seats. Adding up the buckets that mean Democratic control gives a second reading of the same question, which can disagree with the main contract.
Longshot bias
A known habit of betting markets: paying a little too much for unlikely outcomes and a little too little for near-certain ones. The hollow green ticks on page 1 show where the price would sit if it carried this bias at two standard strengths.
Withheld · crosswalk · polls
Tags on individual races. Withheld: the model does not rate the race, usually because it is not a straight two-party contest or the last result was uncontested. Crosswalk: the district’s lines were redrawn, so its history was rebuilt onto the new map. Polls: 2026 polling is included.
Control given the vote
A what-if: the chance of control if the national vote landed at a stated number. Sharper than the headline probability, which also has to allow for not knowing the vote. The Scenarios page.
The desk’s rules · the tick
A checklist applied to every edge before the desk would size it: enough polls behind the number, an edge that survives correcting the model’s over-confidence, a minimum return, enough depth, both Senate routes, and a fair value of at least 20%. Contracts that pass carry a tick on the Book page and a size on the Trades page.
The book
All the tradeable edges held together as one portfolio, priced at a stated size of $100 per contract so the shape of outcomes can be shown. It is an illustration of the position, not a recommended size.
λ (lambda)
Each race’s sensitivity to a single national swing. Summing stake × λ across the book measures how much the whole portfolio is really a bet on the national mood.
The pages
1 Overview: both chambers against the market, and the one number the disagreement reduces to. 2 The model: the independent forecast, with no market input. 3 House and 4 Senate: every race, with the market price beside each. 5 Scenarios: the chance of control if the vote landed at each margin. 6 The board: which contracts can actually be traded. 7 The book: the tradeable edges as one portfolio, and which ones pass the desk’s rules. 8 Trades: the ledger, and what the desk would actually buy. 9 Direction: every contract, price against expected settlement.