# Markets browser

**How to filter 1000+ live Polymarket markets by vertical, timing, quality, event-cluster group, and free-text search.**

Section: Trading · Last updated: 2026-07-28

---

## Where the data comes from

Directly from Polymarket's public Gamma API. We fetch ~800 top-by-volume markets on every page load (8 parallel requests, ~1 second total). Cache: 60 s at the Cloud Run layer.

## Filters

  - **Vertical** — politics / geopolitics / sports / crypto / macro / culture / tech. Client-side match on event tags (Gamma's own `tag_slug` filter is a no-op).
  - **Timing** — Today / This week / This month / Q4 / etc. Filters by `daysUntilResolution`.
  - **Quality** — high liquidity ($10k+), tight spread (&lt; 2¢), multi-outcome, etc.
  - **Groups** — Polymarket-native event clusters (e.g. "US election 2028"). Shows every sub-market in the cluster, not just the top-N.
  - **Search** — free-text over question titles. Combined with vertical + quality for hybrid filtering.

## Zombie-filter

Polymarket's `active=true&amp;closed=false` filter still returns already-settled 0¢/100¢ markets. We drop anything with YES ∉ (0.001, 0.999) or end-date in the past or zero liquidity. Your grid stays actionable.

## Sparklines

Every row has a lazy-loaded sparkline (via Intersection Observer) showing the last 7d of YES price action. Only fires when the row scrolls into view.