Stop guessing. Start trading with data.
The only API that combines resolution-source weather data with prediction market intelligence. Built by traders, for traders.
Covering Polymarket + Kalshi — the two largest weather prediction market platforms.
Everything you need to find edge, backtest strategies, and trade with confidence.
We pull directly from Weather Underground — the exact source prediction markets use to settle. Know what the market will resolve at before it does.
Compare WU, Open-Meteo, WeatherAPI, and METAR airport data side-by-side. Instantly see which source is most accurate for any city.
For any city and temperature bucket, get the historical bust probability and a fair NO price. Know instantly if the market is mispriced.
78 cities ranked by forecast accuracy. Trade in cities where the data is trustworthy, avoid the ones where sources disagree.
Real-time signals comparing today's forecast against active market buckets. See exactly where the edge is right now.
Test strategies against 10 years of weather data and 9,000+ resolved markets. Know your win rate, ROI, and risk before you trade.
Real strategies powered by real data.
Buy NO on "below" buckets at 90%+ where the temperature has already exceeded the ceiling. Near-guaranteed resolution at $1.
Use bust probability scoring to find markets where the forecast strongly disagrees with the current price. Enter early, hold to resolution.
When weather sources disagree significantly, one is wrong. Use city reliability data to trade the most accurate source's reading.
Simple REST API. No SDK needed. Works with any language.
import requests
# Get live edge signals — where forecast disagrees with market price
r = requests.get("https://weatherpoly.com/v1/intelligence/live-edge",
headers={"Authorization": "Bearer YOUR_KEY"})
for edge in r.json()["edges"]:
if edge["signal"] == "BUY NO":
print(f"{edge['city']} {edge['bucket']} — forecast {edge['forecast_high']} vs ceiling, +{edge['margin']} margin")
# Is Atlanta 77F NO fairly priced at 65%?
r = requests.get("https://weatherpoly.com/v1/intelligence/bust-probability",
params={"city": "atlanta", "bucket_hi": 77, "bucket_type": "range"},
headers={"Authorization": "Bearer YOUR_KEY"})
data = r.json()
print(f"Fair NO value: {data['no_fair_value']:.0%}")
print(data["recommendation"])
# "NO is fair at 21%. Buy below, sell above."
# How profitable is buying NO at 50% when forecast exceeds ceiling by 5F?
r = requests.get("https://weatherpoly.com/v1/backtest/forecast-bust",
params={"weather_source": "openmeteo", "margin_f": 5, "entry_price": 0.50},
headers={"Authorization": "Bearer YOUR_KEY"})
s = r.json()["summary"]
print(f"Win rate: {s['win_rate']}% | ROI: {s['roi_pct']}% | Trades: {s['total_trades']}")
# "Win rate: 96.5% | ROI: 93.0% | Trades: 1941"
We built what we couldn't find anywhere else.
| Feature | WeatherPoly | Others |
|---|---|---|
| Resolution source data (WU) | Direct from Weather Underground | Not available |
| Multi-source comparison | 4 sources side-by-side | 1-2 sources max |
| Bust probability scoring | Per city, per bucket, per type | Not available |
| City reliability ranking | 78 cities ranked and scored | Not available |
| Backtesting engine | Multiple strategies via API | Limited or manual only |
| REST API access | Full programmatic access | Varies |
| Historical depth | 10 years, 104K+ records | Days to months |
| Live edge detection | Real-time trading signals | Not available |
Start free. Upgrade when you're ready to trade seriously.
WeatherPoly actively collects data from Polymarket (78 cities, WU resolution) and Kalshi (20+ cities, NWS resolution). Our weather intelligence works with any platform including ForecastEx. We track resolution sources for each platform so you always know what data the market settles on.
Prediction markets resolve (settle) using a specific weather data source — typically Weather Underground airport station data. We pull directly from this source so you know exactly what the market will resolve at.
Our bust probability is calculated from actual historical outcomes across 9,000+ resolved markets and 10 years of weather data. It's not a prediction — it's a statistical fact based on how often temperatures have historically exceeded specific thresholds.
Absolutely. The REST API is designed for programmatic access. Use any language — Python, JavaScript, Go, Rust. Combine our intelligence endpoints with your execution logic on Polymarket or Kalshi.
Market price snapshots are captured every 60 seconds. Weather actuals from WU and Open-Meteo update every 30 minutes. Live edge detection uses the latest available data on every request.
Join traders using data-driven weather market intelligence.