/v1/portfolio/analyze — which recomputes a
portfolio’s entire history on every call — a tracked portfolio is stored once and then
advanced day-by-day by appending only new days. This reduces repeated computation for daily dashboards and ongoing monitoring.
Each tracked portfolio keeps a boundary marking the last persisted per-RIC value and
benchmark level. Incremental updates extend the analytics from that boundary,
carrying forward portfolio and benchmark values across updates.
Lifecycle
1
Validate & resolve (optional)
Use Validate Portfolio to check a
portfolio definition (per-date weights must sum to 1.0, symbols must resolve) and
Resolve Portfolio to normalize symbols to
RICs before you commit to tracking.
2
Track
Track Portfolio registers the portfolio and
kicks off its initial analytics in the background, returning a
portfolio_key
immediately (no compute wait). The portfolio is initializing until its analytics
persist.3
Read analytics
Poll Get Analytics. It returns a
discriminated status:
not_computed (200) while the background compute hasn’t landed
yet, then ready with the full analytics series. Reads are fast and never trigger a
recompute.4
Keep it current
Increment brings a portfolio forward to
yesterday by appending only the missing trading days. Active portfolios are advanced
automatically by a daily worker, so this is usually hands-off.