Paper analytics · Metric stack · Not real money
Opportunity scores for the current board (ranked, highest first).
Edge transitions from live scoring (updates every 12s). New rows are highlighted until the next poll.
market_monitor — opportunity score crosses the live floor (board-style).
favorite_discount — favorite side with discount vs consensus (stack threshold).
price_dislocation — best-book implied vs consensus divergence.
price_gravity — consensus move + gravity gap (stack thresholds).
| Edge time | Edge | Side | Price | Book | Opp | Min from start |
|---|---|---|---|---|---|---|
| No edge transitions yet. Live Market / Candidates views populate the feed when sides upgrade. | ||||||
Stopped. Set pack path and Start to test.
—
Active opportunities: —
Added: —
Candidates removed this tick: —
Candidates changed this tick: —
Captured candidates (stay until cleared): —
Candidates that qualify; add to Solo or dismiss. (Paper only.)
Candidates: High Conviction
Live board
Last updated: —
—
Snapshot refreshes with the board; click a row for regime, line history, and stake math.
No current candidates at this threshold. Try lowering the threshold or widening search.
| Game | Game time | Side / Market | Odds | Book | Opportunity | Window | Action |
|---|
Derived from the same global filters as the board above. Shows lines where stack_score ≥ 2 after apply_strategy(high_conviction_signal) — not the main opportunity list.
| Game / side | Opp | Stack | Strat rank | Odds | Book | Why candidate |
|---|---|---|---|---|---|---|
| Loading… | ||||||
Live Market Beta
All current live bets from `live_odds_current`.
| Game | Start | Sides | Best Odds | Edge |
|---|
Candidates Beta
Computed from `live_odds_current` + `live_odds_history` (lightweight).
| Game | Side | Best Price | Book | Heat | Dispersion | Recent Move | Opportunity | Edge | Window | Why candidate |
|---|
X: time before game start (minutes). Y: best decimal / implied prob %. Hover for timestamp, prices, dispersion.
One bet per tournament game. Same starting bankroll. Highest bankroll at the end wins.
—
First time joining: Open the app and go to the Royal Rumble section. Click “Join Tournament.” Enter the name you want to use (for example, “Sam”) and click Join. You are now in the tournament.
Returning on the same device or browser: You stay automatically recognized. Just open the app, go to Royal Rumble, and you’ll see the tournament with your bankroll and can place bets.
Using a different device or browser (phone, another computer, or incognito): There is no separate login. Do the following:
The app will recognize that name and reconnect you to your tournament entry. You will see your bankroll and can continue placing bets.
Important: There are no passwords. Your name is your identity in the tournament, so always use the same name when joining from another device.
If you forget which name you used: There is currently no “forgot name” recovery. Use the same name consistently so you can access your entry from any device.
Goal: Finish with the highest bankroll. The last player standing—or the player with the highest bankroll when the tournament ends—wins.
Starting the tournament: Every player begins with the same starting bankroll: 1,000 units. This bankroll is used only for the tournament.
Betting (optional per game): Every NCAA tournament game is a required game (Round of 64, Round of 32, Sweet 16, Elite 8, Final Four, Championship). You may place one bet per game when odds are available; you are not eliminated for skipping a game (e.g. when odds are TBD). When you do bet, pick one side and bet at least the minimum stake for that round.
Minimum bets by round (example):
When you can bet: You can place your bet any time before the game ends, including after tip-off.
Missing a game: You are no longer eliminated for skipping a game. Place bets when odds are available; you can skip games (e.g. when odds show TBD).
Auto-bet protection: To prevent accidental elimination, the app may place a fallback auto-bet if a game is about to end and you still haven’t bet. The fallback bet will use the minimum stake and choose the lowest-odds side. You can always place your own bet earlier instead.
Round survival check: Before each new round begins, the app checks whether your bankroll can cover the minimum bet for every game in that round. Example: next round has 8 games, minimum bet is 4 units per game — you must have at least 32 units to continue. If your bankroll is below the required amount, you are eliminated before the round begins.
Winning and losing: Bets work like normal sports bets: winning bets increase your bankroll, losing bets decrease it. You are eliminated if (1) you miss a game (no bet placed before it ends), or (2) your bankroll cannot cover the next round’s minimum bets.
Winning the tournament: At the end of March Madness, the player with the highest bankroll remaining wins. If only one player remains earlier, that player wins immediately.
Quick summary: Bet at least the minimum on every game before it ends and keep your bankroll high enough to survive the next round.
Welcome to the Bankroll Battle: March Madness Royal Rumble.
Everyone starts with the same bankroll and the same board of tournament games. Real-time odds decide the payouts — make one pick per matchup and build the biggest stack before the final buzzer.
Last one standing is the winner.
One bet per required game. Pick a side at the listed decimal odds; stake must be at least the round minimum and cannot exceed your bankroll.
Decimal odds: The number is what you multiply your stake by if you win (total return). Higher decimal = bigger payout if that side wins; lower decimal = favorite / smaller payout.
Loading timing and auto-bet details…
—
—
—
—
Best price, right size, right side — required games only. No mixing with the general board.
Result of each of your bets in this tournament.
| Rank | Player | Bankroll | Bets Made | Games Rem. | Status |
|---|
Slates define time windows for picks. Create one to scope league play.
| Game | Side | Best Price | Book | Window | Action | Explanation |
|---|
| User | Game | Side | Entry | Stake | Status | PnL |
|---|
| Rank | Player | Points | W | L | T | Total PnL | ROI% | Bankroll |
|---|
Edge Lab runs the same metric stack as the live Opportunity Board. With "Use canonical backtest DB" checked, the server uses the single locked DB (e.g. sportshead_app/data/backtest/current.sqlite) on the compute worker.
Edge Lab data: …
Canonical backtest DB not yet refreshed. Run historical refresh on the compute droplet.
What is a backtest? A backtest is an experiment using historical market data. It estimates what ROI / PnL would have been if all qualifying bets were identified and placed as modeled. It is theoretical and depends on assumptions such as timing, availability, and execution.
Caveats: This is a historical simulation only; it assumes modeled bets could be captured at the prices used. Results are not guaranteed future performance. Execution, slippage, and liquidity can affect real outcomes.
Running backtest… This may take 1–2 minutes for large packs.
| Matchup | Side | Time | Best Price | Book | EV Proxy | EV edge | Heat | Value | Accel | Opportunity | Window | Strategy | Result | PnL |
|---|
Run backtests with different configs, then click "Run & add to comparison". Strategy names are generated from config (or override in the name field). Click a legend item to show/hide that line. Remove selected to drop strategies from the comparison without clearing all.
| ☐ | Strategy | Bets | Settled | Win Rate % | ROI % | PnL | Avg impl % | Edge (pp) | Max DD | Max Deployed | Avg Deployed | Avg Opp | Avg Heat |
|---|
Past backtest runs (from this server). Deleting removes only the history row; it does not affect market data or canonical DBs.
| Job ID | Created | Status | Strategy | Summary |
|---|
Edge Discovery™ finds strategy/filter combinations. Start with Guided Discovery: pick sport and time window, then run a preset. Use Advanced Discovery for custom variable sweeps.
Use a working strategy as seed and sweep only its native parameters (narrow bands). Same sport and time window above.
| # | Strategy | Display name | Bets | PnL | ROI % | Stability | Win rate % | Max DD | Max deployed | Profit/bet |
|---|
48h price history (this side)