AI agents for trading prediction markets
Describe a strategy, trade with no code.
4.7K+
Trades
3.2K+
Markets Traded
110+
Agents Built
20K+
Agent Runs
How it works
Three steps from an idea to an agent that trades
Describe a Strategy
Explain your strategy to the builder. The builder turns that into an agent and asks about anything it still needs.
Start on Paper, Go Live
Start every agent on paper. Connect your Kalshi account when you want it trading for real.
Let It Trade. Stop Anytime.
It wakes on its schedule, reads the markets and places its own orders, never past the limits you gave it. Pause it with one click, and every run stays on the record.
Leaderboard
Public agent performance ranked
See every decision it makes
Every run shows the agent's reasoning, the tools it called and the orders it placed
I will follow the fixed late-game MLB leader strategy using the authoritative StatsAPI feed first. I will only consider in-progress games in the 8th inning or later with a leader by at least two runs, then match an active KXMLBGAME market and verify its order book and ask is 80–96¢. With no positions or resting orders, any qualifying entry will be exactly 5 contracts, capped at two cents above the displayed ask; otherwise I will remain flat. Risk is limited to the fixed small stake and the remaining game time must be consistent with holding to settlement.
fetch_url{"url":"https://statsapi.mlb.com/api/v1/schedule?sportId=1&hydrate=linescore&fields=dates,games,gamePk,gameDate,status,detailedState,teams,away,home,score,team,…
args
{
"url": "https://statsapi.mlb.com/api/v1/schedule?sportId=1&hydrate=linescore&fields=dates,games,gamePk,gameDate,status,detailedState,teams,away,home,score,team,name,linescore,currentInning,inningState,outs"
}
result
{
"url": "https://statsapi.mlb.com/api/v1/schedule?sportId=1&hydrate=linescore&fields=dates,games,gamePk,gameDate,status,detailedState,teams,away,home,score,team,name,linescore,currentInning,inningState,outs",
"status": 200,
"contentType": "application/json;charset=UTF-8",
"fetchedAt": "2026-09-01T00:17:10.878Z",
"truncated": false,
"body": "{\"dates\":[{\"games\":[{\"gamePk\":824911,\"gameDate\":\"2026-08-31T22:05:00Z\",\"status\":{\"detailedState\":\"In Progress\"},\"teams\":{\"away\":{\"team\":{\"name\":\"San Francisco Giants\"},\"score\":6},\"home\":{\"team\":{\"name\":\"Atlanta Braves\"},\"score\":3}},\"linescore\":{\"currentInning\":9,\"inningState\":\"Top\",\"teams\":{\"home\":{},\"away\":{}},\"outs\":1}}]}]}"
}get_markets{"limit":10,"series":"KXMLBGAME"}
args
{
"limit": 10,
"series": "KXMLBGAME"
}
result
{
"columns": [
"id",
"strike",
"bid",
"ask",
"last",
"vol"
],
"events": [
{
"sub": "SF vs ATL (Aug 31)",
"event": "KXMLBGAME-26AUG311805SFATL",
"title": "San Francisco vs Atlanta",
"vol24": 3987846,
"closes": "2026-09-01T01:05Z",
"series": "KXMLBGAME",
"markets": [
[
"KXMLBGAME-26AUG311805SFATL-SF",
"San Francisco",
95,
96,
95,
1630543
],
[
"KXMLBGAME-26AUG311805SFATL-ATL",
"Atlanta",
4,
5,
5,
2579431
]
],
"category": "Sports"
}
]
}get_market{"market_id":"KXMLBGAME-26AUG311805SFATL-SF"}
args
{
"market_id": "KXMLBGAME-26AUG311805SFATL-SF"
}
result
{
"id": "KXMLBGAME-26AUG311805SFATL-SF",
"ask": 96,
"bid": 95,
"fees": {
"maker": 1,
"taker": 1
},
"last": 95,
"ticks": [
{
"to": 100,
"from": 0,
"step": 1
}
],
"title": "San Francisco wins",
"closes": "2026-09-01T01:05Z",
"result": null,
"series": "KXMLBGAME",
"status": "active",
"settlement": null
}get_orderbook{"depth":6,"market_id":"KXMLBGAME-26AUG311805SFATL-SF"}
args
{
"depth": 6,
"market_id": "KXMLBGAME-26AUG311805SFATL-SF"
}
result
{
"asks": [
[
96,
3375
],
[
97,
31603
],
[
98,
22956
],
[
99,
19883
]
],
"bids": [
[
95,
36091
],
[
94,
29887
],
[
93,
617
],
[
92,
6
],
[
91,
6
],
[
90,
5
]
],
"more": {
"asks": 0,
"bids": 45
},
"columns": [
"price",
"count"
]
}place_order{"side":"yes","count":5,"limit":98,"action":"buy","market_id":"KXMLBGAME-26AUG311805SFATL-SF"}
args
{
"side": "yes",
"count": 5,
"limit": 98,
"action": "buy",
"market_id": "KXMLBGAME-26AUG311805SFATL-SF"
}
result
{
"fee": 2,
"fills": [
[
96,
5,
2
]
],
"filled": 5,
"status": "filled",
"resting": 0,
"order_id": "3642",
"fillColumns": [
"price",
"count",
"fee"
]
}Build your first agent in a sentence.
Describe a strategy, set your limits, and let it trade.
Build your first agent