AFOS Analytics
Real-time political pricing
Prediction markets × polls × news
no smoothed averages
Issue №10 closed with a written, dated test, and the July 27-31 window returned a negative answer. That issue reported the market had begun pricing Flávio Bolsonaro not reaching the runoff, with his third place contract at 8.60%, and wrote down the criterion: if it held above 8% for one more window, it would stop being a thin-book artifact. It did not hold for a single session. It fell to 7.90% on Monday July 27 and closed Friday at 5.70%, a fall of 2.20pp in the week, while his second place contract rose 1.50pp, to 78.00%. Recording the error comes before any new finding. This window's finding is in the winner contract: Lula went from 62.50% on Monday to 64.50% on Friday, up 2.00pp, breaking the previous top of the AFOS series, which was 63.50%. The gap over Flávio went from 38.70pp to 40.10pp, the first reading above 40pp in the database series, which starts on April 14 and has 108 days with data. The mechanics changed: the gap widened with both names rising, because Flávio also gained 0.60pp and closed at 24.40%. It is not deterioration of the challenger, it is demand for the favorite. Four national polls came out in the window and they do not agree on the first round gap: 9.0pp in BTG/Nexus on July 27, 9.1pp in AtlasIntel on July 29, 6.0pp in PoderData on July 30 and 9.3pp in Vox Brasil on July 31. An average of 8.35pp would hide that the outlier is a single one. On the macro axis, the 4.50% to 4.99% band of the inflation contract jumped 13.00pp in a single session, on July 28, the day the IPCA-15 came in at 0.06% and below projections. The presidential market has accumulated USD 118.16M. The following window concentrates on August 5 the Copom decision, the end of the party convention deadline and the Quaest poll.
1.Executive Summary
This issue opens with the error. №10 reported as an unprecedented finding that the market had begun pricing Flávio Bolsonaro not reaching the runoff, and set a falsification criterion: third place holding above 8% for one more window. The test was negative in every session, and the two placement books went back to moving together, which reduces that reading to a one-window move. This issue's finding is in the main contract, and the mechanics are the point: in №10 the gap widened with Flávio falling 3.80pp, here it widened with him rising 0.60pp. The same number grows while measuring opposite things. Snapshot August 2, 19:47 BRT, two readings with no divergence across the 52 books with volume in the four contracts cited.
2.Why AFOS does not smooth
Four national polls in the same window produce the temptation to aggregate, and this is where aggregation costs the most. The average of the four first round gaps gives 8.35pp, a number no institute measured, and erases the only relevant fact: three houses converge near 9pp and one stands alone at 6pp. Whoever receives 8.35pp thinks they saw moderate dispersion. What exists is a consensus of three with one identifiable dissenter.
Why it matters: №10 reported four national polls converging in direction and treated that as the finding of the window. This one brings four again, and the convergence did not repeat at the level. With two observations there is no ruler to say which week was the exception. Mandatory and repeated caveat: market price is probability of victory, not vote margin, and the two quantities do not subtract. Second: PoderData is the house №10 pointed to as the ceiling of the range on Flávio and now appears as the floor of the gap, which is data about the house, not only about the race.
What weakens this issue's thesis is in the contract that supports it. The gap kept rising after the window, to 41.80pp on August 1, the series maximum, but fell back to 40.90pp on August 2. A top that lasts one session does not establish a plateau, and this issue will not call it a plateau. Lula's 2.00pp are also not attributable: the window had four national polls and the convention news flow at the same time, and there is no way to separate them.
The same framework we apply to Brazil, measuring the distance between the prediction market and the polls and checking the signal against the actual election result, has already been tested against eleven elections across four continents: India (2024, Lok Sabha, the only case where market and polls erred together in the same direction), France (2024), South Korea (2025), Peru and Colombia (2026), Chile, Germany and Canada (2025) and the United Kingdom, Mexico and the United States (2024). In some the signal was convergence, in others divergence, and the method reports both without retroactive adjustment. The complete dataset, with methodology and code, is open under Apache 2.0 and has a permanent DOI at the Harvard Dataverse.
3.Weighted scenarios for the week
Scenarios for the August 3-7 window, which has four registered national polls and concentrates three price-relevant events on the same day: on August 5 the Copom decision, the end of the legal party convention deadline and the declared publication of Quaest, the highest reliability of the window, all fall due together. No previous issue had three sources of repricing on the same Wednesday.
The Quaest poll of August 5 and the two Nexus polls of August 3 and 4 measure the first round gap between 8pp and 10pp, confirming the three concordant houses of the previous window and isolating PoderData as a house effect. Lula's winner contract oscillates between 64% and 66.50% with no new top, the gap stays between +39pp and +42pp and Flávio's third place remains below 6%. Net-neutral for BRL: it confirms the prevailing regime and opens no new trade.
The Quaest poll of August 5 measures the first round gap near PoderData's 6pp. In that case the dissenter becomes a leading indicator and the market's 40pp becomes overshoot built on three lagging measurements. The signature would be compression of the gap below +38pp with Flávio above 25.50% in the winner contract. It is the cleanest test in the set because Quaest has conf. 0.90, n=2,004 and field dates later than all four in the covered window. Risk of repricing for assets sensitive to electoral risk, and this issue records from the start that this scenario inverts the reading on this cover.
Copom decides on August 5, after the IPCA-15 of July 28 came in at 0.06% and the Focus survey cut the 2026 projection for the fourth straight week. A decision outside consensus reprices the inflation contract, whose bands have books of USD 5 thousand to USD 13 thousand. On the same day the convention deadline closes, with Flávio still without a running mate, and a ticket fact moves the placement contracts, which add up to USD 4.38M and USD 0.49M against USD 118.16M for the presidential market. The illustration of the risk is in this very window: the Senate contract marked MDB at 27.80% on July 31, against 18.30% the day before and 19.30% the day after, in a book of USD 7.8 thousand.
4.Indicator Grid
| Contract | Current | Δ week | Vol USD acc. | Implied reading |
|---|---|---|---|---|
| Gap Lula × Flávio | +40.10pp | ↑1.40pp in the week | 118.16M | First reading above 40pp in the series since April 14, and it widened with both names rising, unlike №10. It went on to +41.80pp on August 1, the series maximum, and fell back to +40.90pp on August 2 |
| Flávio · third place, first round | 5.70% | ↓2.20pp in the week | 22k | №10's test failed in every session. It closed August 2 at 4.90%. Over the same interval his second place rose 1.50pp, to 78.00%, and went on to 80.50% (book of USD 217 thousand) |
| Lula · winner | 64.50% | ↑2.00pp in the week | 7.91M | Broke the previous top, 63.50%, matched without being surpassed on July 26, 28 and 30. The series maximum then moved to 66.50%, on August 1, already outside the window |
| Flávio · winner | 24.40% | ↑0.60pp in the week | 7.84M | Gave back 0.60pp of the 3.80pp lost in №10's window. It rose 0.40pp in the very session of July 31, when the PP reaffirmed neutrality and closed the door on the running mate |
| Renan Santos · winner | 8.20% | ↓1.10pp in the week | 8.82M | Fell in four of the five sessions, against three institutes cutting in the order 7.8%, 4% and 3.0%. This time the distance between market and polls closed from the PRICE side |
| Renan · second place, first round | 8.20% | ↓7.20pp in the week | 1.09M | The largest delta of this issue and the most fragile: July 27 marked 15.40%, the peak of the ten sessions observed. Measured Friday to Friday the fall is 2.40pp, not 7.20pp |
| Ronaldo Caiado · third place, first round | 27.50% | ↑7.50pp in the week | 38k | He measures 6% in Nexus and 3.1% in AtlasIntel in the same window. Book of USD 38 thousand, and it gave back 5.00pp on August 1: move not confirmed |
| Inflation 2026 · 4.50–4.99% band | 33.70% | ↑7.40pp in the week | 13k | Jumped 13.00pp on July 28 alone, the day of the IPCA-15 at 0.06%. It reached 39.30% and was modal for one session, but the 5.00% to 5.49% band retook the mode at 38.30% |
| STF impeach < 2027 | 3.10% | ↓0.30pp in the week | 83k | Three orders of magnitude below the presidential market. It did not move in the week when an STF justice opened the 2nd inquiry into the president's son and lifted secrecy on a senator |
5.Liquidity and market structure
The three largest accumulated volumes are in contracts priced at 0.05%: Tarcísio (USD 13.72M), Carlos Massa (USD 10.38M) and Eduardo Bolsonaro (USD 10.37M). These are old positions never unwound: accumulated volume measures historical interest, not current conviction. The new case is in sixth place. Eduardo Leite has USD 7,913,520 accumulated at 0.05% and Lula has USD 7,909,138 at 65.50%. Tied in money, separated by less than USD 5 thousand, and 65 probability points apart. It is the cleanest demonstration the panel has ever recorded of why the volume column orders nothing on its own. Among the live contenders, Renan kept the volume lead, USD 8.82M against USD 7.91M for Lula and USD 7.84M for Flávio, while his price gave up 4.70pp in eight sessions: accommodation of an old position, not new entry.
The 5 largest volumes account for ~USD 52.73M (~45%) of the presidential market (total USD 118.16M across 32 markets, 17 with volume and 15 with no price). Lula's 2.00pp rise happened in a contract with USD 7.91M accumulated, practically tied with Flávio's USD 7.84M, so breaking the top is not a thin-book move. In the placement contracts the reading is the opposite: Flávio's third place accumulates USD 22 thousand and Caiado's USD 38 thousand, and that is precisely where this issue's two largest deltas are. A low-volume spike (USD <500k) remains treated as noise until recurring flow is confirmed.
6.Calendar of price-relevant prints
| Date | Sample | Why it matters | |
|---|---|---|---|
| Mon Aug 3 | Nexus Pesquisa (national) | n=2,000 · BR-02874/2026 · conf. 0.70 | Field dates later than the four in the covered window. First to test whether PoderData's 6pp gap was house effect or anticipation |
| Tue Aug 4 | Nexus Pesquisa (national) | n=1,200 · BR-05573/2026 · conf. 0.60 | Same house on two consecutive days with different samples. Measures the institute's internal dispersion, the control that is missing when comparing houses with each other |
| Tue Aug 4 | Republicanos national convention | not a poll · party act | Decides the party's presidential alliance, Flávio's second coalition door after the PP closed the first. It moves the placement contracts |
| Wed Aug 5 | Quaest (national) | n=2,004 · BR-06591/2026 · conf. 0.90 | The print that arbitrates this issue. Highest reliability of the window, field dates July 31 to August 3 |
| Wed Aug 5 | Ideia/Canal Meio (national) | n=1,500 · BR-04579/2026 · conf. 0.60 | Same day and same field as Quaest, with lower reliability. Two readings of the same electorate on the same day expose house effect |
| Wed Aug 5 | Copom decides the Selic rate · convention deadline closes | not a poll · meeting August 4 and 5 and legal deadline | The Copom decision moves the inflation contract; the legal deadline is the last day to define ticket and running mate, and it moves the placement contracts |
Source: TSE registry via AFOS API, and the Copom calendar. The 'registered ≠ published' status still holds and had an example in the covered window: AtlasIntel declared publication for July 28 and came out on July 29. The August 3 to 9 window has 23 registrations, 21 with a sample ≥ 1,000; the table lists the four of national scope, and the other 19, all state-level, fall outside by scope and not by absence of registration. Open case: the JOTA national poll with n=6,000 (BR-09823/2026), the largest sample in the set, declared publication for July 26 and did not enter the panel, because it was not possible to confirm in a primary source that the numbers came out.
7.Watch list, week triggers
- The Quaest poll of August 5 arbitrates this issue. A first round gap between 8pp and 10pp isolates PoderData as a house effect and gives backing to the 40pp pricing. Near 6pp, the dissenter becomes a leading indicator and this cover inverts.
- Flávio's third place needs to go back above 8% for №10's thesis to revive. It is at 4.90% and has been falling for seven sessions. Until it comes back, what counts is his second place, at 80.50%. Size caveat, which was the point: USD 22 thousand of book.
- Watch whether the +39pp to +42pp gap band becomes a plateau. The +41.80pp top lasted one session and gave back 0.90pp in the next. The difference between plateau and peak changes what can be claimed about how settled the race is.
- Renan turned on August 2 and the turn has no confirmation yet. He gave up 4.70pp in eight sessions down to the floor of 7.10% on August 1 and rose to 7.30% on August 2. **It is not a series minimum:** the minimum is 5.30% on April 26. Against Vox's 3.0% in the polls, the distance stands at 5.20pp.
- The inflation contract is the panel's most sensitive to the Copom decision. Bands with books of USD 5 thousand to USD 13 thousand, and one of them already moved 13.00pp in one session in this window. A surprise on August 5 moves that contract more than any poll of the week moves the presidential market.
8.Methodology
AFOS Tradeoff aggregates three signals without averaging them into a composite: Polymarket (USD-denominated, ~30min latency), polls registered with the TSE (declared intention, variable frequency) and 400+ press sources (event flow). When the three diverge, the divergence is the signal, not the consensus. USD volume is reported alongside the implied probability to separate conviction from artificial spikes. Liquidity (book depth) is not cited inline: low liquidity on Polymarket does not mean the price is wrong, the market is continuously arbitraged.
Weekly deltas come from snapshots persisted in our own database, not from retroactive reconstruction, and use the last point of each day. This produces differences of hundredths relative to the AFOS Daily, which reports the intraday capture: the July 31 gap appears here as +40.10pp and in the Daily as +40.15pp, and Renan's price vs. polls distance as 5.20pp here and 5.15pp there. Both are correct within their own convention, and we record it because the alternative would be the reader finding out alone.
Method note on superlatives: the public history API caps the query at 90 days, so any 'largest of the cycle' checked through it measures 90 days. The maximum claims in this issue were checked directly against the database, over 108 days with data between April 14 and August 2, and are written as of the series, never as of the cycle. What came before April 14 the series does not prove, and that is why no superlative here goes beyond that date.
9.Additional reading · macro coverage
AFOS Tradeoff is a primary source (Polymarket + TSE + polls); what follows is complementary reading for macro context. Note: some operate behind a paywall.
- Folha de S.Paulo · IPCA-15 slows to 0.06% in July and comes in below projections (July 28)(paywall), www1.folha.uol.com.br/mercado/2026/07/ipca-15-desacelera-a-006-em-julho-e-fica-abaixo-das-projecoes.shtml
- O Globo · IPCA-15 below expectations raises bets on a rate cut at the next Copom meeting (July 28)(paywall), oglobo.globo.com/blogs/miriam-leitao/post/2026/07/ipca-15-abaixo-do-esperado-aumenta-aposta-em-corte-de-juros-na-proxima-semana.ghtml
- Estadão · Focus: the market's 2026 inflation projection falls for the fourth consecutive week (July 27)(paywall), www.estadao.com.br/economia/focus-bc-projecao-inflacao-recuo-selic/
- O Globo · PP reaffirms neutrality in the elections and informs Tereza Cristina she will not be Flávio's running mate (July 31)(paywall), oglobo.globo.com/politica/eleicoes-2026/noticia/2026/07/31/pp-reafirma-neutralidade-nas-eleicoes-e-comunica-tereza-cristina-de-que-ela-nao-sera-vice-de-flavio.ghtml
- O Globo · MDB holds convention and decides on neutrality in the presidential race (July 27)(paywall), oglobo.globo.com/politica/eleicoes-2026/noticia/2026/07/27/mdb-faz-convencao-e-decide-pela-neutralidade-na-disputa-presidencial.ghtml
- Folha de S.Paulo · Novo confirms Zema's presidential candidacy but postpones the running mate announcement (July 27)(paywall), www1.folha.uol.com.br/poder/2026/07/novo-confirma-candidatura-de-zema-a-presidencia-mas-adia-anuncio-de-vice.shtml
This issue's primary signal (the gap crossing 40pp with both names rising, the failure of №10's test and the 3.3 points of dispersion across the four national polls) is direct observation of Polymarket pricing cross-referenced with the TSE registry, not derived from the articles above.
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.