Alpha in Academia

Alpha in Academia

Modeling Prediction Markets As Exotic Options Part 2

[WITH CODE] Building a probability dashboard for temperature contracts

Alpha in Academia's avatar
Alpha in Academia
Apr 09, 2026
∙ Paid

Reviewed and updated 26 July 2026

Hello!

Welcome back to the second post in this series. Last week, we covered the structure of digital and digital range options and their associated greeks.

Today, we’ll dive deeper into modeling these digital range options with market prices. The code at the end uses a fictional six-contract example so you can inspect the method without downloading market data.

Let’s get into it.

The 5-Strike Model and Implied Spot

By looking at the differences between contracts on Kalshi, we can fit a simple probability distribution to normalized bucket prices. A high price for a narrow range like 90 to 91°F means more probability mass sits inside that bucket; it does not identify volatility on its own.

If that price drops while other ranges like >93°F rise, probability mass has shifted toward the upper tail. Pin risk remains a danger in these markets: near a settlement boundary, a small change in the reported temperature can move the payoff across the full $0-to-$1 cliff. The model sensitivities concentrate around those boundaries, but temperature itself is not tradable, so they are diagnostics rather than a hedge recipe.

The mathematical foundation of this model rests on the observation that Kalshi’s exhaustive probability buckets implicitly define a cumulative distribution function. A between contract labeled 78 to 79°F uses inclusive integer endpoints: 78°F and 79°F both satisfy the contract terms. For the continuous normal model, I represent that discrete bucket with half-degree boundaries at 77.5 and 79.5. By summing the bucket probabilities from the bottom up, we can construct five cumulative boundary probabilities at 75.5, 77.5, 79.5, 81.5, and 83.5.

We avoid the classical log-normal Black-Scholes framework because temperature does not grow multiplicatively like a stock price. Instead, we utilize an additive normal distribution model where the settlement temperature is modeled with a market-implied mean and a market-implied standard deviation in degrees Fahrenheit.

This approach avoids percentage moves, because a forecast of 80°F does not necessarily imply larger degree moves than a 50°F forecast. A log-normal model would impose positivity and multiplicative dynamics that are not natural assumptions for temperature.

Rather than manually inputting a temperature forecast from an external source, the dashboard solves for the market’s implied mean directly from the bucket prices.

We compute a discrete mean as a probability-weighted average of bucket midpoints to provide a fast and intuitive estimate of the consensus. However, the model primarily relies on a continuous mean and standard deviation derived by fitting a normal distribution to the five cumulative boundary probabilities with bounded nonlinear least squares.

The fitted parameters use the full distributional shape, but they remain sensitive to asynchronous prices, liquidity, and the normal-distribution assumption. The fitted mean serves as the model’s center for the subsequent probability and Greek calculations.

Below, I’ll walk through the dashboard and show how normalized probabilities, a fitted distribution, and model sensitivities can help diagnose where individual buckets differ from the model.

Fictional six-contract temperature example with fitted mean, fitted sigma, price sum, fit error, and cumulative distribution.
The fictional six-contract example and its fitted normal distribution.

Keep reading with a 7-day free trial

Subscribe to Alpha in Academia to keep reading this post and get 7 days of free access to the full post archives.

Already a paid subscriber? Sign in
© 2026 Alpha in Academia · Privacy ∙ Terms ∙ Collection notice
Start your SubstackGet the app
Substack is the home for great culture