Matching prediction contracts is harder than comparing prices. Learn how keyword search, AI, and filters surface candidates without hiding resolution risk.
Part 3 of a four-part series on prediction-market arbitrage.
Finding a price difference is easy once two matching contracts are on the screen.
Finding those contracts is harder.
Platforms describe similar events in different ways. Polymarket might ask, "Will BTC hit $100,000?" while Kalshi lists, "Will Bitcoin trade above $100,000 by December 31?" The titles look related, but they may not describe the same payout.
Search tools help surface candidates. They do not replace contract review.
Two contracts match only when the same real-world outcome produces the same settlement on both platforms.
Compare more than the topic:
Entity or asset
Threshold
Comparison operator
Observation period
Deadline and timezone
Resolution source
Settlement conditions
Cancellation and invalid-market rules
"Will BTC hit $100,000?" could mean trading at or above that level once before a deadline.
"Will BTC be above $100,000 on December 31?" refers to the price at a specific time.
BTC could cross $100,000 in November and finish the year below it. One contract would settle YES while the other settles NO.
The titles are similar. The contracts are not complementary.
Keyword search finds contracts containing a word or phrase.
Searching for "Bitcoin" may return markets about:
BTC price targets
Bitcoin ETF flows
Market capitalization
Mining activity
Political statements about Bitcoin
This mode works well when you already know the topic or event. It is fast, transparent, and easy to audit.
It also misses semantic matches. One platform may use "BTC" while another writes "Bitcoin." A market about the Federal Reserve may use "Fed," "FOMC," or "federal funds rate."
Build searches around aliases and related terms:
Bitcoin, BTC
Trump, Donald Trump
Federal Reserve, Fed, FOMC
Ethereum, ETH
CPI, inflation
Keyword search has high precision when the query is specific. Its coverage depends on the words you choose.
AI matching compares meaning rather than exact wording.
A semantic model can recognize that "Will the Fed cut rates in September?" and "FOMC target rate lower after the September meeting?" may refer to the same event.
That makes it useful for discovery. It can find candidate pairs that use different names, sentence structures, or terminology.
It can also make confident mistakes.
An AI model may overlook a timezone, confuse "before" with "on," or treat two different price sources as equivalent. Small details that look unimportant to a language model can determine the payout.
AI matching should answer:
Which contracts deserve manual comparison?
It should not answer:
Which trade is guaranteed to settle profitably?
Some matching systems assign a confidence score to each proposed pair.
A high score usually means the titles and descriptions are semantically similar. It does not prove that the resolution rules match.
A useful matcher should show why it paired the markets and expose the fields that differ:
FieldMarket AMarket BThresholdAbove $100,000At least $100,000DeadlineDec. 31, 11:59 p.m. ETJan. 1, 00:00 UTCPrice sourceNamed exchangePublished indexConditionTrades once aboveCloses above
This comparison is more valuable than one opaque percentage.
Advanced search narrows the candidate list with structured filters.
Common filters include:
Minimum gross spread
Platform
Event category
Closing date
Settlement horizon
Trading volume
Order-book depth
Available position size
Filtering by spread alone tends to surface weak markets. The largest gaps often appear where liquidity is poor or the contracts differ.
Add depth and volume filters early. A 10% difference is irrelevant if only a few dollars can be filled at the quoted prices.
Settlement horizon matters too. A smaller return on a market resolving next week may use capital more efficiently than a larger spread locked until next year.
Category filters reduce noise, but platform taxonomies do not always align.
One venue may place a Bitcoin ETF market under crypto. Another may classify it under finance or politics. Searching only one category can hide a valid pair.
Platform filters are useful when account access or capital is limited. There is little value in finding a cross-platform opportunity if one venue is unavailable in your jurisdiction or has no funded balance.
Search coverage and trade eligibility are separate questions.
Use the three modes together rather than choosing one permanently.
Run a keyword search for the event, asset, candidate, or economic release you want to monitor.
This produces a manageable first set and helps reveal the vocabulary used by each platform.
Use AI matching to find contracts that describe the event differently.
Treat every result as a candidate. Reject obvious mismatches before looking at prices.
Filter by liquidity, depth, settlement date, and executable spread.
Use live asks for the complementary positions. Last prices and midpoints may not be available for the required size.
Open both contracts and check the threshold, deadline, timezone, source, and invalidation conditions.
Market titles are summaries. The resolution rules control the payout.
Confirm that both legs can fill in matching quantity. Subtract fees and account for how long the capital will remain locked.
Only then is the pair ready for execution.
Semantic search is especially vulnerable to contracts that share a topic but ask different questions.
Examples include:
"BTC above $100,000 at year-end" versus "BTC touches $100,000 during the year"
"Candidate wins the election" versus "candidate wins the party nomination"
"Fed cuts rates" versus "Fed cuts rates by at least 50 basis points"
"Team wins the match" versus "team advances to the next round"
"CPI below 3%" versus "core CPI below 3%"
A human reader can miss these differences too. The answer is a structured comparison, not blind trust in either manual or AI matching.
A good discovery system reduces the number of contracts you need to read. It cannot turn similar wording into identical settlement terms.
Keyword search is best for targeted research. AI matching broadens coverage. Advanced filters remove candidates that cannot support the intended trade.
The final check remains manual: same outcome, same deadline, compatible rules, and executable prices on both sides.