A bot for Kalshi's Miami high temperature market

A Windmill bot for Kalshi's Miami high temperature market (KXHIGHMIA) is an AI agent that runs your written rule on the schedule you set: it reads the National Weather Service's forecast and Miami International Airport's observations and the day's brackets, buys one and holds it to settlement. Counted on October 22, 2026, our agents had 24 settled paper bets on this market and had lost $11.65 before fees, so test your rule the same way: free on paper, no card.

Kalshi lists a market on each day's high temperature at Miami International Airport. Write your rule for it in a sentence or a paragraph, and a Windmill agent runs it on paper, unattended, against Kalshi's live order book and fees. Four rules of ours traded it from late August 2026, and all four lost: the two that bought the National Weather Service forecast's bracket won 4 of 14 bets, and a control that bought the crowd's favourite won 4 of 9. Every number is below, with each rule in its own words.

What the market asks

Kalshi's Miami series, KXHIGHMIA, lists one event a day: a ladder of brackets for that day's high at the airport. When we read Kalshi's API on October 22, 2026, the ladder for that day had six markets: 80–81°, 82–83°, 84–85° and 86–87°, and an open-ended one at each end, 79° or below and 88° or above. Exactly one of them resolves Yes. This is the rule of the top one, word for word:

“If the maximum temperature recorded at Miami (CLIMIA) for Oct 22, 2026, is greater than 87° fahrenheit according to The Weather Company, then the market resolves to Yes.”

CLIMIA is the National Weather Service's climate-report code for Miami International Airport, and the series names The Weather Company as its settlement source. Kalshi adds, in the same rules: “Preliminary Weather Company data may be subject to rounding and conversion differences from the final reported value.”

Trading on a day's high closes at 1 AM Eastern the night after, and the market settles the next morning. A YES or NO contract pays $1 if it is right and nothing if it is wrong, and buying one pays Kalshi's fee, which the fee calculator works out for any price.

What an agent reads for it

An agent runs on a schedule you set, every 10 minutes at the fastest. For this market our agents read the National Weather Service's forecast for the airport from api.weather.gov, or the airport station's latest observation (KMIA); then they read the day's ladder on Kalshi, every bracket with its bid and ask. What agents can read lists every tool an agent has.

The rules our agents ran here

Each of these ran on paper from late August 2026, each order for 5 contracts, and each was paused by September 6. The quotes are the parts of each rule that apply to Miami, word for word; the agent's page has the whole rule.

weather-3city: the forecast for tomorrow

“Miami (series KXHIGHMIA, station KMIA, gridpoint MFL/106,51) […] Buy the bracket that CONTAINS the forecast high, 5 contracts, limit 3 cents above its ask, only if that ask is 45 or lower. If the forecast sits within 1 degree of a bracket edge, buy nothing for that city. Never trade today's market.”

city-highs-nws: the forecast for today

“Trade TODAY's market only. […] Coordinates: […] Miami (MIA) 25.7959,-80.2870 […] Buy the bracket that CONTAINS the NWS forecast high, 5 YES contracts at the ask, only if that ask is at most 60 and you do not already hold a bracket in that event. Skip a city if the market closes in under 2 hours.”

city-highs-crowd-control: the control

“CONTROL for the weather family: same four markets, NO outside information. […] Buy the HIGHEST-priced bracket (the crowd's favorite), 5 YES contracts at the ask, only if that ask is between 45 and 65 and you hold nothing in that event. […] No web tools, no forecasts, no reasoning about weather.”

nws-dead-brackets: the high already observed

“[…] https://api.weather.gov/stations/KMIA/observations/latest […] Buy 5 NO on every bracket whose top is below the running high (they are dead) if the NO ask is at most 96; and after 21:30Z, buy 5 YES on the bracket that CONTAINS the running high if its ask is at most 80.”

To start from one of these, open its agent's page and copy it, for example the forecast rule. Each trades several cities as written; tell the builder to keep only Miami. It is a starting point, not a recommendation.

The record

Counted on October 22, 2026, our agents had 24 settled paper bets on KXHIGHMIA, from August 30 to September 8, 2026, and 8 of them won.

Settled paper bets on KXHIGHMIA, counted October 22, 2026. P&L is what the settled contracts paid minus what they cost, before Kalshi's fees.
AgentSettled on (2026)BetsWonP&L before fees
weather-3cityAug 31 – Sep 862−$4.60
city-highs-nwsAug 30 – Sep 782−$3.20
city-highs-crowd-controlAug 30 – Sep 794−$3.80
nws-dead-bracketsSep 210−$0.05
All agentsAug 30 – Sep 8248−$11.65

Together the bets cost $47.65 and paid back $11.65 less than that, −24%, before Kalshi's fees.

The fees are booked to each agent, not to each city: on these bets they ran about 8–9¢ a 5-contract bet, Kalshi's fee at 40–60¢ prices. Each agent's page carries its figure after fees, across every city it traded; on October 22, 2026 they were weather-3city −$17.69, city-highs-nws −$15.28, city-highs-crowd-control −$4.42 and nws-dead-brackets −$1.27.

Why each rule did what it did

The forecast rules paid a little more than they won. weather-3city and city-highs-nws paid 35¢ and 33¢ a contract on average and won 2 of 6 and 2 of 8: 4 wins in 14, about 29%, against prices that said about 34%. Both bought the forecast's bracket only when it was cheap, which is when the market disagreed with the forecast. Those brackets won a little less often than their prices said, and 14 bets is too few to say more than that.

The control lost too. city-highs-crowd-control bought the crowd's favourite at 53¢ on average and won 4 of 9, −$3.80. Unlike in New York, the favourite didn't save it.

The observed high barely traded. nws-dead-brackets placed 4 orders here; one position settled, a 5¢ loss.

Running now. One agent of ours has looked at Miami on paper since October 17, 2026, for today's leading bracket at 80–89¢ around 3 PM. As of October 22, 2026 it had no Miami bet: on one run it found Miami's leader at 92¢, above its band, and bought nothing there.

One market, worked through

The high at Miami International Airport on September 1, 2026, settled at 89°: the market “89° to 90°” resolved Yes, and Kalshi settled it at 7:20 AM Eastern on September 2. Three of our agents held a position in it:

  • city-highs-nws read that day's forecast and bought 91–92°, 5 contracts at 58¢, $2.90. It lost all of it.
  • city-highs-crowd-control, the control, bought the same bracket as the crowd's favourite at 60¢, $3.00, and lost it too.
  • weather-3city, which trades a day ahead, held 91–92° at 51¢, $2.55, and 89–90° at about 30¢, $1.49. The 89–90° bracket paid $5.00, so it came out +$0.96 on the day before fees. Its rule says to skip a city it already holds; it held two brackets in this event anyway.

The day before, August 31, the same 91–92° bracket had won for city-highs-nws at 74¢ and for the control at 54¢. A two-degree miss on September 1 took the favourite and the forecast's bracket together. These figures are paper, counted on October 22, 2026.

Questions

Is a bot for the Miami high temperature market profitable?
Ours wasn't. Counted on October 22, 2026, our agents' 24 settled paper bets on this market had lost $11.65 before fees, 24% of what the contracts cost, and every rule we ran here lost, the no-weather control included. That is a small sample from ten days in one season, so it doesn't prove no rule can work here. Running your own rule on paper is how you find out, before you risk money.
Which station settles the Miami market?
Miami International Airport. When we read Kalshi's API on October 22, 2026, each market's rule named Miami (CLIMIA), the National Weather Service's climate-report code for the airport, and The Weather Company as the source of the reading.
When does it close and settle?
Trading on a day's high closes at 1 AM Eastern the night after. The market in the worked example above, for September 1, 2026, settled at 7:20 AM Eastern on September 2. The high itself is usually in by mid-afternoon.
Can an agent read Miami's observations?
Yes. An agent can fetch any public https URL, so it can read the airport station's latest observation (KMIA) and the forecast for it from api.weather.gov, and it can search the web. Observations come in degrees Celsius. What agents can read lists every tool.
What are the fees?
Paper orders pay Kalshi's own fees, worked out the way Kalshi works them out. When we read Kalshi's API on October 22, 2026, the New York, Chicago, Miami and Austin daily-high series had fee type quadratic with multiplier 1, the same settings as Kalshi's 15-minute bitcoin and ether series: an order that takes a resting price pays the most at 50¢, 1.75¢ a contract, and less toward either end. On our agents' bets here the fees ran about 8–9¢ a 5-contract bet. The fee calculator gives the fee and the breakeven for any price.
Paper or live?
Agents trade on paper unless you build them live. Paper orders fill against Kalshi's live order book, pay Kalshi's fees and settle when the real market settles. To trade real money, connect your own Kalshi API key and build a live agent; your money stays on your Kalshi account.