Polymarket Bot Tutorial · 32 bölümün 14. bölümü

Polymarket’te news arbitrage: manşetlerde piyasayı nasıl yenersiniz, source feeds (RSS/Twitter/AP), latency budgets, false-positive filters ve news edge’in ne zaman market price içinde eriyip gittiği.

Bu bölüm neleri kapsıyor

News arbitrage, public information ortaya çıkar çıkmaz market onu yeniden fiyatlamadan önce işlem yapma stratejisidir. Edge gerçektir ama dardır - çoğu "news", bir insan okuyabilene kadar zaten price içine girmiş olur. Bu bölüm, gerçekten marketi geride bırakan kaynakları, stratejiyi tanımlayan latency budget’ını ve botun her retweet’te trade yapmasını engelleyen false-positive filter’ı ele alır.

  • Information edge nasıl görünür
  • News sources: RSS, Twitter, AP, official feeds
  • Latency budget: read-to-trade 2 saniyenin altında
  • False-positive filters
  • News edge ne zaman ölür
  • Code: news feed’i poll et ve ilgili markets’e FOK gönder
  • Risk: half-truths ve geri alınan headlines

Information edge nasıl görünür

News arbitrage, public information üzerinde market onu yeniden fiyatlamadan önce işlem yapmak demektir. Edge, bir fact public olduktan sonra Polymarket’in bunu yansıttığı ana kadar uzanan dar bir pencerede - genellikle 30-300 saniye - vardır.

Edge’in gerçekten var olması için üç şeyin doğru olması gerekir. Birincisi, news source median Polymarket trader’dan daha hızlı olmalıdır (Twitter mainstream press’ten daha hızlıdır; AP wire Twitter’dan daha hızlıdır). İkincisi, news net olmalıdır (bir injury announcement, bir court ruling) - interpretation latency yer. Üçüncüsü, market spread tax’e değecek kadar geniş olmalıdır.

Bu edge’i avlayan botlar iki gruba ayrılır: doğrudan sources’a abone olup parse edenler ve Polymarket’te olağandışı bir price move gözleyip news olduğunu çıkaranlar. İkisi de geçerlidir; ilki liderdir, ikincisi takip eder.

News sources: RSS, Twitter, AP, official feeds

Public-information-status’a latency sırasına göre kaynaklar, en hızlıdan başlayarak.

  • Direct primary sources: court filings, government press releases, central-bank announcements. Çoğu zaman public RSS veya API sunar. En hızlısı, en düşük false-positive rate.
  • AP wire / Reuters Eikon (paid). Geleneksel trader’ların kullandığı wire. Consumer Twitter’a göre yaklaşık 5-30 saniye önde.
  • Twitter (X, paid API). Doğrulanmış hesap listeleri: official org accounts, beat reporters. Free APIs çok kısıtlıdır; Pro tier için ödeme yapın ya da bir relay service kullanın.
  • Specialized newsletters / Discord: paid Substack’ler, embargo’lu industry feeds. Niş markets için faydalı (crypto, esports).
  • Mainstream press websites: news-arb edge için fazla yavaş.

RSS yayınlayan her şey için RSS kullanın - ücretsizdir, polling intervals güvenilirdir. Geri kalanlar için Twitter. Production ciddiyetindeki news desk’ler için AP.

Latency budget: read-to-trade 2 saniyenin altında

Botun toplamda 1-2 saniye içinde ingest etmesi, classify etmesi, karar vermesi ve order göndermesi gerekir. Budget:

  • Ingest: 50-300ms (websocket feed, RSS poll, Twitter stream).
  • Classify: 50-200ms (regex / keyword match, isteğe bağlı olarak prompt’u cache ederseniz LLM).
  • Decide: 50ms (rules table lookup; news tag’inden market slug’ına mapping).
  • Place: 200-500ms (CLOB’a FOK signed order).

Budget’i en çok yiyen şey LLM classification’dır. 500 token’lık bir GPT-4 call 1-3 saniye ekler; bu da tüm arb penceresinin bitmesi demektir. Production için keyword rules ile classify edin; LLM’i yalnızca keyword set’ini offline kalibre etmek için kullanın.

False-positive filters

False positive’ları filtre etmeyen news-arb botları her retweet’te trade yapar ve spread tax yüzünden kanar. Üç filtre:

  • Source whitelist: yalnızca önceden onaylanmış bir listedeki hesaplar/feeds üzerinde işlem yapın. Liste küçüktür (10-30 source).
  • Keyword + confirmation pair: tek bir keyword match gürültüdür; 30 saniye içinde iki bağımsız source’ta match signal’dir.
  • Market-state guard: son 60 saniyede zaten > 5% hareket etmiş markets’i atlayın - başka biri news’i önce yakalamıştır, edge gitmiştir.

İyi ayarlanmış filter’ların false-positive rate’i yaklaşık 5-10’da 1’dir. %90 false-positive rate stratejiyi mahveder; %50 rate ise küçük position size’larla idare edilebilir.

News edge ne zaman ölür

"News public" ile "price news’i yansıttı" arasındaki pencere her yıl daha hızlı kapanıyor. 2020’de orta fiyatlı political markets bir headline’ı emmek için dakikalar alıyordu. 2026’da aynı headline’lar price tamamen hareket etmeden önce 30-90 saniyeye sıkışıyor.

Edge’in öldüğünü gösteren işaretler: işaretlenmiş trades üzerindeki trade başına PnL, 30 trade’lik bir pencerede +3c’den yataya düşer; aslında zaten fiyatlanmış olduğu ortaya çıkan false positive oranı %70’in üstüne çıkar; market, başkası önce ulaştığı için FOK ask’inizi 200ms içinde doldurur.

Edge öldüğünde dürüst pivot şudur: anlamını çözmenin latency yarışından daha uzun sürdüğü daha yavaş, daha yorum gerektiren news’e geçin (court rulings, central bank meeting minutes). Ya da stratejiyi durdurun.

Code: news feed’i poll et ve ilgili markets’e FOK gönder

Production skeleton: bir news source poll et, rule match’leri çalıştır, hit olduğunda FOK orders gönder.

import feedparser, time, re
from py_clob_client.client 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: RSS için 5-15 saniye. Mümkün olan yerlerde WebSocket (Twitter, AP wire). Her zaman source tarafından verilen ID ile dedup yapın; polling’in tam olarak bir kez gerçekleştiğini asla varsaymayın.

Risk: half-truths ve geri alınan headlines

News-arb bot’un en kötü günü, bir headline’ın yanlış çıkmasıdır. Örnekler: bir Reuters tweet’i "Trump fires Yellen" der, market 8 cent zıplar, 12 dakika sonra tweet silinir ve düzeltilir. +8c’den alan bir bot şimdi elinde -3c inventory ile kalmıştır ve yapacak pek bir şeyi yoktur.

Defenses:

  • Two-source confirmation: asla tek bir tweet ile trade yapmayın; 60-180 saniye içinde ikinci bağımsız bir source’tan destekleyici signal isteyin.
  • Source confidence’a göre scaled position size: AP wire = full size; verified beat reporter’dan Twitter = %50; rumor source = %25.
  • Retraction signal üzerine auto-exit: kullandığınız source 30 dakika içinde correction yayınlarsa, PnL ne olursa olsun market’ten çıkın.

Walk-back problemi, news-arb position sizing için sert bir üst sınırdır. Signal başına $50 trade etmek %30 false-positive rate ile hayatta kalmanızı sağlar; $500 trade etmek sağlamaz.

Sık sorulan sorular

Bir retail bot gerçekten news üzerinde marketi yenebilir mi?
Evet - ama yalnızca hızlı, güvenilir bir news source ve düşük-latency execution path’iniz varsa. Twitter (şimdi X), API kısıtlamalarına kadar altın standarttı; Reuters/AP/Bloomberg RSS’i bir sonraki en iyi şeydir. Daha fazla bot yarıştıkça retail edge küçüldü; 50ms değil, toplamda 200-1000ms read-to-trade bekleyin.
Hangi news sources’a abone olmalıyım?
AP (apnews.com), Reuters (reuters.com) ve BBC’den RSS feeds geniş kapsam sağlar. Polymarket’e özel: platformların kendi Twitter ve Discord kanalları çoğu zaman market değişikliklerini önceden duyurur. Belirli konular için: government press releases (Federal Reserve PDFs, CFTC, WHO).
Botum news’e ne kadar hızlı tepki vermeli?
Bir retail edge için: news görünür hale geldikten order’ınızın gönderilmesine kadar 2 saniyenin altında. HFT-tier edge için (diğer botlara karşı): 200ms altında. Çoğu retail, 1-3 saniyelik pencerede rekabet edebilir çünkü diğer retail botların çoğu daha da yavaştır ya da bazı feed türlerinde hiç yoktur.
False-positive news trigger’larından nasıl kaçınırım?
News’i spesifik market ile dikkatle eşleştirin. "Ceasefire" 100 farklı bağlamda geçebilir; yalnızca bazıları sizin spesifik market’iniz için önemlidir. Trigger etmeden önce keyword AND market-tag filter kullanın: keyword "ceasefire" AND market-tag "Israel-Hezbollah". Daha da iyisi - trade etmeden önce news’i relevance açısından LLM ile classify edin.
News sonradan geri alınırsa ne olur?
Position’ınız saniyeler içinde kazançtan zarara dönebilir. News-arb bot’ların hızlı bir exit policy’ye ihtiyacı vardır: takip eden bir source headline ile çelişirse, N dakika içinde pozisyonu hemen kapatın, zarar etseniz bile. Bizim kuralımız: orijinal signal’a olan güveni azaltan herhangi bir follow-up varsa -3% ile -5% arasında kapatın.
News arbitrage yasal mı?
Public news üzerinde işlem yapmak bildiğimiz her yerde yasaldır. Material non-public information (insider tips, resmi yayın öncesi sızıntılar) üzerinde işlem yapmak değildir. Public sources’ta kalırsanız trade sorun olmaz.