AFOS Analytics
Real-time political pricing
Prediction markets × polls × news
no smoothed averages
The week of Aug 03 to Aug 07 broke the stillness that Issue №2 reported, and it broke in a specific way that matters more than the size of the move. In the contract that pays out if Democrats take the House, the price left Monday at 85.50% and closed Friday at 87.50%, a rise of 2.00pp. In the same contract, on the other side, the probability of Republicans controlling the House printed 13.50% on all five days, with no variation at all.
The two sides of the same contract should add up to something close to 100%. Over this week they went from 99.00% to 101.00%, because one side moved and the other did not. This is not a new reading on who wins the House: it is one leg of the book moving on its own, and the effect is that the price came to add up to more than the total that is possible.
The money tells the same story. In the Monday to Friday window, the Democratic side of the House took in USD 132 thousand of new volume and the Republican side took in USD 20 thousand, almost seven times less. Whoever traded during the week traded on one leg only.
In the Senate the behavior was the opposite, and the contrast is what gives the finding its meaning. Democrats rose from 44.50% to 45.50% and Republicans fell from 55.50% to 54.50%, a symmetrical move of 1.00pp on each side, with the sum of the two parked at 100.00% from start to finish. Same panel, same week, two contracts behaving differently.
On the side of those who measure voting intention, nothing moved, and for a reason that has to be stated: the polling base has not received a new reading since Aug 04. The house average for the generic ballot stands at D+5.66, across 29 polls from 23 pollsters in a 30 day window, and the distance between the highest and the lowest reading remains 9 points, from D+11 at Big Data Poll and Emerson College to D+2 at Reuters/Ipsos, RMG Research, McLaughlin and Harvard/Harris. The eight contracts this panel tracks hold USD 17.33M in total.
1.Executive Summary
The week of Aug 03 to Aug 07 had movement, and the shape of the movement is the finding. In the House, the Democratic side rose 2.00pp and the Republican side did not budge by a hundredth over five days, which made the two sides of the same contract add up to 101.00%. In the Senate, both sides moved together and the sum stayed intact at 100.00%. Same panel, same week, two behaviors.
The second thing this issue reports is a loss of instrument, and it is declared here because it changes what can be written. The Senate seats contract, which in Issue №2 carried the scenarios section with its bands adding up to 99.20%, today adds up to 126.05% and LEFT SERVICE for extracting numbers. The reason is not the level of the sum, it is the shape of the excess, and it is measured in the scenarios section. The House seats contract is worse: between 17:11 and 18:17 today, a single band of it went from 40.55% to 10.50%. The market numbers in this issue are from Aug 10 at 18:24 UTC and cleared the capture guard, which takes two readings eight minutes apart and only releases them if they agree within 0.20pp.
2.Why this brief does not subtract the market from the poll
This brief publishes a poll average and never subtracts it from the market price. It looks like a technical detail and it is not: it is what separates a defensible reading from an invented number.
It is worth declaring what weakens this issue, and there are three things.
The first is the short House series, which begins on Jul 29 and is twelve days long. Any superlative about it is 'in the series', with the start date declared, never 'in the cycle'. When this issue says that 88.50% on Aug 09 is the highest value ever recorded, that holds for twelve days of collection, and does not describe the electoral cycle.
The second is the stalled polling yardstick. The most recent field date in the base is Aug 04. The average went from D+5.69 in Issue №2 to D+5.66, but the change did not come from a new poll: it came from the 30 day window rolling forward and dropping older polls out. When the composition of the set changes and voting intention is not measured again, calling that 'movement in the polls' is a reading error.
The third is the most serious and is detailed in the scenarios section: three of the five distribution markets this panel tracks got worse in quality over the week, and one of them is precisely the one that carried the previous issue's scenarios. 📌 This issue was revised at 21:56 UTC on Aug 10 itself, after publication, and the revision is declared because it changed what the piece asserts. The scenarios section used to come from the Senate seats distribution, normalized. A test run the same day showed that book's overpricing is not uniform but concentrated in the tail, which invalidates single factor normalization. The distribution left service for extracting numbers and the scenarios moved to the control contract, which is binary and needs no normalization. The mechanism and the test numbers are in the section itself. No market price was recaptured: they all remain those of the 18:24 UTC capture.
3.Weighted scenarios for the week
The scenarios below are not our narrative: they come from contracts the market already prices. Where in Brazil the hypothesis would have to be built, here it is enough to read what the market pays.
🔴 This section changed instrument after publication, and the reason is declared here. It used to come from the contract pricing each band of Republican Senate seats, normalized. That contract is no longer used to extract numbers.
What decided it was a measurement, not a preference. Normalizing a distribution means dividing every band by the same factor, and that assumes the overpricing is spread evenly. That hypothesis can be tested with no external data: if the excess were uniform, the normalized share of any subset of bands would be invariant to the raw sum. Across three readings since Aug 09, the eleven bands summed 106.10%, 135.15% and 109.55%, and the normalized share of the two central bands, 50 and 51 seats, moved with it: 27.80%, 24.05% and 27.38%. Monotonic.
➡️ The excess is not uniform, it is concentrated in the tail, and dividing everything by the same factor does not remove it from there. This is the pattern known as longshot bias, where cheap contracts trade rich. In the same snapshot, 87.74% of the book's volume sat outside the two central outcomes.
⚠️ Three readings, so this is an indication and not proof. It is enough to stop extracting numbers from it, and not enough to state the size of the artifact.
The Senate control contract takes its place, and it does not have this problem: it is binary, needs no normalization, its two sides add up to 101.00%, and it printed a steady 54.50% across those same readings. The tail comes from the calendar contract, which is also binary. No number in this section depends on normalization any more.
The Senate control contract pays out if Republicans keep the majority, and it prints 54.50%. It holds USD 1.55M on this side, it is binary, and so it needs no normalization at all. On the week it fell 1.00pp, from 55.50%, and the other side rose by the same amount, which keeps the contract's sum at 100.00% across the whole window. This is the number this brief uses for the Senate.
The other side of the same contract prints 46.50%, with USD 2.22M, more money than the Republican side. It rose 1.00pp on the week. 📌 The two sides add up to 101.00% at this issue's capture, not 100.00%: that is the book's spread, and in a binary contract it is small and visible, unlike what happens in the band distribution. No adjustment was applied, the number is the price.
The calendar contract pays out if the midterms take place on Nov 3 as scheduled, and it prints 95.95%, which leaves 4.05% for the opposite outcome. It is the only tail in this issue coming from a binary contract, with no normalization and no hypothesis of ours. 🔴 The Senate composition tail, a wide Republican majority, left this issue along with the band distribution, because that was precisely the region of the book where the test above located the excess.
4.Indicator Grid
| Contract | Current | Δ week | Vol USD acc. | Implied reading |
|---|---|---|---|---|
| House · Democrats control | 86.50% | +1.00pp since Aug 03 | USD 5.22M | Rose from 85.50% to 87.50% over the week and reached 88.50% on Aug 09, the highest value in the series that begins on Jul 29. Pulled back to 86.50% today |
| House · Republicans control | 12.50% | -1.00pp since Aug 03 | USD 4.11M | Printed 13.50% on all five days of the week, without exception, and only moved on Aug 09, two days past the window. While it stood still, the two sides of the contract added up to 101.00% |
| Senate · Republicans control | 54.50% | -1.00pp on the week | USD 1.55M | Fell from 55.50% to 54.50% on Aug 05 and stayed. This contract's series begins on May 12 and has already run between 51.50% and 58.50%, so this is a small move inside a known range |
| Senate · Democrats control | 46.50% | +1.00pp on the week | USD 2.22M | Rose from 44.50% to 45.50% on Aug 07 and stands at 46.50% today. Unlike the House, here the other side gave ground by the same amount and the contract's sum stayed at 100.00% all week |
| Election happens as scheduled | 95.95% | 0.00pp | USD 0.31M | A calendar contract, not a result contract. It serves as a floor: as long as it sits near 100%, the other seven are pricing an election that takes place |
| Senate · how many Republican seats | sum 126.05% | was 99.20% on Aug 03 | USD 2.80M | 🔴 Failed the 95% to 105% coherence gate, and it passed seven days ago. It does NOT enter this issue in any form: the uniform excess test showed the overpricing sits in the tail, so normalizing evenly does not remove it |
| House · how many Republican seats | sum 127.90% | was 110.90% on Aug 03 | USD 0.28M | 🔴 Failed and unstable: between 17:11 and 18:17 today, the 210 to 214 seat band went from 40.55% to 10.50%. It does not enter this issue in any form |
| Turnout | sum 96.40% | was 91.40% on Aug 03 | USD 0.02M | Passed the gate, and it is the only one that passes this round. It was failing from below in the previous issue. The heaviest band is 120 to 125 million votes, at 24.00% |
5.Liquidity and market structure
6.Electoral calendar through November
| Date | Sample | Why it matters | |
|---|---|---|---|
| Aug 11 | State primaries, including Minnesota | primary, not general election | The Democratic Senate primary in Minnesota, between Angie Craig and Peggy Flanagan, features in this Monday's coverage. The panel does not price state primaries |
| Through August | Other state primaries | each state has its own calendar | They do not enter this panel by estimate: each state has its own calendar and rules, and they are not in our base. When they enter, they enter with a source |
| Sep and Oct | National trackers | no mandatory registration | Unlike Brazil, there is no prior registration of polls in the United States. There is no print date to anticipate, only the cadence of whoever publishes |
| Nov 03 | Election | the whole House, one third of the Senate | The date on which every contract in this panel settles |
There is no equivalent to Brazil's TSE registry in the United States, so this calendar is the election's, not a poll publication schedule. The polls used by this brief come from an index that says which ones exist, and every number remains attributed to the pollster that produced it, with a link to the primary source. In this round, two of the 363 readings in the base had no primary source, both from John Zogby Strategies and both outside the 30 day window, so neither enters the average.
7.Watch list, week triggers
- The House rose on one side only, and that is where the money went. The Democratic side gained 2.00pp and USD 132 thousand of new volume on the week. The Republican side gained 0.00pp and USD 20 thousand. The two sides of the same contract came to add up to 101.00%. Watch whether the Republican side starts tracking again: it moved on Aug 09, outside the window, and the sum went back to 99.00%.
- The Senate seats book left service, and not because of the sum. It summed 99.20% on Aug 03 and passed the gate; today it sums **126.05%**. But what retired it was not the level, it was the **shape**: across three readings since Aug 09 the normalized share of the two central bands moved with the raw sum (27.80%, 24.05%, 27.38%), and if the overpricing were uniform it would be invariant. The excess sits in the tail, so normalizing evenly does not remove it. The book is still collected daily and serves to discuss shape, not to extract numbers.
- The House seats book became unreadable within one hour. Between 17:11 and 18:17 today, the 210 to 214 seat band went from 40.55% to 10.50%, an amplitude of 30 points, and the 225 to 229 band went from 27.15% to 7.15%. A book whose bands move 30 points in an hour describes no electoral outcome at all. It stays out of this issue and continues to be collected every day.
- The coherence gate switched sides within one week. In Issue №2 the Senate seats and the governorships passed, and turnout was failing from below, at 91.40%. Today **turnout is the only one that passes**, at 96.40%, and the other three failed from above. No election changed in that interval. What changed was the quality of the books, and that is what the gate is measuring.
- The polling yardstick has been still for six days. The most recent field date in the base is Aug 04. The average went from D+5.69 to **D+5.66**, and the variation is compositional: the 30 day window rolled forward and dropped older polls out, without a single new poll entering. Until the base gets a new reading, comparing the price to the poll compares a number from today with a number from last week.
8.Methodology
Market: Polymarket, read through the platform's own proxy, captured every 30 minutes and with a guaranteed daily point even when the price does not move, so the series records time and not only change. Every price quoted cleared the capture guard: two independent readings eight minutes apart, released only if they agree within 0.20pp. In this issue the two readings are from 18:16 and 18:24 UTC on Aug 10. ⚠️ A price reading meant for publication always bypasses the proxy cache. Without that the route returns the previous capture with an old timestamp, and the check ends up comparing a reading with itself. Polls: simple arithmetic average over a 30 day window, unweighted and with no pollster excluded, built from an index that says which polls exist, while every number remains attributed to whoever produced it. When the same pollster publishes more than one subsample of the same round, only one enters, by the hierarchy likely voters, registered voters, adults. Different rounds from the same pollster each enter, which is why the window holds 29 polls from 23 pollsters, selected out of 43 subsamples. ⚠️ The 9 point dispersion is measured over the 29 selected lines, not over the 43 raw subsamples. Over the subsamples it would look like 11 points, because it would include adult subsamples that the selection discards. Distributions: a distribution is only read as probability when its bands add up to between 95% and 105%. This round only turnout passes, at 96.40%. Senate seats (126.05%), House seats (127.90%), governorships (165.95%) and popular vote margin (152.25%) all failed. ⚠️ No failed distribution enters this issue, not even normalized. The Senate one used to, and it left: normalizing divides every band by the same factor, which assumes uniform overpricing, and the test described in the scenarios section refuted that hypothesis across three readings. While the excess sits in the tail, a book that does not add up serves to discuss shape, not to extract numbers. The popular vote margin one stays out even normalized, because its bands overlap and one of them is 'any other outcome'. Book depth is not quoted: low liquidity on Polymarket does not mean the price is wrong, because the market is arbitraged continuously, and exposing that number produces a skewed reading. What this brief does not do: it does not forecast results, it does not say which measurement is right, and it does not issue investment advice.
9.Additional reading · macro coverage
Stories from the week in outlets on the AFOS fixed list. This brief is a primary source for market and polling data; what follows is context reading. Only links that resolve to the outlet's own site are included: of the 10 items collected on Aug 10, 7 had a canonical address and 3 existed only through the aggregator, with an address that does not resolve without a browser. Those 3 were left out, and the exclusion is declared here.
- The Washington Post · Eleventh hour primary upsets scramble the fight for control of Congress (Aug 10), www.washingtonpost.com/politics/2026/08/10/primary-upsets-scramble-fight-control-congress/
- The New York Times · Minnesota's Democratic Senate primary pits Angie Craig against Peggy Flanagan (Aug 10), www.nytimes.com/2026/08/10/us/politics/minnesota-senate-primary-flanagan-craig.html
- NPR · In a competitive Maine Senate race, women voters could be the deciders (Aug 10), www.npr.org/2026/08/10/nx-s1-5925349/maine-senate-race-susan-collins-troy-jackson-women-voters
- Fox News · Johnson turns the Democrats' internal fight into a new weapon for the midterms (Aug 10), www.foxnews.com/politics/johnson-turns-democrats-socialist-civil-war-new-weapon-midterms
- The Guardian · Francesca Hong and the messy race for Wisconsin's governor (Aug 10), www.theguardian.com/us-news/2026/aug/10/francesca-hong-democratic-socialist-wisconsin-governor-race
- NPR · Mike Lindell touts his Trump ties in the race for governor of Minnesota (Aug 10), www.npr.org/2026/08/10/nx-s1-5925152/lindell-minnesota-primary-elections-trump
Get it by email
AFOS Tradeoff is the weekly read on Brazilian political risk, for people who decide on data rather than headlines.
No spam. Unsubscribe anytime.
After signing up you choose whether to receive it in English, Portuguese or Spanish.