Autonomous weather prediction agent on Polymarket.
Forecasts don't lie. Markets do.
EXKGb2SNA9D7umDm7kDGvMMoZDb6Tiz32K27zRKTBAGS
Rainmaker is an autonomous agent that bets on weather prediction markets on Polymarket. It pulls real-time meteorological data from NOAA, ECMWF, and GFS, builds ensemble probability distributions, and compares them against live market odds. When the market is wrong about the weather, Rainmaker bets against it.
It has been live since January 2026. It is profitable.
Weather Data Polymarket
+-----------+ +-----------+
| NOAA | | Open |
| ECMWF |----> Ensemble --->| Markets |---> Edge?
| GFS | Probability | Implied | |
| Satellite | Distribution | Odds | |
+-----------+ +-----------+ |
v
+---------------+
| Yes: Bet |
| No: Wait |
+---------------+
- Ingest — continuous feed from NOAA, ECMWF, GFS, satellite imagery, and 40 years of climate records
- Model — weighted ensemble averaging across forecast models, producing probability distributions for every weather outcome with active markets
- Compare — agent probability vs. market implied probability. The gap is the edge
- Bet — when edge exceeds threshold, size position using quarter-Kelly, respecting bankroll and liquidity constraints
- Settle — track outcomes, update model weights based on calibration, compound profits
| Category | Example | Edge source |
|---|---|---|
| Temperature | "NYC hits 100°F in July?" | Ensemble spread vs. crowd overreaction to headlines |
| Precipitation | "LA gets >2in rain this week?" | GFS + satellite convergence |
| Hurricanes | "Cat 3+ hurricane before October?" | SST anomalies + historical base rates |
| Snowfall | "White Christmas in Chicago?" | Multi-model agreement scoring |
| Records | "Hottest month on record?" | Climate trend + model consensus |
| Seasonal | "El Nino declared by Q3?" | ENSO index + oceanic thermal inertia |
The best edge is in hurricane markets. The crowd panics or sleeps — Rainmaker reads sea surface temperatures.
pub struct RiskEngine {
bankroll: f64,
max_position: f64, // 5% of bankroll per market
max_drawdown: f64, // halt at 15%
correlation_tracker: CorrelationMatrix,
}
impl RiskEngine {
pub fn size(&self, edge: f64, odds: f64, category: &str) -> f64 {
let kelly = edge / odds;
let quarter_kelly = kelly * 0.25;
let correlated = self.correlation_tracker.exposure(category);
let adjusted = (quarter_kelly - correlated).clamp(0.0, self.max_position);
self.bankroll * adjusted
}
}- Max 5% bankroll on any single market
- Max 10% of a market's liquidity
- Quarter-Kelly sizing (conservative)
- Correlated exposure tracking across weather categories
- Auto-halt at 15% drawdown
| Metric | Value |
|---|---|
| Win rate | 73.2% |
| ROI | +41.8% |
| Sharpe ratio | 2.14 |
| Max drawdown | -8.3% |
| Markets traded | 147 |
| Avg edge at entry | 12.4% |
| Best category | Hurricanes (81%) |
Why does the edge exist? Three reasons: meteorological models are better than people think, weather markets on Polymarket are thin and slow to reprice, and most participants bet on weather with gut feeling. Rainmaker uses data.
Rainmaker Runtime
+-----------------------------------------------------+
| |
| Ingestion Modeling Execution |
| |
| - NOAA API - Ensemble - Market |
| - ECMWF API Averaging Scanner |
| - GFS API - Bayesian - Position |
| - Satellite Feed Updating Sizing |
| - Climate Archive - Confidence - Order |
| Intervals Execution|
| - Calibration - P&L |
| Tracking Tracking |
+-------------------+--+------------------------------+
| |
v v
+-----------------------------------------------------+
| Risk Engine | Treasury |
| - Kelly sizing | - Reinvest 80% |
| - Correlation hedge | - Reserve 20% |
| - Drawdown monitor | - Self-funding loop |
+-----------------------------------------------------+
Built by Jake Eaton and Vincent Koc. Jake is a writer and editor at Anthropic. Vincent is a technologist and AI engineer. Rainmaker is a side project — an experiment in autonomous agents making real decisions with real money in prediction markets.
| Role | |
|---|---|
| jkeatn | Creator |
| vincentkoc | Core Engineering |
Independent project. Does not represent any employer.
Rainmaker. The forecast never stops.

