The Thesis

Why this project exists, what it's found so far, and where it's headed. Full methodology and every number cited here lives in the Research notebooks linked above — this page is the case, not the proof.

Objective

We are not here to gamble on outcomes. We're here to be the house.

Kalshi and Polymarket are both, in effect, taking bets from traders on the same real-world questions — will the Fed cut rates, what will the unemployment rate be, how high will inflation run. Each platform sets its own odds independently. Sometimes those odds disagree.

That disagreement is the opportunity. Rather than picking a side and betting on which outcome actually happens — the thing every trader on both platforms is doing — this project is about accepting both sides of the action at once: taking the bet Kalshi is offering and the opposite bet Polymarket is offering, on the same event, at the same time. Structured correctly, it doesn't matter which side wins. One of the two legs is guaranteed to pay out, and the difference between what we paid for both legs and that guaranteed payout is the house's cut — the same mechanism a casino runs on every table, just built on top of two prediction markets instead of one.

The goal, plainly: minimize risk, maximize gain, by building a system that sits above both markets rather than betting inside either one.

100%
Win Rate

17 for 17 · Unemployment Rate, Jan–May 2026 · Notebook 11

+153.7%
Highest ROI Found

CPI / Annual Inflation, Jan–May 2026 · Notebook 10

Method
Core Mechanics

Kalshi and Polymarket both list a contract for the same real-world question. When the two price it differently enough, buying the opposite side on each platform costs less than $1.00 combined — and since exactly one side must resolve to $1.00, the payout is locked in the moment both legs are filled. The trade doesn't require being right about the outcome, only that the two platforms disagree by enough to cover fees and leave a margin.

That's the mechanic in isolation. What follows is the step-by-step process this actually runs as — not how it was tested, but how it operates.

How It Runs
Step 01
6
Event Types Covered
Select Matching Event Types

Find categories where Kalshi and Polymarket price the same real-world question.

Step 02
~80
Validated Opportunities per Event · FAQ Q2
Live-Monitor Every Bucket

Every possible outcome gets watched simultaneously for the life of the event.

Step 03
66–136
min
To Confirm & Enter · FAQ Q7
Enter at a $0.05 Gap

Entry is automatic — orders go in on both sides the instant the threshold is hit, Kalshi first, confirmed, then Polymarket, sized at 5% of available bankroll per trade, split across both legs. 4 orders total per round trip. No stop-loss needed: the two legs are contradictory bets, so one always pays.

Step 04
20.6
hrs
Median to Converge · FAQ Q5
Take-Profit & DRIP

Exit early on a real profit target instead of holding to close — fees factor directly into that target. DRIP paces capital release for the next opportunity.

Worth stating plainly: the specific DRIP schedules tested so far haven't been tight enough to actually change the outcome in the historical data checked (Notebook 11, Notebook 12) — the principle is sound and worth carrying into live implementation, but it isn't yet the thing driving the returns shown on this page. Take-Profit, on the other hand, is: exiting on a real target both freed capital sooner and earned more than holding to close, on the exact same trades.

Step 05
Resolution and Recycling

If Take-Profit never triggers, the position holds to the event's actual resolution and collects the guaranteed settlement. Either way — early exit or resolution — the capital that freed up returns to the pool, and the process goes back to step 2, watching for the next qualifying gap.

Step 06
Drink Margaritas

Once the loop is running, there's nothing left to do but watch it work.

Best Part
This all happens while you sleep.
Opportunity
Why These Six Event Types

Kalshi and Polymarket each list dozens of event categories. These six were selected, not assumed:

  • Regularly scheduled closures with known, calendar-fixed volatility dates.
  • Long run times give outside news a runway to move the market before it closes.
  • Completely matching buckets across trading platforms.*
  • Finalized based on official government data.

On top of that: both platforms relist a new instance of the same event type every month or meeting cycle, so this is a repeatable, recurring pipeline of opportunities rather than a one-off — and one the system can monitor and enter automatically each cycle without being rediscovered by hand.

Event Comparison — Base Budget: $1,000 per Event
Metric US Fed Bank of England Bank of Canada Bank of EU Inflation Unemployment
Trades 236 99 71 77 132 20
Avg. Holding 786.4h 105.5h 183.2h 194.3h 94.0h 257.7h
Win Rate 99.2% 92.9% 91.5% 97.4% 93.2% 100%
Total Fees $317.80 $347.57 $365.82 $411.82 $877.10 $18.61
Net PNL $376.45 $617.44 $1,212.40 $924.57 $1,536.90 $218.93
Final ROI 37.6% 61.7% 121.2% 92.5% 153.7% 21.9%
Final Bankroll $1,376.45 $1,617.44 $2,212.40 $1,924.57 $2,536.90 $1,218.93

Final ROI and Final Bankroll — the bottom-line return figures.

US Fed · Notebook 06, Bank of England · Notebook 07, Bank of Canada · Notebook 08, Bank of EU · Notebook 09, Inflation · Notebook 10, Unemployment · Notebook 12 (Full-Ladder + 20% Take-Profit, the strongest of the variants tested).

Risk Management

The 2-leg hedge in Method removes outcome risk — it doesn't remove every risk. Here's what's actually left, and what specifically mitigates each one.

Fees

Fees are a certain cost regardless of outcome, and Polymarket's fee structure is genuinely harder to price in advance than Kalshi's flat schedule — it isn't uniform even within the same event type (Notebook 06 had to thread a per-bucket rate for exactly this reason).

  • The $0.05 minimum gap required to enter is sized to clear fees with real margin left over, not just break even.
  • Take-Profit exits a position once the gap starts reversing, rather than letting it erode back down toward the fee floor.
Slippage & Execution Risk

This covers both a worse fill price than expected and the more serious version — one leg filling while the other doesn't, leaving a temporarily unhedged position.

  • The gap that triggers entry typically stays open 66–136 minutes before closing (Method, Step 03), giving real time to react before it does.
  • Kalshi is confirmed filled first, and Polymarket is only placed once that's certain.
  • The position can be unwound rather than ridden naked to resolution, so a failed second leg caps the downside at fees and unwind cost, not the full exposure of an outright bet.
Liquidity (Kalshi Volume)

Kalshi is the thinner of the two order books — measured directly across live instances, its bid/ask spread ranged from a normal 1–3¢ up to a genuinely untradeable 92–93¢ on some buckets, while Polymarket stayed tight (mostly 1–3¢) everywhere. This isn't simply a "longer-dated events" problem — Fed stayed tight all the way out to a meeting over a year away, while Bank of England and ECB instances blew out even at closer dates. It's event-type liquidity, not calendar distance: some event types draw consistent volume far in advance, others don't build up the same depth even a couple months out.

  • Entering with market orders instead of limit orders, accepting a marginally worse fill rather than missing the window.
  • A limit order priced inside a wide spread could, in principle, capture a better price closer to what the other platform implies is fair — but that's exactly the risk on a thin book: there may be no counterparty willing to take the other side before the window closes, so the order sits unfilled or gets skipped entirely as the price moves. Market orders trade a worse guaranteed price for a guaranteed fill; on Kalshi's thinnest buckets, that trade is worth making.
  • Confirming the Kalshi leg first: Polymarket's liquidity has consistently been deep enough that it's never been the constraint.
Volatility

Ordinarily volatility is the thing traders fear. Here it's closer to the opposite: it's what opens the price gap between Kalshi and Polymarket in the first place, so more volatility means more (and larger) entry opportunities, not more risk.

  • Both sides of the bet are already covered before the event resolves, so a surprise result doesn't create exposure the way it would for a directional trader — one leg pays regardless of which way the surprise goes.
  • Central banks aren't in the business of surprising markets on rate decisions to begin with — forward guidance exists specifically to avoid that.
Settlement / Resolution Mismatch

The hedge depends on one assumption: that Kalshi and Polymarket resolve the same real-world event the same way. If they didn't — one platform ruling YES, the other ruling the same real event NO — the "one leg always pays" guarantee would break.

  • Every event type here was selected specifically because it resolves against a single official data source (a Fed statement, a BLS release) rather than platform judgment — exactly what Opportunity's fourth selection criterion is for.
  • This hasn't happened once across the 700+ trades and six event types tested so far.

Worth naming as a real, structural risk — just one the event selection itself is already built to minimize.

Bankroll Management

Left unmanaged, a single busy event could tie up bankroll needed for the next opportunity, especially since events resolve on different, sometimes overlapping schedules.

  • Trade Cap — 5%: each trade is sized at 5% of available bankroll (Method, Step 03), so no one bucket can dominate exposure.
  • DRIP — 60% up front: 60% of bankroll is available immediately, no waiting period.
  • DRIP — +20% at 75 days: a further 20% releases within 75 days of the nearest bucket's close.
  • DRIP — +20% at 50 days: the remaining 20% releases within 50 days of the nearest bucket's close.
  • Take-Profit: exiting on a real profit target instead of holding to close frees capital sooner, so it's recycled into the next opportunity rather than sitting tied up until resolution. In every dataset where this was directly tested against holding to close — Unemployment, Notebook 11 and Notebook 12 — Take-Profit came out ahead on both counts: it earned more and freed capital faster than holding to close on the exact same trades. In live operation, Take-Profit won't fire until a minimum 24-hour hold has passed, so an early exit is never triggered by a fleeting price blip in the first few minutes after entry. (This minimum hold wasn't part of the rule actually backtested in Notebooks 11/12 — those results reflect exiting the instant the 20% target was hit, with no delay.)

In every dataset tested so far, the DRIP delay hasn't actually been the binding constraint — real signals cluster closer to close than 50–75 days out — but it's the backstop for a busier calendar than what's been backtested.

Take Profit
+393%
More Profit vs. Held Till Close

Full-Ladder Search, 20 trades · Notebook 12

Threats

Risk Management covers what can go wrong inside a trade. This section covers what could go wrong with the strategy itself — forces outside any single position that could weaken or end the opportunity entirely.

Platform Policy Changes

Both platforms' rules have been consistent so far, and structurally neither has an obvious reason to dislike this kind of trading — unlike a traditional sportsbook, which sets unbalanced odds and loses money to arbitrageurs, Kalshi and Polymarket earn on trading fees regardless of which side wins. Arbitrage doesn't cost them anything the way it costs a sportsbook. But policy, regulatory status, and access can all change without warning, and that's outside anyone's control.

  • Kalshi is federally regulated as a CFTC-licensed exchange, legal nationwide. Polymarket's regulatory footing is less settled and less uniform across jurisdictions — a real, open difference between the two, not a formality.
  • Neither platform's terms appear to prohibit this kind of trading today, and their fee-based business model gives them little incentive to start — but "today" is doing real work in that sentence.
  • Mitigated by withdrawing profits semi-frequently rather than letting capital accumulate on either platform indefinitely — this limits exposure to a sudden policy change, access restriction, or platform-level insolvency all at once, not just one of them.
Competitors & Other Automated Traders

This isn't happening in a vacuum — the price gaps measured across every notebook do converge on their own well before an event closes (Method, Step 04), which is itself evidence other participants are already closing them. The question is whether more competition shows up and closes them faster.

  • Large-scale automated trading firms are unlikely competitors: a typical entry gap is just $0.05, and pushing meaningful volume through it collapses the very gap being traded — arbitrage here is self-limiting at scale, so it isn't worth building infrastructure around for a firm that can deploy capital more profitably elsewhere.
  • The realistic competition is other individual traders running a similar strategy manually. This stays a niche activity in practice — matching buckets across two platforms, tracking multiple event types, and running the math to confirm a real edge is enough friction that most people don't bother.
News Swings, Surprises & Informed Trading

Political shocks, surprise headlines, and well-informed traders moving a market fast are all, on the surface, the kind of thing a trader should fear. They aren't a threat here.

  • The strategy doesn't take a side on the outcome — both legs are already covered before the event resolves, and profits are typically taken well before close (Method, Step 04). Whatever the surprise turns out to be, one leg pays.
  • These factors are the source of the opportunity, not a risk to it: volatility is what opens the price gap between the two platforms in the first place (Risk Management, Volatility). More surprise means more, and larger, entries — not more exposure.
Backtest-to-Future Generalization

Every number on this page comes from a real, but finite, window — January through May 2026. The honest question anyone should ask is whether that keeps holding up, not whether it held up once.

  • This is exactly what Opportunity's recurring-cadence point is for: both platforms relist a new instance of the same event type every month or meeting cycle, so every new cycle is a fresh, live re-test of whether the same structural conditions still exist — not a one-time result being taken on faith indefinitely.
  • Because monitoring runs continuously rather than as a one-off study (Method, Step 02), a real breakdown — gaps stopping, platforms converging on pricing, volume drying up — would show up quickly in live data, not silently after the fact.
Proposal

This is what actually happens if you want in — and it's simpler than it sounds, since every account and every dollar stays yours the entire time.

Step 1
Create Your Accounts

Open an account with both Polymarket and Kalshi, in your own name, funded with your own capital. This stays self-custody — nothing is pooled with anyone else's money.

Step 2
Send API Keys

Share trading API keys for both accounts, scoped to trading only where the platform allows it, and revocable at any time on your end — not your account password, and not a transfer of funds anywhere.

Step 3
The System Trades On Your Behalf

Using those keys, the system finds your account and executes the hedge strategy described in Method directly through it — the same trades, on your own balance, that this entire page has been describing.

Step 4
A Fee on Realized Profit

At the end of each event, an agreed-upon percentage of the profit it generated is requested as a fee for running the system — only on profit actually realized, never a flat fee and never a cut of your original capital.

This is the live-money version of the plan — it assumes the paper-trading phase has already validated results with no real capital at risk before any live account is ever connected.