Weather Prediction Markets

Edge-calibrated probabilities
for weather markets

A blended NWS + Open-Meteo model, validated on 67,000+ historical observations, returning calibrated temperature exceedance probabilities for Kalshi and prediction market traders.

Get Free API Key View API Docs
67k+
Validated observations
2.7°F
Calibrated sigma (all horizons)
2.12°F
Mean absolute forecast error
18
US cities covered
72h
Maximum forecast horizon

From forecast to edge in one API call

Supply a city, strike temperature, and direction. Get back a calibrated probability you can compare against the Kalshi market price to find edge.

1

Dual-source forecast

We fetch live data from NWS (60%) and Open-Meteo (40%), blending them into a single reliable forecast. Source disagreement widens sigma automatically.

2

Calibrated uncertainty

Sigma is fixed at 2.7°F based on backtest calibration across 67,000 observations — not a guess. Validated MAE of 2.12°F across 8 cities, full year 2024.

3

Gaussian exceedance model

P(temp > strike) = 1 − Φ((strike − forecast) / σ). Returns a probability you can directly compare to the Kalshi YES/NO price.

4

Find your edge

If model says 72% and Kalshi offers YES at 58¢ → edge = 14%. Size via Kelly criterion. That's the whole loop.

Simple REST API, JSON responses

One endpoint, one key, no SDKs required. Pass your API key in the X-API-Key header.

Request
GET /v1/probability

Host: api.alphaweather.io
X-API-Key: kw_your_key_here

Query params:
  city       NYC
  strike     58
  direction  above
  temp_type  high   (high|low)
  date       2026-03-28 (optional)

curl example:
curl -H "X-API-Key: kw_..." \
  "https://api.alphaweather.io/v1/\
probability?city=NYC&\
strike=58&direction=above"
Supported cities
GET /v1/cities   # full list with lat/lon
GET /v1/usage    # your call counts
GET /health      # no auth required
Response
{
  "city":                 "NYC",
  "date":                 "2026-03-28",
  "strike":               58.0,
  "direction":            "above",
  "temp_type":            "high",

  "model_prob":           0.721043,
  "forecast":             61.4,
  "sigma":                2.7,

  "nws_temp":             62.0,
  "om_temp":              60.5,
  "source_agreement":     true,
  "blend_weights":        {"nws":0.6, "om":0.4},
  "hours_to_settlement":  31.2,
  "model":                "NWS-OM-blend-v1",
  "disclaimer":          "For informational purposes only."
}
NYCCHILAX MIADALDEN AUSPHXSEA ATLBOSSFO HOULASMSP PHLDTWSLC

Validated against 67,000+ real observations

We backtested against Open-Meteo Historical Forecast API (archived GFS model runs) vs. actual temperatures across 8 cities, full year 2024. The optimal sigma was found by minimizing Brier score — not assumed.

Horizon Observations MAE Brier Score Old σ Calibrated σ Improvement
72h 22,485 2.12°F 0.1345 16.0°F 2.7°F 83% tighter
48h 22,428 2.12°F 0.1344 12.2°F 2.7°F 79% tighter
24h 22,500 2.12°F 0.1345 8.3°F 2.7°F 68% tighter

Tighter sigma = sharper probabilities = larger detectable edge vs. market price. The old default sigma was 3–8× too wide, causing near-50% model probabilities on almost everything.

Start free. Upgrade when you need more.

No credit card required to start. Free tier keys issued instantly.

Free
$0 / month
For testing and light use
  • 100 API calls / day
  • All 18 cities
  • Full response payload
  • 72h forecast horizon
  • No SLA
  • Community support only