Polymarket Bot Tutorial · Chapter 14 of 32

News arbitrage on Polymarket: how to beat the market on headlines, source feeds (RSS/Twitter/AP), latency budgets, false-positive filters, and when news edge dies into the market price.

What this chapter covers

News arbitrage is the strategy of trading on public information faster than the market reprices it. The edge is real but narrow - most "news" is already in the price by the time a human can read it. This chapter covers what sources actually beat the market, the latency budget that defines the strategy, and the false-positive filter without which the bot trades on every retweet.

  • What information edge looks like
  • News sources: RSS, Twitter, AP, official feeds
  • Latency budget: read-to-trade in under 2 seconds
  • False-positive filters
  • When news edge dies
  • Code: poll news feed and place FOK on relevant markets
  • Risk: half-truths and walked-back headlines

What information edge looks like

News arbitrage means trading on public information faster than the market reprices it. The edge exists in a narrow window - usually 30-300 seconds - between a fact becoming public and Polymarket reflecting it.

For the edge to be real, three things must be true. First, the news source must be faster than the median Polymarket trader (Twitter is faster than mainstream press; AP wire is faster than Twitter). Second, the news must be unambiguous (an injury announcement, a court ruling) - interpretation eats latency. Third, the market must be wide enough that the price move is worth the spread tax.

Bots that hunt this edge break down into two camps: those that subscribe to direct sources and parse, and those that watch for an unusual price move on Polymarket and infer that news happened. Both are valid; the first leads, the second follows.

News sources: RSS, Twitter, AP, official feeds

Sources ranked by latency to public-information-status, fastest first.

  • Direct primary sources: court filings, government press releases, central-bank announcements. Often have public RSS or API. Fastest, lowest false-positive rate.
  • AP wire / Reuters Eikon (paid). The wire that traditional traders use. ~5-30 second lead over consumer Twitter.
  • Twitter (X, paid API). Lists of verified accounts: official org accounts, beat reporters. Free APIs are too rate-limited; pay for the Pro tier or use a relay service.
  • Specialized newsletters / Discord: paid Substacks, embargoed industry feeds. Useful for niche markets (crypto, esports).
  • Mainstream press websites: too slow for the news-arb edge.

RSS for everything that publishes RSS - it's free, polling intervals are reliable. Twitter for the rest. AP for production-serious news desks.

Latency budget: read-to-trade in under 2 seconds

The bot needs to ingest, classify, decide, and place an order within 1-2 seconds total. Budget:

  • Ingest: 50-300ms (websocket feed, RSS poll, Twitter stream).
  • Classify: 50-200ms (regex / keyword match, optionally LLM if you cache the prompt).
  • Decide: 50ms (rules table lookup; mapping from news tag to market slug).
  • Place: 200-500ms (FOK signed order to CLOB).

The single biggest budget eater is LLM classification. A 500-token GPT-4 call adds 1-3 seconds; that's the whole arb window gone. For production, classify with keyword rules; use an LLM only for offline calibration of the keyword set.

False-positive filters

News-arb bots that don't filter false positives trade on every retweet and bleed via the spread tax. Three filters.

  • Source whitelist: act only on accounts/feeds in a pre-approved list. The list is small (10-30 sources).
  • Keyword + confirmation pair: a single keyword match is noise; matches in two independent sources within 30s is signal.
  • Market-state guard: skip markets that already moved > 5% in the last 60 seconds - someone else caught the news first, the edge is gone.

False-positive rate of well-tuned filters: about 1 in 5-10. A 90% false-positive rate destroys the strategy; a 50% rate is workable with small position sizes.

When news edge dies

The window from "news public" to "price reflects news" closes faster every year. In 2020, mid-priced political markets took minutes to absorb a headline. In 2026, the same headlines compress to 30-90 seconds before the price has fully moved.

Signs the edge has died: the per-trade PnL on flagged trades drops from +3c to flat over a 30-trade window; the rate of false positives that turn out to be already-priced-in rises above 70%; the market hits your FOK ask within 200ms because someone else got there first.

The honest pivot when the edge dies: move to slower, more interpretive news (court rulings, central bank meeting minutes) where parsing the meaning takes longer than the latency race. Or stop running the strategy.

Code: poll news feed and place FOK on relevant markets

Production skeleton: poll a news source, run rule matches, fire FOK orders on hits.

import feedparser, time, re
from py_clob_client_v2 import ClobClient

RULES = [
  {"regex": re.compile(r"out for season|torn ACL", re.I), "tag":"injury-fade"},
  {"regex": re.compile(r"federal reserve.*(rate cut|rate hike)", re.I), "tag":"fed-move"},
]

seen = set()
while True:
    feed = feedparser.parse("https://example.com/news.rss")
    for entry in feed.entries[:20]:
        if entry.id in seen: continue
        seen.add(entry.id)
        for rule in RULES:
            if rule["regex"].search(entry.title + " " + entry.summary):
                # Look up relevant Polymarket markets, place FOK
                fire(rule["tag"], entry)
                break
    time.sleep(15)

Polling intervals: 5-15 seconds for RSS. WebSocket where available (Twitter, AP wire). Always dedup by source-provided ID; never assume polling is exactly-once.

Risk: half-truths and walked-back headlines

The news-arb bot's worst day is when a headline turns out to be wrong. Examples: a Reuters tweet says "Trump fires Yellen," market jumps 8 cents, 12 minutes later the tweet is deleted and corrected. A bot that bought at +8c is now holding inventory at -3c with no recourse.

Defenses:

  • Two-source confirmation: never trade on a single tweet; require corroborating signal from a second independent source within 60-180 seconds.
  • Position size scaled to source confidence: AP wire = full size; Twitter from a verified beat reporter = 50%; rumor source = 25%.
  • Auto-exit on retraction signal: if a source you used issues a correction within 30 minutes, exit at market regardless of PnL.

The walk-back problem is a hard ceiling on news-arb position sizing. Trading $50 per signal lets you survive a 30% false-positive rate; trading $500 does not.

Frequently asked questions

Can a retail bot really beat the market on news?
Yes - but only if you have a fast, reliable news source and a low-latency execution path. Twitter (now X) was the gold standard until API restrictions; RSS from Reuters/AP/Bloomberg is the next best thing. The retail edge has shrunk as more bots compete; expect 200-1000ms total read-to-trade, not 50ms.
What news sources should I subscribe to?
RSS feeds from AP (apnews.com), Reuters (reuters.com), and BBC give you broad coverage. Polymarket-specific: the platforms own Twitter and Discord channels often pre-announce market changes. For specific topics: government press releases (Federal Reserve PDFs, CFTC, WHO).
How fast does my bot need to react to news?
For a retail edge: under 2 seconds from news appearing to your order being submitted. For HFT-tier edge (vs other bots): under 200ms. Most retail can compete in the 1-3 second window because most other retail bots are even slower or absent on certain feed types.
How do I avoid false-positive news triggers?
Match the news to the specific market with care. "Ceasefire" might appear in 100 contexts; only some matter for your specific market. Use keyword AND market-tag filters: keyword "ceasefire" AND market-tag "Israel-Hezbollah" before triggering. Even better - LLM-classify the news as relevant before trading.
What happens when news is later walked back?
Your position can flip from winning to losing in seconds. News-arb bots need a fast exit policy: if a follow-up source contradicts the headline within N minutes, immediately close the position even at a loss. Our rule: close at -3% to -5% if any follow-up reduces confidence in the original signal.
Is news arbitrage legal?
Trading on public news is legal everywhere we know of. Trading on material non-public information (insider tips, leaks before official release) is not. Stick to public sources and the trade is fine.