Unexpected Sports

Set-and-forget NBA betting vaults. Deposit USDC, get automated season-long team exposure.

Unexpected Sports

Created At

HackMoney 2026

Project Description

Unexpected Sports creates a new financial primitive: tokenized vaults that give passive, season-long exposure to NBA teams. Using an intent-based architecture, the vault automatically sells prediction market NO tokens and streams bets over 48 hours (DCA entry). Your ERC-20 shares go up when the team wins, down when it loses — no manual betting, no addiction loop. As a side effect, we create a permissionless on-chain sports oracle for moneyline probability data.

The result is a derivative token whose price:

  • Short term: Goes up when the sports team wins, down when it loses
    • This makes it a digital asset to support leveraged sports betting (e.g., sports perps)
  • Long term: Goes up when the sports team has an UNEXPECTEDLY good season
    • This makes it a non-correlated digital asset that can be added to portfolios

Problem

Prediction markets let you bet on individual games, but there is no easy way to get season-long financial exposure to a team's performance. Today you have to:

  • Manually place bets every game, all season
  • Size each bet correctly so you don't blow up your bankroll
  • Resist distractions — platforms push you toward other markets and parlays
  • Avoid addiction — the constant engagement loop of sports betting is by design

There is no "buy and hold" equivalent for sports fans who just want upside if their team has a great season.

Solution

Unexpected Sports Market creates per-team ERC-4626-style vaults that support traders and investors to hold shares of an automated betting pool that follows a policy of betting 2% of the pool on each team's game.

| Feature | How It Works | |---|---| | Deposit | Send USDC to a team vault, receive ERC-20 shares | | Automated Betting | The vault sells NO tokens worth 2% of its balance on every game | | Intent-Based Execution | Off-chain searchers/market makers fill NO token orders — no direct prediction market integration | | Rate-Limited Withdrawals | Daily deposit/withdraw caps prevent manipulation and ensure stable bet sizing | | Transparent Pricing | Share price = USDC balance + mark-to-market value of open bets, updated via on-chain oracle | | Sports Oracle | Independent oracle contract for trusted price reporters to track YES/NO token prices |

How it's Made

How It's Made

The protocol has three components:

On-Chain (Solidity / Foundry)

  • Oracle — Stores game metadata (teams, slug, game time) and time-series YES/NO price observations. Supports TWAP queries over arbitrary time ranges. Authorized reporters post prices; data is publicly readable by any contract.
  • Team Vault (interface defined, implementation in progress) — ERC-20 share token representing pro-rata claim on vault assets. Accepts USDC deposits, mints shares, burns on withdrawal. Sells NO tokens per game to searchers/market makers. Rate-limits deposits and withdrawals to prevent manipulation.

Off-Chain (Python)

  • Data Pipeline — Fetches hourly YES/NO price history from Polymarket's Gamma and CLOB APIs for every NBA game. Stores data in SQLite and CSV files. Powers the backtest engine that validates the 2% strategy across all 30 NBA teams.
  • Web Server — Flask app serving backtest results, price history charts, and game analysis via REST API + HTML dashboards.

Frontend (spec defined)

  • React app for depositing USDC, viewing share price history, and browsing per-game NO token liquidity.
background image mobile

Join the mailing list

Get the latest news and updates