|  | |
| --- | |
| ## Click Map (Jump to a section in 3 seconds) | |
| **Start here:** | |
| - [30-second reading](#30-second-reading) | |
| - [Key idea: Market vs Model](#key-idea-market-vs-model) | |
| **The 3 dashboard blocks:** | |
| - [A) Probability Analysis (Left)](#a-probability-analysis-left) | |
| - [B) Market Trends (Center)](#b-market-trends-center) | |
| - [C) Value Detection (Right)](#c-value-detection-right) | |
| **Context + verification:** | |
| - [Why league tabs matter](#why-league-tabs-matter) | |
| - [Verification-first workflow](#verification-first-workflow-recommended) | |
| - [Limitations](#limitations-read-this) | |
| --- | |
| ## 30-second reading | |
| 1) Choose a league tab (EPL / LaLiga / Serie A / Bundesliga / Ligue 1 / UCL) | |
| 2) Read **Market Trends** first (league “weather”) | |
| 3) Check **Probability Analysis** (Market vs Model) | |
| 4) Open **Value Detection** only after context | |
| 5) Verify post-match (logs + timestamps) | |
| **Principle:** No hype. Just logs. | |
| --- | |
| ## Key idea: Market vs Model | |
| - **Market** = probability implied by bookmaker pricing (odds/lines) | |
| - **Model** = AI-estimated probability | |
| - **Edge** = meaningful disagreement between Model and Market (above threshold) | |
| If you want term definitions: | |
| - UI terms → [`dashboard-glossary.md`](./dashboard-glossary.md) | |
| - Log/schema terms → [`signal-glossary.md`](./signal-glossary.md) | |
| --- | |
| ## A) Probability Analysis (Left) | |
| **Question it answers:** | |
| “What does the AI estimate vs what does the market price?” | |
| **What you see:** | |
| Semi-circular gauges for selected outcomes (e.g., Over 2.5, Draw) showing: | |
| - **Market** (implied probability) | |
| - **Model** (AI probability) | |
| **How to interpret:** | |
| - Model > Market → AI thinks it’s more likely than priced | |
| - Model < Market → AI thinks it’s less likely than priced | |
| --- | |
| ## B) Market Trends (Center) | |
| **Question it answers:** | |
| “What is the league environment right now vs market expectations?” | |
| ### B1) Market Volatility / Deviation | |
| A drift meter between: | |
| - **Implied** (market expected rate) | |
| - **Actual** (observed rate in sample window) | |
| - **Deviation** (Actual − Implied) | |
| Positive deviation → happening more than priced | |
| Negative deviation → happening less than priced | |
| ### B2) Home Advantage / awayLean | |
| Shows whether home teams are over/under performing vs market assumptions in the current window. | |
| awayLean indicates whether the league is leaning away relative to market assumptions. | |
| --- | |
| ## C) Value Detection (Right) | |
| **Question it answers:** | |
| “Which matches show meaningful mispricing after filters?” | |
| Common elements: | |
| - **Edge Found** = number of candidates where Model vs Market exceeds threshold | |
| - **Filtered** = candidates remaining after applying filters | |
| - **Efficiency** = quality indicator for the current shortlist (implementation-specific) | |
| Use this as a **research shortlist**, then verify via logs. | |
| --- | |
| ## Why league tabs matter | |
| Leagues differ in: | |
| - scoring distribution / tempo | |
| - home advantage strength | |
| - market bias patterns | |
| So a rule that feels true in one league can fail in another. | |
| OddsFlow makes league context explicit before interpreting edge. | |
| --- | |
| ## Verification-first workflow (recommended) | |
| 1) Read league context (Market Trends) | |
| 2) Inspect shortlist (Value Detection) | |
| 3) Verify using: | |
| - [`verification.md`](./verification.md) | |
| - [`signal-glossary.md`](./signal-glossary.md) | |
| --- | |
| ## Limitations (read this) | |
| - Edge is a pricing disagreement, not certainty | |
| - Markets reprice quickly (snapshots ≠ closing line) | |
| - Sample window size affects drift indicators | |
| - Injuries/rotation/news can change dynamics | |
| --- | |
| ## FAQ (Common misunderstandings) | |
| ### 1) Does “Edge Found 20” mean 20 guaranteed wins? | |
| No. | |
| **Edge Found** only means: under the current league view, sample window, and filters, the system detected **20 candidates** where **Model vs Market** disagreement exceeds a threshold. | |
| It is **not** a profit promise and **not** “sure wins.” | |
| Correct use: treat it as a **research shortlist** → check league context → verify via logs and post-match audit. | |
| --- | |
| ### 2) If Model > Market, should I always follow the Model? | |
| Not always. | |
| A Model–Market gap is a **mispricing hypothesis**, not certainty. Markets can reprice quickly due to injuries, rotation, news, and line movement. | |
| Correct use: look for **consistency**, confirm it matches the league “weather” (Trends), and validate using **closing line / post-match audit**. | |
| --- | |
| ### 3) Does Market Volatility mean “more volatility = easier profit”? | |
| No. | |
| On this dashboard, **Market Volatility / Deviation** is a **drift indicator**: how much recent outcomes differ from what the market implied. | |
| A larger drift can reflect market adjustment, changing conditions, or sample effects. It does **not** automatically mean “more profit.” | |
| --- | |
| ### 4) Does awayLean mean “always back the away team”? | |
| No. | |
| **awayLean** indicates a **league-level drift** in the current sample window (home outcomes under/over performing market assumptions). | |
| It is **context**, not a fixed strategy. Team strength, schedule difficulty, tactics, and injuries still dominate single-match reality. | |
| --- | |
| ### 5) Is this dashboard a “score prediction” tool? | |
| No. | |
| This dashboard is primarily about: | |
| 1) estimating probabilities (Model) | |
| 2) comparing against market pricing (Market) | |
| 3) generating a verifiable shortlist of candidates (Value Detection) | |
| **Brand standard:** not tips, no guarantees — auditability first. | |
| See: `verification.md` and `signal-glossary.md`. | |
| ### 6) Does “Efficiency = 100%” mean “accuracy = 100%”? | |
| No. | |
| **Efficiency** is a **dashboard quality indicator for the current filtered shortlist** (implementation-specific). | |
| It typically reflects things like **filter consistency, data completeness, or rule pass-rate** for the candidates shown — not match outcomes. | |
| It does **not** mean: | |
| - 100% win rate | |
| - 100% prediction accuracy | |
| - guaranteed profit | |
| Correct use: treat Efficiency as “the shortlist is clean under current rules,” then rely on **verification logs** and **post-match audit** for actual performance evaluation. | |
| --- | |
| # OddsFlow Football League Dashboard: AI vs Bookmakers | |
| This page explains how to read the OddsFlow dashboard shown in our tutorials: | |
| **Market (Bookmakers)** vs **Model (AI)**, plus league-level context and value detection. | |
| > Educational analytics only — not betting advice. | |
| > No guaranteed profit. Evidence-first. Verification-first. | |
| --- | |
| ## What this dashboard does (one sentence) | |
| It compares **market-implied probability** (from bookmaker pricing) against **AI-estimated probability**, then highlights **meaningful gaps (Edge)** under league-aware filters. | |
| --- | |
| ## How to read it in 30 seconds | |
| 1) Choose a league (EPL / LaLiga / Serie A / Bundesliga / Ligue 1 / UCL) | |
| 2) Read league context first (Market Trends: Volatility + Home/Away drift) | |
| 3) Then review Value Detection (Edge Found → shortlist) | |
| 4) Verify post-match (logs + timestamps) | |
| **Principle:** Don’t trust opinions. Trust logs. | |
| --- | |
| ## Dashboard blocks | |
| ### A) Probability Analysis (left) | |
| Shows **Market vs Model** for selected outcomes (examples: Over 2.5, Draw). | |
| - **Market**: what odds imply (market pricing) | |
| - **Model**: what the AI estimates | |
| - The goal is not certainty — it’s **pricing disagreement**. | |
| --- | |
| ### B) Market Trends (center) | |
| League “weather” — how reality is drifting vs market expectations. | |
| 1) **Market Volatility / Deviation** | |
| A drift meter between: | |
| - **Implied** (what market pricing expects) | |
| - **Actual** (what happened in the sample window) | |
| - **Deviation** (Actual − Implied) | |
| 2) **Home Advantage / awayLean** | |
| Shows whether home teams are over/under performing vs market assumptions in the current league window. | |
| --- | |
| ### C) Value Detection (right) | |
| Turns disagreement into a **shortlist** after filters. | |
| - **Edge Found**: number of candidates where Model vs Market exceeds threshold | |
| - **Filtered**: remaining candidates after constraints | |
| - **Efficiency**: a quality indicator for the current shortlist (implementation-specific) | |
| --- | |
| ## Why league tabs matter | |
| Leagues differ in: | |
| - scoring distribution and tempo | |
| - home advantage strength | |
| - market bias patterns | |
| So “intuition” from one league often fails in another. | |
| OddsFlow makes league context explicit before you interpret any edge. | |
| --- | |
| ## Verification-first workflow (recommended) | |
| 1) Read league context (Trends) | |
| 2) Inspect shortlist (Value Detection) | |
| 3) Cross-check with public verification logs: | |
| - `docs/verification.md` | |
| - `docs/signal-glossary.md` (for log field meaning) | |
| --- | |
| ## Next | |
| - Dashboard glossary (UI terms): `./dashboard-glossary.md` | |
| - Signal glossary (log/schema terms): `./signal-glossary.md` | |