Noah Roberts
Data platform

Arbadillo

Distributed pipeline that collects, normalizes and stores live and historical sportsbook odds.

Python · Celery · Redis · PostgreSQL · Scrapy · Playwright

Arbadillo is a scalable, distributed sports betting data platform built to collect, process, and serve live and historical sportsbook odds across multiple leagues and markets. It is designed to be extended, and it will feed a future AI engine that identifies high-value betting opportunities.

Stack and architecture

Pipeline

  1. Bootstrap the schedule. The ESPN API provides upcoming events, team aliases, and rosters. Events are cached and used to match sportsbook event IDs.
  2. Scrape odds. FanDuel, DraftKings, and ESPNBet clients collect moneylines, spreads, totals, and props. The data is parsed, normalized, deduplicated, and cached.
  3. Upsert to the database. Odds whose value, line, or status changed are upserted into PostgreSQL. Outdated lines are dropped from the cache automatically.

What’s next