Method overview

We compare weather forecasts with market prices.

We are not trying to guess one winning bracket. We are trying to find where the market price is wrong.

Simple flow

Four steps from forecast to signal.

Primary ensemble51 ECMWF members
Feature set10+ inputs per city
RetrainingLive signals into probabilities
Risk ruleSkip spread >= 6C
1 Build the forecast

We start with a 51-member ECMWF ensemble, then add regional models, AIFS, and live weather features like cloud, radiation, and pressure.

2 Correct it to the city

Each city has its own post-processor. It uses 10+ of propreitary inputs, seasonal history, lead time, and station behavior to calibrate the raw forecast.

3 Compare with the market

We turn the forecast into bracket probabilities, then compare those numbers with live prediction market prices to find the mispriced side.

4 Only send filtered trades

We skip weak, noisy, or illiquid setups. High spread, bad calibration, tiny edge, and thin markets all get filtered out.

Key idea

The best trade is often the one the market overpriced.

Example: the model gives one bracket only a 28% chance, but the market prices that same YES token at 55c. That means the market is much more confident than the model is.

Model Q28%
Market YES55c
Implied NO45c
NO edge+27 pts
Best tradeBuy NO
Why NO wins here: if the model says the bracket happens only 28% of the time, then it should fail about 72% of the time. Paying about 45c for NO can be the better trade than paying 55c for YES.
What subscribers get

A cleaner signal, not the full model dump.

  • Direction: YES or NO
  • Bracket: the market being traded
  • Edge and EV: why the trade exists
  • Price context: what the market was charging at entry