← Back to Projects

ArbScanner — Prediction Market Arbitrage Platform

A full-stack platform that aggregates prediction markets across multiple exchanges, detects potential arbitrage opportunities, and provides operators with real-time market insights through an interactive dashboard.

Problem & Context

Prediction markets are fragmented across multiple exchanges, making it difficult to compare equivalent contracts and identify pricing inefficiencies. ArbScanner brings these markets together into a single platform, automatically mapping related events and highlighting potential arbitrage opportunities for further investigation.

What It Does

ArbScanner dashboard showing the market scan bar, market overview metrics, core capabilities, and spread and arbitrage signal charts
The operator dashboard. A natural-language scan bar drives market queries, the overview strip tracks contracts, connected venues, average quoted spread, and the best current edge, and the analytics charts show how spreads and arbitrage signals move over time.

Tech Stack

React Vite TypeScript Tailwind CSS Python FastAPI MySQL Vercel Render Railway Google Gemini

Architecture / How It Works

Sync jobs periodically pull markets from each supported exchange and normalize them into a shared schema stored in MySQL. Equivalent contracts are matched across venues using deterministic title and alias rules, with optional Gemini-assisted matching for harder cases. The arbitrage engine then evaluates only the trusted mappings and records any opportunities it finds. Everything is served through the FastAPI backend and consumed by the React dashboard, with the frontend hosted on Vercel, the API on Render, and the database on Railway.

Key Takeaways

ArbScanner covers a full production slice: relational schema design for multi-venue market data, a REST API over that data, integration of several independent third-party sources with inconsistent formats, and a deployed frontend, API, and database split across Vercel, Render, and Railway. The matching layer was the most interesting constraint — mapping contracts conservatively matters more than mapping many of them, since a wrong mapping produces a false opportunity.

← Back to Projects