João Pedro Corrêa

Product engineer · Búzios, Brazil · remote

I build betting exchanges and the tools traders run on them.

For four years I built and ran the product side of Bolsa de Aposta, a Brazilian betting exchange, and the bots, backtests, trading software and AI agents its traders used. Brazil banned fixed-odds betting in September 2026, so I'm looking for the next exchange, prediction market or trading team to build for.

Built and run, 2022–2026Production figures
SelectionFigureWhat it measures
Bolsa de Aposta
BRL 7.6B
matched in 2026
Traders
69k
on Bolsa in 2026
Trading software
BRL 231M
matched in Aug 2026
Automated bots
13.8M
bets placed by the bots
Event creator
BRL 19.5M
on made-up matches
Backtests
86k
in under 3 months
Data platform
~123 req/s
on average, 10.6M a day
AI agents
~15k
tool calls a day

Companies I've worked with

The exchange

Bolsa de Aposta · 5 Brazilian brands

  • Bolsa de Aposta

The product layer of Bolsa de Aposta, one of Brazil's betting exchanges: the web exchange, the white-label shell that hosts it, the client library every brand shares and the operator back office.

matched on Bolsa, Jan–Sep 2026
BRL 7.6B
matched on Bolsa, Jan–Sep 2026
matched in August alone
BRL 893M
matched in August alone
traders on Bolsa in 2026
69k
traders on Bolsa in 2026
offers placed a day
~271k
offers placed a day

What I built

  • The exchange front end for five brands (Bolsa de Aposta, Matchbook BR, BetBra, FulltBet, BetEspecial). On Bolsa de Aposta alone, 69k traders placed BRL 7.6B of bets through it in 2026.
  • Ladder, one-click betting, cashout by market and by runner, dutching, multiples, odds×volume charts and live stats, built for in-play traders placing ~271k offers a day.
  • A library shared by every brand's front end — bet slip, open bets, liability, P&L and cashout maths — serving ~30k active traders a month on Bolsa alone.
  • The operator back office for all five brands: custom markets and Super Odds with liquidity alerts, live theming, and an AI agent that answers business questions over the exchange database.

Next.js · React · TypeScript · React Query · PostgreSQL · Redis

Ladder mode on a live match: Over/Under 3.5 ladders with volume on both sides, live radar, pressure chart and match stats
Bolsa de Aposta exchange: Czech Republic v England match odds with back and lay prices and matched volume
In-play market with the head-to-head statistics panel

Trading software

Layback X · web, desktop, Polymarket

  • Bolsa de Aposta
  • Betfair
  • Polymarket

A ladder terminal for professional traders on Betfair and Bolsa de Aposta, on the web and as a signed desktop app. It drove roughly a quarter of the exchange's matched volume.

matched in Aug 2026
BRL 231M
matched in Aug 2026
of the exchange's matched volume
~24%
of the exchange's matched volume
desktop releases
114
desktop releases

What I built

  • Ladder with drag-to-bet, stake drag and drop, Stop Green / Stop Red, keyboard shortcuts and multi-market views — 3.4M bets placed through it in August 2026 alone.
  • An offers WebSocket for Bolsa de Aposta with 1 s heartbeats, sticky HTTP fallback after three missed beats, silent reconnects and a 15 s snapshot reconciliation.
  • Desktop builds for Windows, macOS (notarised, x64 and arm64) and Linux with a self-hosted update channel — 114 releases.
  • A Polymarket version of the same ladder, so exchange traders can use prediction markets without learning a new tool.

Next.js · Electron · MobX · WebSockets · Betfair Stream API · Stripe · Mercado Pago

Layback X landing showing three ladders side by side

Automated trading

Layback Bot · Bolsa de Aposta, Betfair, Polymarket

  • Bolsa de Aposta
  • Betfair
  • Polymarket

A rules-based bot platform: traders describe entries and exits with live stats, odds and custom indicators, and the engines place and manage the orders. Same product on three venues.

bets placed by the bots (Bolsa + Betfair)
13.8M
bets placed by the bots (Bolsa + Betfair)
matched by the bots
BRL 187M
matched by the bots

What I built

  • The web app where traders created more than 150k bots: bot builder, live operations, reports by odds, minute and liquidity, and stake-management simulations.
  • Integrations with Bolsa de Aposta, Betfair's regulated Brazilian exchange (vendor OAuth, order reconciliation and recovery) and Polymarket's CLOB with a builder code.
  • A marketplace where traders rent strategies to each other, paid by Pix with a platform split.
  • More than 37k bots running at the same time, placing ~71k bets a day on average, with peaks above 125k.

Next.js · Node.js · Prisma · PostgreSQL · Redis · DigitalOcean · Vercel

Layback Bot dashboard for one trader in August 2026: 1,622 operations, P&L, win rate and best and worst bots
Bot marketplace on Bolsa de Aposta: 456 bots for rent with yield, stakes and profit per strategy
Layback Bot for Betfair landing page

Backtesting

Layback Backtest · paid SaaS

  • Bolsa de Aposta
  • Betfair

Traders test a bot's exact filters against minute-by-minute history before risking money. The rule: if the bot would enter on a minute, the backtest enters on the same minute. The new version launched in July 2026 and ran 86k backtests in under three months.

backtests run since July 2026
86k
backtests run since July 2026
traders using the new version
4.1k
traders using the new version
backtests on the first version, 2022–2025
215k
backtests on the first version, 2022–2025
users of the first version
9.7k
users of the first version

What I built

  • The filter engine ported from the live bot, kept at parity by tests, so a strategy moves between backtest and bot without translation.
  • A resumable worker queue on Postgres (SKIP LOCKED claims, monthly segments, batch checkpoints) that survives crashes mid-run.
  • Pay-per-month-of-data pricing with Pix top-ups, anti-extraction limits and one-click creation of a live bot from a result.

Next.js · Prisma (two datasources) · PostgreSQL · DigitalOcean workers · Mercado Pago

Layback Backtest landing page

Event creator & pricing

Synthetic matches on Bolsa de Aposta

  • Bolsa de Aposta

A sportsbook product where customers build a match that doesn't exist — the home side of one real game against the away side of another — and bet on it. The hard part is pricing it fairly and settling it on real results. I designed and built it end to end: since July 2025, 17.1k customers have wagered BRL 19.5M on matches that never happened.

wagered since July 2025
BRL 19.5M
wagered since July 2025
bets placed
382k
bets placed
customers
17.1k
customers
wagered in the best month
BRL 3.3M
wagered in the best month

What I built

  • A fair-price model: de-vigged over/under lines plus a Poisson tail from 0 to 12 goals, combined into a 13×13 score matrix for 1X2 and totals.
  • Six layers of margin (base, odds band, team, league, opponent, exposure) and stake limits per event, customer and selection.
  • The fair probability of every bet stored privately to measure margin and CLV, never shown to the customer.
  • Settlement into the exchange wallet with a retrying state machine, and a shadow hedge that maps the house position to real team-total markets.

Bun · Hono · Prisma · PostgreSQL · Redis

A match that will never happen: Argentina v Santos, priced live at 1.18 / 8.4 / 10.9 with over/under 2.5

AI agents

In production since Aug 2026

I made the bot and backtest usable by the trader's own AI. Customers connect Claude or ChatGPT and ask it to read their reports, find better filters and create bots — through a remote MCP server with its own OAuth 2.1 server.

tool calls a day
~15k
tool calls a day
traders using it daily
~150
traders using it daily

What I built

  • OAuth 2.1 authorization server: dynamic client registration, PKCE, rotating refresh tokens with reuse detection, consent on top of the exchange session.
  • 50+ tools answering ~15k calls a day from ~150 traders, over the same query layer as the app, with per-account rolling budgets in Redis (atomic Lua), audit of every call and an hourly anti-scraping sweep.
  • Léo, an in-product assistant on WhatsApp and Telegram that diagnoses bots and hands off to support, covered by an eval suite.
  • A business analytics agent for the operator that writes read-only SQL against the exchange database behind a parser and a column allowlist.

MCP · OAuth 2.1 · AI SDK · Redis · PostgreSQL · Vercel

How a trader connects their AI

  1. Trader pasteslayback-mcp…/api/mcp into Claude or ChatGPT
  2. Discovery/.well-known/oauth-protected-resource
  3. RegistrationPOST /oauth/register (dynamic client)
  4. Consent/oauth/authorize on top of the exchange session, PKCE S256
  5. Tokens/oauth/token → short-lived access, rotating refresh
  6. Every callscope check → rolling budget → run → audit

Data platform

Stats, odds history, event matching

  • Bolsa de Aposta
  • Betfair
  • Polymarket

Everything above runs on one data platform: live and historical stats and odds, collected from several providers and matched into one event model.

API requests a day, 83% from cache
10.6M
API requests a day, 83% from cache
odds rows stored
423M
odds rows stored
matches with stats
144k
matches with stats

What I built

  • Collectors for Betfair, Bolsa de Aposta, Sportmonks, BetsAPI, Sportradar and Polymarket, with in-play odds every 10 seconds.
  • Event matching in six stages — exact IDs, cross-exchange, lookups, similarity and an AI fallback — merged with union-find.
  • A statistics API serving 10.6M requests a day behind a Cloudflare cache, with API keys, usage metering, a read replica and an MCP for internal agents.

Node.js · Express · Prisma · PostgreSQL · Cloudflare · node-cron

Past match with full statistics served by the data platform
Betfair odds history for a past match

Prediction games

Bolsa de Aposta, Pinnacle × 89FM, CRB, Criciúma

  • Bolsa de Aposta
  • Pinnacle
  • 89FM
  • CRB
  • Criciúma

Free-to-play and paid pools that bring exchange customers back every round, white-labelled for a bookmaker, a radio station and two football clubs.

in prizes paid to 938 winners
BRL 500k
in prizes paid to 938 winners
predictions
1.14M
predictions
traders
11.3k
traders
pools run on Bolsa de Aposta
30
pools run on Bolsa de Aposta

What I built

  • Odds frozen at the moment of each pick, so points reward the risk taken, with automatic settlement from the data platform on regulation time.
  • Eligibility from real exchange activity, and paid entry placed as a bet on the exchange itself.
  • An editorial blog with an AI content pipeline (transcripts, trade analysis, writer, judge) that publishes drafts with live market blocks.

Next.js · Bun · Hono · Prisma · PostgreSQL

Finished Bolsa de Aposta World Cup pools with prize pots up to BRL 200k and up to 5,665 traders each
The BRL 200k pool: 8 matches, 40 questions, 5,665 traders
Final ranking of the BRL 200k pool with prizes per position

Also built

How I work

Close to the traders. Most features started as a support conversation or a trader's spreadsheet, and shipped within days.

Small team, AI-heavy workflow: agents write and review code in parallel, and I own the architecture, the product decisions and what goes to production.

Numbers over opinions. Parity tests between bot and backtest, audits on every AI call, and dashboards before debates.

Open to full-time or contract, with or without my team

jp@jpc0rrea.dev