Skip to content
CURRENT
-7 → -6 (+1) over 24 captures ATL @ GB spread -7 → -6 house House backtest last 10: 6–4 · 90-day all-market 55.3% (n=8163) · 21h ago Wire Sources: Colts' Pierce out weeks; hoping for return midseason Wire Giants QB Jaxson Dart exits MNF game vs. Rams with knee injury Wire Seahawks plan to have Sam Darnold back at practice Wednesday
Access: Anonymous access. Content follows.
learn

Polymarket / Kalshi Arbitrage: Net-of-Fees Tutorial

Read the price, role, and market first Polymarket Kalshi arbitrage step by step: contract pairing, net-of-fees math, gas considerations, and the realistic windows that actually exist in 2026.

18 sections

Shark Snip Editorial

House byline of the Shark Snip analytics desk — numbers sourced from the data pipeline, not vibes.

Key takeaways (from article sections)

  • Price is the last field, not the first
  • Access and legality are separate prerequisites
  • Build a canonical contract identity
  • Outcomes must be exhaustive and mutually exclusive
  • The authoritative source must match
  • Use executable depth, not headline quotes
  • Fees are cash flows, not footnotes
  • Currency and funding assumptions can break the hedge
  • Two legs create a race
  • Partial fills need their own state machine
  • Worst-case cash flow decides the label
  • Cancellation rules deserve first-class treatment
  • Detection and execution are different products
  • Monitoring needs durable identities
  • The trade ledger starts before the orders
  • Typed outcomes keep the scanner honest
  • The red-team questions
  • What would make the pair real

Cross-venue arbitrage starts with contract identity, not price. Different thresholds, settlement authorities, cancellation rules, or event windows leave a residual position.

No current rule set, access record, fee schedule, order book, or accepted fill is attached. The honest state is no executable, contract-equivalent quote pair is attached.

Provenance tier: event-contract matching and execution methodology; no current quote, fee, liquidity figure, tax conclusion, trade result, or return statistic is published.

Price is the last field, not the first

Most scanners start with two prices whose sum appears favorable. That shortcut assumes the contracts settle as perfect opposites. The assumption is doing all the work. Before arithmetic, map the event, outcome, threshold, period, official source, lock time, settlement time, cancellation treatment, correction policy, and eligibility rules.

If any field differs, the pair contains basis risk. That does not make it useless, but it changes the label from arbitrage to a directional trade with a residual outcome. The tool should say so before showing an attractive spread.

The discipline is simple: prove the payoff map first, prove executable cash flows second, then ask whether the worst branch remains non-negative after every cost.

Access and legality are separate prerequisites

A tutorial cannot establish whether a person may use a venue today. Account eligibility, product availability, regulatory treatment, funding methods, and location restrictions can change. They may also differ between accounts on the same platform.

Verify access from current official venue materials and, where needed, current regulator or professional guidance. Store the rule version and retrieval time. A search snippet, old article, or another user’s account screen is not evidence that your account can execute the pair.

The analysis should return a typed state when access is unresolved: “venue eligibility unverified — review official terms for the account and location.” Do not continue to a trade recommendation on the assumption that registration will work later.

Build a canonical contract identity

Venue labels are presentation. The matching layer needs a canonical identity that survives wording differences. Capture the underlying event, participant or team, side, threshold, comparison operator, event period, time zone, start condition, settlement authority, and rule version.

Small wording changes can split the payoff. “Wins” may differ from “advances.” “At least” differs from “more than.” A named threshold can include the boundary on one venue and exclude it on another. A regulation result can differ from a final result after extra play.

Normalize only what the rule text proves equivalent. When the mapping requires interpretation, mark it for review. A manual match should preserve the reviewer, evidence, and reason rather than becoming an invisible permanent alias.

Similar markets can still leave a middle

Two thresholds that sit near each other may appear hedgeable while leaving a score range where both legs lose or both legs pay unexpectedly. That middle is not a rounding issue. It is an unhedged state.

Enumerate the full event domain and calculate each contract’s settlement for every meaningful branch. If the combined payoff changes across branches, the pair is not riskless. Price the residual risk separately or reject the match.

The event-contract translation guide explains why sportsbook notation and event-contract wording cannot be swapped casually. The settlement text owns the claim.

Outcomes must be exhaustive and mutually exclusive

A clean binary pair needs one leg to pay in every valid state where the other does not. That includes ordinary results and edge states: ties, abandoned events, postponed events, shortened events, stat corrections, disqualifications, venue changes, participant changes, and unresolved official results.

Do not model only the branches you expect. Model the branches the rulebook permits. A rare cancellation clause can be the only branch that breaks the hedge, which makes it the most important one to preserve.

When the combined state table has a gap or overlap, return “residual settlement risk.” The cure may be a different contract, an additional hedge, or no trade. Renaming the pair an arbitrage does not close the gap.

The authoritative source must match

Two venues can reference different official sources or apply corrections on different schedules. One may settle from a league result, another from a named data provider, public agency, exchange rule, or initial announcement. Even when the underlying event is obvious, the settlement clock can differ.

Store the source and correction policy for both legs. Ask whether a later revision can reopen settlement, whether an initial result is final, and what happens when the authority delays publication. A payout on one side can arrive while the other remains pending or later reverses.

That timing mismatch affects cash flow and risk. It should remain visible rather than disappearing into a single “settled” flag.

Use executable depth, not headline quotes

The best displayed price may cover only a small order. The rest of the requested size can fill at worse levels or not fill at all. A scanner should walk the available depth for the intended size and calculate the average executable price on each leg.

Quote time matters. Order books move independently, feeds arrive with delay, and account interfaces can show a stale state. Save venue time when available, receipt time, requested size, visible depth, order type, and suspension state. Reject snapshots outside the declared freshness window.

A missing order book is not a flat order book. A blank side is not a free contract. Those states should stop the calculation.

Fees are cash flows, not footnotes

Every charge that changes settlement belongs in the outcome table: trading fees, settlement fees, withdrawal charges, network costs, currency conversion, funding costs, and any fee whose amount depends on which leg wins or how the order fills.

Do not compress them into one remembered percentage. Preserve the official schedule, account tier, rule version, calculation basis, minimums, caps, and timestamp. Path-dependent fees mean the net result can differ by event outcome even when gross payoff looks symmetric.

The correct question is not “is the screen spread positive?” It is “does every valid settlement branch produce a non-negative net cash flow after executable fills and all current costs?” If not, the pair is not a locked arbitrage.

Currency and funding assumptions can break the hedge

Venues may use different funding rails or settlement assets. Treat exchange value, transfer availability, conversion fees, withdrawal timing, and counterparty exposure as separate inputs. A nominally stable conversion is still an assumption unless the funds are already held and redeemable under the declared workflow.

Do not count money that cannot reach the second venue before the quote moves. Do not treat pending deposits as available balance. Do not ignore the possibility that one withdrawal or transfer is delayed while the other leg settles.

The model can distinguish market payoff from treasury risk. Both matter to execution, but combining them into one unexplained adjustment makes review impossible.

Two legs create a race

Cross-venue trades are rarely atomic. One order can fill while the other moves, rejects, or partially fills. The moment the first leg is accepted, the trader has a directional position until the second leg matches it.

Define execution policy before entering: which leg routes first, acceptable slippage, minimum matched size, partial-fill handling, cancellation behavior, and the action when the second leg cannot be completed. That repair action has a real cost and belongs in the worst-case calculation.

“Submit both quickly” is not a control. Accepted fill confirmations, not button clicks, determine the position.

Partial fills need their own state machine

Suppose the first venue accepts the full request and the second accepts only part. The matched portion may remain hedged while the remainder is exposed. The system must track requested, accepted, cancelled, and open size on each leg.

Do not average the pair into a comforting single status. Report matched size, residual size, current repair quote, and whether the repair remains within the declared loss boundary. If the position cannot be reconciled automatically, stop and require human review.

A retry should be idempotent. It must not duplicate the filled leg while attempting to repair the missing one.

Worst-case cash flow decides the label

Build a settlement matrix across every valid outcome and operational branch. For each branch, include both contract payouts, all fees, currency conversion, partial-fill repair, and any refund or cancellation behavior. Then inspect the minimum net cash flow.

A positive expected result is not arbitrage when one valid branch loses. A strong central case is not arbitrage when a settlement mismatch can strand capital. Reserve the word for pairs whose verified worst case meets the declared non-negative requirement under executable assumptions.

Everything else can still be analyzed, but it needs the honest label: relative-value trade, near-match, residual-risk hedge, or unavailable comparison.

Cancellation rules deserve first-class treatment

Postponements, venue changes, participant changes, data outages, and disputed results can trigger different remedies. One venue may void, another may hold the contract open, and another may settle from a fallback authority. The hedge can split even though the ordinary game result was perfectly matched.

Capture the cancellation text for both contracts. Test it as part of the payoff matrix. Do not assume “void” means the same cash flow or timing everywhere.

The event-contract mechanics guide is a starting point for rule categories, not a substitute for the current contract pages attached to the proposed pair.

Detection and execution are different products

A detector can identify apparent price gaps. An execution system must prove contract equivalence, current access, available depth, fees, balances, order acceptance, matched size, and settlement state. Treating detection as execution is how paper opportunities become real exposure.

The detector should emit candidates with reasons and uncertainty. The execution boundary should re-fetch every mutable input, recompute the outcome matrix, and reject the pair when anything moved outside tolerance.

A dashboard may use the desk as a review surface only when it displays real source-linked quotes and rules. No empty row should be padded with a sample opportunity.

Monitoring needs durable identities

Quote feeds from different venues need stable market identifiers and a versioned mapping table. Contract text can change, markets can be relisted, and an old identifier can point to an expired event. The mapper should verify event time and rule hash before treating a saved relationship as active.

Alerts should explain why a pair qualified: matched contract version, executable depth, fee schedules, freshness, and worst-case net result. A bare spread alert encourages users to skip the hard checks.

When a mapping breaks, quarantine it. “Contract revision detected — rematch required” is safer than continuing with yesterday’s alias.

The trade ledger starts before the orders

  • Official access and eligibility evidence for each venue.
  • Canonical contract identity and full rule snapshots.
  • Outcome-state comparison and residual-risk classification.
  • Timestamped order-book depth for the intended size.
  • Current fee, funding, conversion, and settlement assumptions.
  • Requested order, accepted fill, partial fill, cancellation, and repair state.
  • Worst-case cash-flow matrix at decision time.
  • Final settlement, corrections, delays, and realized costs.
  • Reason for every rejected or abandoned candidate.

That ledger separates a real execution record from a screenshot of a temporary gap. Use the tracking workflow as the logging pattern, but preserve venue-specific contract and fill fields rather than forcing them into a sportsbook ticket shape.

Typed outcomes keep the scanner honest

A candidate should resolve to one of a small set of explicit states: executable arbitrage, residual-risk pair, stale quote, insufficient depth, access unverified, fee schedule missing, contract mismatch, settlement ambiguity, partial fill, or no opportunity. Each state needs evidence and a cure.

Do not throw a generic error across the boundary. “Second-leg depth unavailable — refresh the order book and recompute matched size” tells the operator what to do. “Calculation failed” leaves them guessing at the worst moment.

The state model also prevents a failed candidate from being counted as a losing trade or a detected candidate from being counted as captured profit.

The red-team questions

  • Do both contracts settle every valid event state as exact opposites?
  • Are current access and eligibility verified from official sources?
  • Are the quotes fresh, fillable, and deep enough for the intended size?
  • Does the outcome table include every fee and conversion cost?
  • Can either leg fill without the other, and what is the repair rule?
  • Do cancellation, correction, and settlement authorities match?
  • Is the worst-case net result non-negative under every allowed branch?
  • Can the complete decision be reconstructed from durable artifacts?

Any unanswered question changes the state from executable arbitrage to unresolved. That is not caution theater. It is the difference between a hedge and two unrelated trades.

What would make the pair real

An actionable pair needs current official rules, verified account access, exact contract equivalence, timestamped executable depth, complete fee and funding cash flows, accepted fills, and an outcome matrix whose worst valid branch meets the declared requirement.

What to watch: the first source-linked candidate that carries that evidence through both fills and final settlement. Until then, the only honest tutorial result is no executable arbitrage pair.

Expected value from graded outcomes

Expected-value cells render only when a verified source binds observed win outcomes to the price paid for the same bets.

Breakeven win rate at recorded American prices

Breakeven probability is calculated only from American prices that were actually captured in the odds-history table.

Frequently asked questions

Is Polymarket and Kalshi arbitrage currently available to me?
This page does not establish current venue access, account eligibility, or legal status. Verify each venue’s official terms and the rules that apply to your location and account before considering a trade. Access on one venue does not prove access on the other.
When are two event contracts true arbitrage counterparts?
Only when their outcomes are exhaustive and mutually exclusive across the same event, threshold, time period, settlement source, cancellation treatment, correction policy, and account-valid rules. Similar labels are not enough.
Why is a positive screen spread not automatically an arbitrage?
Displayed quotes may be stale, too small, suspended, or unavailable to the account. Fees, slippage, currency conversion, partial fills, and asymmetric settlement can turn the screen spread into a residual position or a loss.
What should a net-of-fees calculation include?
Use executable fill prices and sizes, every venue charge, transfer or conversion cost, settlement cash flow, cancellation branch, and the cost of repairing an unmatched leg. Evaluate every possible outcome, not just the expected one.
What is the honest result when the required evidence is missing?
No executable, contract-equivalent quote pair is attached. The cure is current official rule text, verified account access, timestamped depth, fee schedules, currency assumptions, and accepted fills for both legs.

Build a free model in 60 seconds →

Go →
11m read time
0 players/teams
8 key angles

Angles in this read

  • Edge meter Positive expected value is presented as a meter, not a guarantee.
  • Model sparkline Model output and projection movement get a tiny sparkline rhythm.
  • Line arrow Spread, total, and price movement sections get directional cues.
  • Research scan Tables, evidence ledgers, and inline charts receive a research-note scan cue.
  • Odds tick Micro tick movement reinforces live market and pricing language.
  • Fourth-down tilt Aggressive coaching and game-state decisions get a tilted cue.

This article does not name specific players or teams, so its context stays limited to model, price and polymarket from the post itself.

Terms found in this article
modelpricepolymarketkalshiarbitrage
Share this guide Help another reader make a sharper decision.

Get picks in your inbox

One email, every slate — ranked edges, no touts. Unsubscribe any time.

Start free — pick a sport

Go →

Continue with evidence

Related reading and source status

Related Reads

Free-Bet Conversion Guide: The Feed Had No Lines at All — Shark Snip
Betting Strategy

Free-Bet Conversion Guide: The Feed Had No Lines at All

Free bet conversion 2026: this feed carried no spreads, book counts, or dispersion, only fantasy numbers. Nothing to rebuild against.

Aug 28, 2026 5 min read
Free-Bet Conversion Guide: Rebuilt Against Live Odds — Shark Snip
Betting Strategy

Free-Bet Conversion Guide: Rebuilt Against Live Odds

Free bet conversion strategy 2026 update: 71 books, zero NFL dispersion on half the slate, no gaps. College spreads too wide. Arbitrage window shut.

Aug 22, 2026 5 min read
Translating Event Contracts to Spread/Moneyline Prices thumbnail art
Prediction Markets

Translating Event Contracts to Spread/Moneyline Prices

Event contract spread translation: convert Kalshi YES/NO prices to American odds, point spreads, and implied probabilities for sportsbook comparison.

May 15, 2026 8 min read

query: loadMergedBlogPostCards + scoreRelated · n = 3

No data

No graded source picks match this article yet

The public.source_accuracy_scores 90-day query returned no rows for this article's inferred sport.