Guest Post: ETHS Student on the IL-9 Election

Local teen explains how gambling can inform political data.

Tom HaydenMarch 13, 20265 min read

This is a special guest post from a local ETHS student. He can’t vote in the election, so this is as close as he can get. I asked him to write a bit about prediction markets, election analysis, and artificial intelligence. He also made a dashboard/website for the election that he links below.

I think it’s valuable to see how young folks view politics and technology and really appreciate Ryan’s words here.


Hey people. Tom’s letting me take over for this post. My name is Ryan McComb, and I’m a sophomore at ETHS who has spent the past few months deep in the IL-9 congressional race in a way that probably isn’t healthy for someone my age. All in all, the result is IL9.org, a site that aggregates prediction market odds and runs a forecasting model I built (in STATA, a criminally expensive modelling software). I’ll tell you what the numbers say, where I think the markets (Kalshi, et al) are wrong, and what’s actually going on in this race.

The Race (I’ll keep this one quick)

IL-9 is one of the more creatively drawn districts in Illinois, snaking from the deep west outskirts down through the North Shore and into Chicago’s northeast side. Evanston, despite being one of the most politically active cities in the district, accounts for only about 10% of its population. As a general rule, whoever turns out their voters in the parts of the district nobody is paying attention to (McHenry) will probably win.

There’s no ranked-choice voting or runoff in this election, and in my opinion, one of the newly formed “Big 2” (Daniel Biss or Kat Abughazaleh) will come out on top. Biss is leading in polling at 24%, with Kat at 20%, but Laura Fine (who is in a distant third) has significantly more outside money. Meanwhile, Kat’s small-dollar campaign (much of it from out of state, so take that as you will) means Biss has had to spend every dollar wisely. The race’s outcomes are highly uncertain (with a lot of variance), and anything could happen, but according to my model, the general consensus, and the prediction markets, one of the two, Kat or Daniel, is exceedingly likely to win.

Laura Fine’s PAC money has actually hurt her: AIPAC (American-Israel Public Affairs Committee, they lobby for increased support and connection between the two countries and have been under fire increasingly, especially by the left, in recent years)  favourability is quite low in this district, and both Daniel and Kat have used that association to portray her (misleadingly or correctly, depending on who you support) as bought and paid for by AIPAC. The markets currently give her roughly ~3% chance to win, a significant loss from the initial highs of a month ago, where she peaked at nearly ~30% odds of winning.

The Part Where I Explain the Maths!

I built IL9.org as a personal project that has gotten some attention from around the district. [1] The headline feature is a weighted betting market aggregation, and in addition, a fundamentals-and-polling demographic model handcrafted in Stata. All free, though there is a small pop-up reminding you that the candidate committees have raised over $10,000,000 combined vs. IL9.org’s measly $175. Come check it out before the race, and especially on election night, where we will have a live results page.

A prediction market works like a stock market: you buy a contract that pays out if your candidate wins. If your candidate has a 30% chance of winning, you will buy the Yes contract for ¢30, and if they win, you get paid a dollar, if not, you will lose your whole ¢30 investment. Every few seconds, IL9.org pulls from two markets: Kalshi (real money, ~$100K in trading volume on this race) and Manifold Markets (a free play-money exchange that is, remarkably, nearly identical in calibration to Kalshi). Rather than just showing the last traded price, which can swing wildly in a low-liquidity race like this, the site calculates a weighted midpoint of the bid-ask spread (the midpoint between where someone wants to buy and where someone wants to sell) and order book pressure (how much someone wants to buy and how much someone wants to sell) on both sides. One of the two markets (Manifold) uses an AMM, or automated market maker, which always takes the other side of your trade, making these midpoint calculations extraneous for that market. [2]

As Tom did for the Inspector General site, I used Claude (an AI made by Anthropic) to write most of the CSS and HTML (the code that you see for the user interface). I only had to handle the Python myself, because just like most people (including myself), Claude has a hard time visualizing an order book and doing the maths for it. I think AI tools like this genuinely change what a person with a laptop can build on their own.

Tom and I have decided to launch a fun poll: the FOIA Gras x IL9Cast Voter Poll. The sampling error will be immense, but answer honestly. Its results will eventually be published and have no bearing on my projections, so just be honest!

Poll
If the election was today (it is) who would you or are you voting for the IL-9 Election?

For election night: if you would like to bet on a play-money site, here is the link to the Manifold Market. I will most likely be in the back of Double Clutch at the Biss campaign party, completely sober :), posting on Twitter in the IL-09 Racenight Community. Also, watch out for a VoteHub or DDHQ race call. I will be helping VoteHub call Illinois races on election night and am super excited! [3]

I don’t like making preemptive projections. The whole point of a probability model is that you don’t have to, a true cop-out. But if you’re going to read this and walk away wanting a name: Daniel Biss wins. Most roads lead to Daniel. I think the polling lead is real, the name recognition advantage in a fragmented field is real, and when in doubt, the frontrunner usually stays the frontrunner. Go ahead and quote me on it, unless someone else wins, of course :)

Have fun on election night!!

[1] It is impossible to prove these numbers will be more accurate in one niche congressional race. You would need a larger sample set of many races and would need to calculate relative Brier scores to compare the raw vs. weighted accuracy. But these numbers are much more accurate at capturing actual market meaning vs. the topline, so that is the interpretation.

[2] Separate tangent: If you know what an AMM bonding curve is, you probably know someone who has lost a lot of money on crypto (or most likely, yourself). Personally, I am a fan of the Uniswap curve (the only one simple enough for me to understand).

[3] We probably will not call IL-09 on election night unless it is a massive blowout.