For prediction market funds

You trade Kalshi and Polymarket.
We give you the infrastructure
you don't have time to build.

Cross-venue orderbook depth. Executable edge calculation. 24/7 price and news monitoring with LLM evaluation. What-if scenario analysis. All through one API.

What you're missing

No cross-venue view

You check Kalshi orderbooks. Then Polymarket orderbooks. Separately. You can't see which venue has better depth for the same event. You can't compare executable edge across venues.

No context management

Your thesis is in Slack messages and spreadsheets. Your positions are on exchange dashboards. Your news is on Twitter. Nothing connects your conviction to your positions to market reality.

No autonomous monitoring

Markets move at 2 AM. Orderbook depth evaporates before you wake up. By the time your analyst checks, the edge is gone. You need something watching while you sleep.

Edge ≠ executable edge

Your model says +25¢ edge. But the spread is 10¢ and depth is 50 contracts. Your actual fill is nowhere near the theoretical edge. You need orderbook-aware edge calculation.

What you get

Cross-venue orderbook depth

$ sf book KXWTIMAX-26DEC31-T135

KLSH Will WTI reach $135.01 by Dec 31, 2026?

Last 47¢ Bid 48¢ Ask 49¢ Spread Liq high

Vol24h 3K OI 31K Expires 2026-12-31

BID ASK

──────────────────────────────────────

48¢ 59 49¢ 527

47¢ 578 50¢ 332

45¢ 10 51¢ 400

depth: 14,406 bid / 13,262 ask

Same command works for Polymarket: sf book --poly "oil price above 100"

Executable edge detection

$ sf edges --json | head

{

"market": "WTI $135 Dec 2026",

"venue": "kalshi",

"marketPrice": 48,

"thesisPrice": 65,

"edge": 17,

"executableEdge": 16, // edge minus half-spread

"orderbook": {

"spread": 1,

"liquidityScore": "high",

"commentary": ["tight spread, high conviction"]

}

}

18-topic liquidity scanner

$ sf liquidity

Available Topics (18 topics)

──────────────────────────────────────────────────

oil KXWTIMAX, KXWTIW, KXWTID +1 more

fed KXFEDDECISION, KXFED, KXRATECUT +1 more

crypto KXBTCD, KXBTC, KXBTC15M +10 more

geopolitics KXCLOSEHORMUZ, KXHORMUZTRAFFICW +6 more

tariffs KXTARIFFRATEPRC, KXTARIFFRATECA +6 more

... 13 more topics

Each topic scans both Kalshi and Polymarket orderbooks. Spread, depth, slippage for every contract.

24/7 autonomous monitoring

Every 15 minutes, for each thesis:

News scan (Tavily)

Price refresh (both venues)

Orderbook depth snapshot

Milestone detection

LLM evaluation

Settlement sync

Edge recalculation

Orderbook commentary

Webhook notification

Integration options

REST API

GET /api/thesis/:id/context
GET /api/thesis/:id/changes
POST /api/thesis/:id/signal
POST /api/thesis/:id/evaluate

Full docs at /llms.txt

CLI

npm install -g @spfunctions/cli
sf book <ticker>
sf edges --json
sf liquidity <topic>

Open source on GitHub

MCP (AI agents)

claude mcp add simplefunctions \
  --url https://simplefunctions
  .dev/api/mcp/mcp

16 tools for Claude Code, Cursor

Why not build this yourself

Kalshi uses RSA-PSS auth with key rotation. Polymarket uses EIP-712 + HMAC. Normalizing both orderbooks to the same format is 2 weeks of work before you get a single data point.

Running a 24/7 monitoring engine that scans news, refreshes prices, fetches orderbooks, runs LLM evaluation, and sends webhooks — that's infrastructure you maintain forever.

Executable edge calculation requires live orderbook data, not just mid-prices. Most wrappers give you last-trade-price. We give you bid/ask/spread/depth/slippage.

We already handle rate limiting, orderbook snapshot persistence, historical spread analysis, and depth commentary. You get the output, not the plumbing.

Ready to plug in?

API key takes 30 seconds. First thesis in 2 minutes.