
HRRR weather model explained (for weather prediction markets)
You've probably trading weather markets on Kalshi or Polymarket, for example, Los Angeles will reach 77°F today by checking a weather app, noting the temperature figure, and then making the trade on that basis. That's entirely reasonable since that's what everybody else does.
However, that figure didn't just show up out of nowhere; it is the end result of a lengthy sequence of numerical modelling and statistical adjustments, and most of the people trading on it have never examined the chain itself. In fact, it is precisely within that chain that the advantage lies.
>The HRRR (High-Resolution Rapid Refresh) is the convection-allowing model that NOAA uses, with a grid spacing of 3km extending over the continental United States. Since the larger global models (GFS, ECMWF) have a grid that is too coarse to depict thunderstorms accurately, they have to simulate them by means of cumulus parameterization.
The HRRR's grid, however, is fine-grained enough to eliminate the need for such simulation and instead carries out the convection directly. Because of this, it is the model that people actually pay attention to, even if they aren't aware of its name.
HRRR doesn't have a single forecast range; it has two, and the one you receive depends on the cycle in question. It is carried out every hour, 24 times each day.
Twenty of these hourly runs (01Z, 02Z, 03Z, and so on) only extend the forecast to 18 hours in the future, but four of them — at 00Z, 06Z, 12Z, and 18Z — operate in an extended mode that covers 48 hours.
The farther away from the actual time of the forecast you are, the more that run will be making guesses rather than carrying out observations. It's worth bearing in mind before you place too much trust in a 00Z run's view of tomorrow at 3 p.m.
Many model-based strategies are not actually responding to the forecast itself, but rather to the moment when a new run is released.
For example, if the 04Z cycle completes its calculations at approximately 05:21 UTC, the price remains unchanged as long as the market didn't notice anything new, and then it jumps immediately once the new run's data appears: whatever that may be, such as a revised Tmax, a bias correction, or a different call regarding cloud timing.
and in UTC the same chart:
Two traders may be looking at the same forecast (which has been correctly adjusted) and yet end up with entirely different outcomes simply because one of them found out a few minutes earlier.
In a market where many people check the API or continually refresh the dashboard, the advantage of knowing the figure before everyone else goes beyond simply knowing it.
That's why repricing happens and why it's important to receive weather model calculations as soon as possible - it may provide you with a better entry price.