Traducción en curso
Esta página se refleja automáticamente desde el original en inglés hasta que llegue una traducción al español. El contenido está en inglés — la navegación y la interfaz ya están traducidas.
Market dashboard
A single-screen "where is the market today" view. Renders inside the Market panel and updates without page reloads.
Layout, top to bottom:
- Top index strip — S&P 500, NASDAQ, DOW, VIX with sparklines + Fear & Greed gauge + exchange switcher.
- Sectors strip — 11 GICS sectors, sorted by performance, click to filter.
- Heatmap (treemap) — market-cap weighted tiles, coloured by today's % change.
- Side panel — Top gainers, top losers, most active, plus a live market news feed.
- Bottom strip — Breadth bar, BTC, Gold, WTI, DXY, 10-year yield.
Exchange switcher
Click the market-status pill in the top strip to switch the constituent set the heatmap renders.
| Pill | Index | Hours (local) |
|---|---|---|
| NYSE | S&P 500 | 09:30 – 16:00 ET |
| London | FTSE 100 | 08:00 – 16:30 GMT |
| Frankfurt | DAX 40 | 09:00 – 17:30 CET |
| Hong Kong | HSI | 09:30 – 16:00 HKT |
| Tokyo | Nikkei 225 | 09:00 – 15:00 JST |
| Sydney | ASX 200 | 10:00 – 16:00 AEST |
The pill shows local time + "closes in / opens in" countdown. DST switches automatically (Intl.DateTimeFormat). Holidays are not yet on the server-side calendar. Your last choice is persisted in localStorage as atlas.marketExchange.
Sectors strip — filter the heatmap
Click any sector pill (TECH, ENERGY, FINANCE, …) to filter the heatmap, side panel, and breadth to that GICS sector only. Click again or press CLEAR × to drop the filter. Sectors are sorted by weighted average % change, highest first.
Heatmap
- Tile size = market cap.
- Tile colour = today's % change (-3% red → 0% neutral → +3% green).
- Click a tile → opens the security snapshot for that ticker.
- Tiles below ~1200 px² hide their label but stay clickable; hover for the tooltip.
Side panel
| Block | Source |
|---|---|
| ▲ Top gainers | Top 5 by change_pct, descending |
| ▼ Top losers | Bottom 5 by change_pct |
| ⚡ Most active | Top 4 by volume |
| Market feed | /api/v1/news?limit=10, polled every 5 min |
Click any ticker row to open its snapshot. Click a news headline to jump to the news panel.
Bottom strip — macro at a glance
| Cell | Symbol | Clickable? |
|---|---|---|
| Breadth | derived | No (visual only) |
| BTC | BTC-USD | Yes — opens crypto snapshot |
| Gold | GC=F | No (reference only) |
| WTI | CL=F | No (reference only) |
| DXY | DX-Y.NYB | No (reference only) |
| 10Y yield | ^TNX | No (reference only) |
Reference-only cells don't open a snapshot because the equity-only panels (fundamentals, dividends) don't apply to commodities / yields.
Data flow
- Snapshot rows come from
GET /api/v1/market/dashboard/snapshot?index=<id>— backend caches 60s during market hours, 10 min off-hours. - Index, sector, and macro quotes use the OHLC batch endpoint (
/market/ohlc-batch). - News uses
/api/v1/news, polled every 5 minutes when the panel is visible. - Nothing is fetched while the panel is hidden — switching tabs pauses all polling.
Empty states
All blocks render even when the corresponding data is missing. Numeric fields fall back to —; whole blocks show NO DATA. No spinners unless a fetch is genuinely in flight.