{% from "_macros.html" import empty, chart, demo_context, kpi, pnl, pnl_cls, pc, px, source_note %} {% macro mv(x) %}{% if x is not none and x|abs >= 0.0005 %}{{ "▲" if x > 0 else "▼" }} {{ "%.1f"|format(x|abs * 100) }}{% endif %}{% endmacro %} {# --- status strip --- #}

{{ snap.title }}

{% if mode == 'live' %}live{% else %}{{ "replay · settled" if snap.done else "replay" }}{% endif %}
{% if mode == 'replay' %}As of the {{ snap.update.label }} update, {{ snap.ts|when }}{% else %}Last update {{ snap.update.label }}, {{ (age // 3600) }} h {{ (age % 3600) // 60 }} min ago ({{ snap.ts|when }}){% endif %} {{ snap.markets|length }} markets {% if snap.closed %}Book closed{% endif %} {% if snap.next_label and not snap.done %}Next: {{ snap.next_label }} at {{ snap.next_at|when }}{% endif %} {% if mode == 'live' %}refreshes itself{% endif %}
{{ source_note(sport, none, none, snap.ts, model=true) }} {% call demo_context("A private book.") %}{% if maker %}Polymarket hasn't listed this race, so the demo maker lists and quotes every market it usually would, priced by the model after each session, and 1,000 simulated takers trade against the quotes between updates. The demo taker placed a dozen hype picks when the book opened.{% else %}Polymarket hasn't listed this race: this is the demo maker's own book. The demo taker placed a dozen YES bets when the book opened, picked on names and stories rather than value. Prices move after each session until the book closes at lights out.{% endif %} Fantasy bucks, nothing traded anywhere.{% endcall %} {# --- the weekend's stages --- #}
{% for u in snap.updates %}{% set st = 'now' if u.label == snap.update.label else u.state %}
{{ u.label }}{% if st == 'now' %}now{% elif u.state == 'done' %}done{% elif u.state == 'skipped' %}skipped{% else %}{{ u.at[5:16]|replace("T", " ") }}{% endif %}
{% endfor %}

Updates at session ends (UTC), each from the model's stage run once the session's data is in. Quotes are reset to the latest fair at every update, and the book closes at lights out.{% if snap.note %} {{ snap.note|join("; ") }}.{% endif %}

{# --- the headline numbers --- #} {% set w = (groups|selectattr("kind", "equalto", "race_win")|first) %}{% set winner = (w.markets|selectattr("outcome")|first) if w and snap.done else none %}
{% if winner %}{{ kpi("Winner", winner.subject, "", "", "", small=True) }}{% endif %} {% if maker and mpnl %}{{ kpi("The maker's event P&L · " ~ ("settled" if snap.done else "marked to fair"), mpnl.total, "vs the crowd " ~ mpnl.crowd|money(true) ~ " · vs the demo taker " ~ mpnl.taker|money(true), "money") }} {% endif %} {% if maker and crowd %}{{ kpi("Crowd fills", crowd.fills, (crowd.last_fills if crowd.last_fills is defined else 0) ~ " in the window before this update · " ~ crowd.active ~ " of " ~ crowd.takers ~ " takers have bet") }} {{ kpi("Crowd volume", (crowd.volume|money(false, false)), (("of " ~ (crowd.budget_total|money(false, false)) ~ " in event budgets ($10–200 each)" if crowd.budget_total is defined and crowd.budget_total is not none else "") if crowd.budget_total is defined and crowd.budget_total is not none else "") ~ (", plus " ~ (snap.betting.late_cap|money(false, false)) ~ " each pre-race" if snap.betting and snap.betting.late else "")) }}{% endif %} {% if picks %}{% if maker %}{{ kpi("The demo taker's picks · the maker's P&L on them", tot.maker_pnl, picks|length ~ " bets, " ~ (tot.stake|money(false, false)) ~ " staked" ~ (" · " ~ tot.won ~ " won, " ~ tot.lost ~ " lost" if tot.won or tot.lost else ""), "money") }} {% else %}{{ kpi("Your picks · P&L", tot.pnl, picks|length ~ " bets, " ~ (tot.stake|money(false, false)) ~ " staked · worth " ~ (tot.value|money) ~ " now" ~ (" · " ~ tot.won ~ " won, " ~ tot.lost ~ " lost" if tot.won or tot.lost else ""), "money") }}{% endif %}{% endif %}
{# --- one view at a time: the race, the book, the chart, every market --- #}
{% if not maker %}{% include "live_picks.html" %}{% endif %}

{{ {"fp1": "FP1", "fp2": "FP2", "fp3": "FP3", "sprint_qual": "Sprint qualifying", "sprint": "Sprint", "qual": "Qualifying", "race": "Race"}.get(snap.classification.round, "Latest session") }}{% if snap.classification.rows %} classification{% endif %}

{% if snap.classification.rows %}
{% if snap.classification.rows[0].best is defined %}{% endif %} {% for r in snap.classification.rows[:10] %}{% if r.best is defined %}{% endif %}{% endfor %}
#DriverTeamBest lap
{{ r.pos or "–" }}{{ r.driver }}{{ r.team or "" }}{% if r.best %}{{ "%d:%06.3f"|format(r.best // 60000, (r.best % 60000) / 1000) }}{% endif %}
{% else %}

No session run yet: priced from the season so far.

{% endif %}
{% if w %}

Winner odds now

{% if maker %}{% endif %} {% for m in w.markets[:10] %}{% if maker %}{% endif %} {% endfor %}
DriverFairMoveBid / ask
{{ m.subject }}{{ pc(m.fair) }}{{ mv(m.move) }}{% if m.bid is none and m.ask is none %}not quoted{% else %}{{ px(m.bid) }} / {{ px(m.ask) }}{% endif %}

Top 10 by {{ "fair value" if maker else "price" }}; every market is under Markets.

{% endif %}
{# --- the private book: positions, fills, the crowd, the demo taker's picks --- #} {% if maker and book %}{% endif %} {% if maker and win_chart %}{% endif %} {% if venue_prices %}

Exchange prices

compact check, model forecast stays primary
{% for subject, q in venue_prices[:10] %}{{ subject }} · {{ q.name }} {% if q.mid is not none %}{{ "%.2f"|format(q.mid) }}{% elif q.bid is not none and q.ask is not none %}{{ "%.2f"|format(q.bid) }}–{{ "%.2f"|format(q.ask) }}{% elif q.bid is not none %}bid {{ "%.2f"|format(q.bid) }}{% elif q.ask is not none %}ask {{ "%.2f"|format(q.ask) }}{% endif %} {% if q.age_min is none %}age unknown{% elif q.stale %}stale, {{ q.age_min }} min old{% else %}{{ q.age_min }} min ago{% endif %}{% endfor %}
{% if venue_stale %}

Some exchange prices are more than {{ stale_min }} minutes old, so they may be out of sync with the fair values above: the exchange's recorder may be behind.

{% endif %}

Live exchange prices are shown as a compact check against the model; the main narrative and the live forecast remain the focus. Each price shows when the exchange sync last wrote it.

{% endif %} {# --- every market, one type at a time --- #}