# Holdings

> The Holdings screen: every held position as one row for visual triage, biggest percentage loss first, with lot ages, verdicts, earnings, analyst targets, working orders and concentration buckets.

Source: https://investi.live/docs/app/holdings

Holdings lists every position you hold, one row per symbol, so you can see at a glance what is under water, for how long, and what the framework says about it. Open it from the nav (**Holdings**), press `g` then `b`, or choose **Go to Holdings** in the command palette. The same rows are at `GET /api/v1/holdings` and the MCP tool `get_holdings`.

Every number is computed on the server from your own records and the sources the rest of Investi already uses. A field with no source shows **n/a** with an (i) that says why (for example "No analyst coverage in the nasdaq.com (Zacks) feed"); nothing is estimated in its place.

## Top strip

- **Market value**: shares times the last price, every position.
- **Unrealized**: market value minus cost basis, with an arrow.
- **Under water**: how many positions are below cost, out of how many (probes left out).
- **Under water 60d+**: open cost that has been below cost for more than 60 days (your **Underwater days** threshold), in dollars and as a share of all open cost. It is the same figure as **Framework risk** on Portfolio.
- **Biggest losers**: the five largest unrealized losses in dollars, as small cells with the loss in dollars and percent. Probes are left out.

## The table

The table opens sorted by **Unr. %** ascending, so the biggest percentage loss is first; one click on the header flips it. Every column sorts (numbers as numbers, dates as dates, missing values last) and filters from its header or the **Filter** sheet, and the view (sort, filters, columns, grouping) lives in the URL. See the [table guide](/docs/app/portfolio#positions) for the shared controls: Columns, CSV, Group and Reset view.

| Column | What it shows |
| --- | --- |
| Symbol | Ticker and company name; hover for the intel card |
| Account | The account, or "2 accounts" when the position spans several |
| Shares | Shares held |
| Avg cost | Cost basis per share: Schwab's reported basis when a sync or positions file has it, otherwise rebuilt from your fills |
| Price | Last price |
| Value | Market value (footer total) |
| Unrealized | Dollars over or under cost (footer total) |
| Unr. % | Percent over or under cost, with a bar |
| To breakeven | How far the price must rise to reach your avg cost; **Above cost** when it already has |
| Since 1st buy | Days since the first buy of the current holding (since it was last flat) |
| Oldest lot | Days since the oldest open lot was bought |
| Age | The oldest lot's age as a colored bucket: Under 30d, 30-90d, 90-180d, 180d-1y, Over 1y |
| Lots | Open lots on record |
| Verdict | The rule engine's verdict chip; hover or tap it for the reason card |
| Verdict date | When that verdict was reached |
| Earnings, Days to earn. | Next report date (the resolved date every screen shows) and calendar days to it |
| Ex-div | Ex-dividend date from nasdaq.com |
| Last buy, Last sell | Dates of your most recent fills |
| 52W low, 52W high, Above low | The 52-week range from stored daily bars and the price's distance above the low |
| Target avg, Target low, Target high, Upside, Analysts | Analyst consensus from nasdaq.com (Zacks), as on Research's Analysts tab |
| Sell order, Sell dist. | The working sell nearest the price and its distance from it ("+2" means two more sells are working) |
| Buy order, Buy dist. | The same for buys |
| Sector | The instrument's sector |
| Bucket | Framework concentration bucket: Consumer disc., Rate-sensitive, Casino, Miner or LatAm financial. A name in two buckets shows the narrower one (a casino is Casino); hover for both |
| Dividends | Dividends received on the name, from your cash history (footer total) |

## Age chips and probes

The **Age** chips above the table filter by the oldest lot's bucket; each shows how many positions it holds, and several can be on at once. Positions at or under the probe size (1 share by default, the **Ignore positions and orders at or under N shares** rule) are listed dimmed with a **probe** tag; **Hide probes** removes them from the table. See [Probe lots](/docs/strategy/rules#probe-lots).

## Expanded row

Open a row with its arrow to see:

- **Lots**: each open lot's date, shares, cost per share (in cents) and age in days.
- **A one-year chart** with your buys and sells as markers and your avg cost as a line (the same chart as Research).
- **Verdict**: the chip and the rule engine's reason lines.
