Portfolio value over time is reconstructed from your own records. Share balances are walked forward from every transaction and priced with the stored history supplied by each ticker's configured provider or local/manual history lane, then combined with the account's core cash. Total Portfolio Value on the metric card is simply the chart's latest point, so the two always agree. Before any history exists, whether on a fresh install or right after Rebuild history clears it, the card falls back to what you hold today: positions at their last price plus core cash, which is the same basis the projection starts from.
What's deliberate about it
- Cash is smoothed on the chart. Trades settle over a few days, so the chart carries a settlement-aware cash walk instead of the raw ledger. Otherwise every in-flight trade would draw a sawtooth. The exact, reconcilable balance lives in the Cash Activity ledger on Holdings.
- Both shapes plot daily. A statement-tracked account holds the share counts you stated and prices them at each day's close between statements, so its curve moves with the market and steps only where you file a new statement. What is genuinely periodic there is the return: one Modified-Dietz factor per statement period. A mixed selection says so under the plot (see data shape).
- The benchmark overlay answers one question: "what if the same starting dollars had tracked X?" The benchmark's adjusted closes are scaled to the portfolio's value at the start of the visible window. Change the window and the overlay re-anchors.
- TWR % mode rebases the time-weighted growth-of-$1 index to 0% at the window start. For a group selection the index is pooled. Members' daily values and flows are combined first, then chained, which is the only correct way to aggregate TWR across accounts.
- TWR %/yr mode shows the same index as an annualized return, meaning at each date the per-year rate that compounds to the return so far, ending at the figure the Performance card reports. A partial year is never annualized, so the curve starts a year into the window and the mode is disabled on any window shorter than that. The benchmark overlay annualizes on the same basis.
Update prices fills only missing recent days. Rebuild history clears and rebuilds every ticker from its configured provider or local history lane. It is the fix for bad data, but potentially a heavy, rate-limited operation; see price sources.
If fewer than two stored value dates exist, the chart names that requirement and uses the same recovery slot as its toolbar. A ready setup offers Rebuild history. A missing provider setup routes to Settings → Price data, and an expired commercial trial routes to License. The action never silently switches providers, accepts Yahoo's personal-use terms, or downloads around a blocked setup. Manual/local records remain their own lane; the empty copy names them without pretending a provider rebuild creates those records.