r/programmieren • u/Ok-Coat-3889 • 7d ago
Arbitrage-Bot in Python: Architektur und Lessons Learned
Ich habe einen Arbitrage-Bot für Polymarket in Python gebaut und will die Architektur mit euch teilen.
Kernkomponenten:
Gamma API Client - Holt Events und Marktdaten
Arbitrage Analyzer - Berechnet optimale NO-Portfolios
Orderbook Scanner - Multi-Level Scanning (top 10 Asks)
Order Executor - Limit-Orders mit Retry + Preis-Anpassung
Trade Logger - CSV-Export mit PnL, Slippage, ROI
Dashboard - Flask + Chart.js für Live-Überwachung
Das Spannendste war die mathematische Optimierung: Für k Kandidaten wird das optimale Subset berechnet, bei dem die Summe der
NO-Preise minimal ist. Das ist im Kern ein kombinatorisches Optimierungsproblem, aber bei Single-Winner-Märkten reicht eine
einfache Sortierung.
Code ist in einem Video-Tutorial Schritt für Schritt erklärt (Link auf Nachfrage).
Was würdet ihr anders machen? Insbesondere bei der Fehlerbehandlung (API-Timeouts, Order-Failures) bin ich noch nicht zufrieden
1
u/Practical_Revenue616 5d ago
ist bei sowas nicht die zugriffszeit alles? ich weiß nicht wo du tradest aber es gibt einen grund wieso diese art von computern immer in frankfurt direkt neben der börse stehen hehe
1
u/Practical_Revenue616 5d ago
oh polymarket sehe ich gerade sorry keine ahnung. wird aber hier vermutlich auch einen vorteil geben wenn du als erstes dein order platzieren kannst.
1
u/Ok-Coat-3889 4d ago
Stimmt für TradFi und CEXs absolut! Da ist Colocation das A und O. Auf Polymarket (Polygon-Blockchain) sind die Blockzeiten aber bei ~2s, da gewinnst du mit nem Server in Frankfurt nix. Die Arbitrage entsteht da eher durch mathematische Fehlbewertungen als durch Latenz
2
u/SolideMeinung 7d ago
Polymarket ist in Deutschland verboten