The library is your permanent shelf. Unlike the temporary session, anything here is stored on your account until you delete it.
It is also where Analysis starts when no portfolio is open: the Analysis switch in the top bar, a module link, or a bookmark to any Analysis page brings you here until you open or load something, and emptying the open portfolio brings you back here too.
At the top of the library sits an upload bar: drop CSV or Excel files on it, or click Choose files. Each file becomes a strategy and the files open as a new portfolio in the workspace. If a portfolio is already open with unsaved changes, you're asked first.
New portfolio, next to the saved portfolios, is different: it saves the files straight into the library as a portfolio without opening them.
Above the shelves sits a switch: My library or one of your shared spaces. Inside a space the page looks identical to your own, so the label is what tells you where a save will land, and rows gain three extra actions: Versions, Comments and copy out. In your personal library only the copy-in action appears, and only once you belong to at least one space.
If the Research section is enabled, the backtests you save there are strategies too, and they live on this same shelf: one list, sorted and searched together with the ones you imported from CSV. A backtest is not a different kind of object, it just has a different origin — so it can be added to a session, weighted, sized and saved inside a portfolio exactly like any other strategy.
You can tell them apart at a glance: a row born from a backtest carries the Veeman mark, the two curves of the logo, right after its name (hover or tap it: Backtest made with Veeman), and the toolbar gains an Origin filter (All · Imported · Backtests). Only the exception is marked; imported strategies stay unlabelled. The mark stays with the strategy whichever way it reached the shelf: listed straight from the Research archive, saved with Save as strategy, or saved from a session it had been loaded into. It follows it everywhere its name appears: the pickers (Add, New session, Browse the library…), the workspace rail and trade log, the tables, matrices and chart tooltips of the analysis modules, the command palette, and the Research archive and Rewind. Once in a portfolio, each of its rows in the workspace trade log opens that trade in Rewind. Imported strategies whose trade log lists each trade's legs open there too, replayed from the file (see Imported trades).
The numbers are the library's, not the run's
A backtest row shows the same metrics as every other row: computed by the portfolio engine from the daily series. They are not the statistics the Research run reported, which are tied to the capital and sizing of that run. If the two were mixed, sorting by Sharpe would be comparing numbers that don't mean the same thing. Promoting a backtest (below) therefore never changes its numbers.
Until you touch it, a backtest row is a projection: nothing is copied, and the backtest lives only
in its Research archive. It carries the research tag plus any tags given to the backtest in its
archive. The copy is made the moment you need one — renaming it or giving it a tag
promotes it to a full library strategy, which is also what unlocks versions, comments and copying into
a shared space. You don't have to ask for this; it happens as you work.
When a backtest is brought up to the latest market data with Update data, its row follows: the projection shows the new run, and a strategy promoted from it moves onto the new run too, keeping its name, tags and settings. A strategy saved from a portfolio with the strike guard applied keeps its own series: that is a portfolio's version of the backtest, not the backtest.
From an active session, save the current portfolio under a name and, optionally, a description — a
short note on why you put this mix together, so the reasoning is still there when you come back. You can
also attach tags at this point (free labels like 0dte or live) to group and find the portfolio
later. The same Save action lives in the workspace and the status bar, and right here in the library —
on the saved-portfolios header — so you can capture the session you're working on without leaving the shelf;
it appears only when there's something to save (a fresh upload, or unsaved changes to a loaded portfolio,
where it turns into Update). You can also save an individual strategy to reuse it; strategies are tagged from the library
(see below) rather than at save time. For Option Omega strategies, the trade-level CSV is kept
alongside — for both saved strategies and saved portfolios — so they stay usable for per-strategy
dynamic sizing after you reload them.
Keyframes are part of the recipe
Keyframes — the dated allocation events on the equity line — are saved with the portfolio and restored with it, so a book whose size changed over time reopens reading the same curve. A keyframe whose strategy or group is no longer in the file is dropped on load rather than kept as a marker that moves nothing. Files saved before keyframes existed simply open without any.
Currency travels with the file
A saved portfolio records the currency it was read in, and every strategy records its own source currency; reloading it gives you back the same units on any device, whatever that device's default says. The stored series stay in their source currency — conversion is a reading, never a rewrite — so "update data" and exports keep matching what your broker wrote. See Currencies & FX.
Groups and the size knob when saving
A saved portfolio keeps groups and base weights as two separate levers, so reloading it restores both and the knob still works. A saved strategy leaves its group behind — there is no sleeve to travel with it — so its exposure is baked into the saved weight: what you reload matches what you were looking at. See Group scale.
Next to the save action, the saved-portfolios header also carries a New portfolio button. Here in the library it works differently from the one in the workspace: it uploads the CSVs you pick, asks for a name (and an optional description), and saves the result straight to the shelf as a new saved portfolio — your current working session is left untouched, and you stay in the library. Use it to stock the library from files without disturbing what you're analysing. (If any file needs an import review, load it from New session in the workspace instead, where the mapping dialog is available — see Starting a new session.)
Each saved portfolio appears as a card carrying:
Saved strategies use the same key-metrics display — the metric values you'd see on a portfolio appear on each saved strategy too (computed from its stored series on a single contract), driven by the same Metrics picker and card/list toggle. The difference is the primary action: instead of Load, a strategy offers Add (or Load, when no session is open yet) to drop it into the portfolio you're building, with a quiet status dot that turns to the accent color once it's in the active session.
Use the pencil to change a portfolio's name, description, or tags at any time — without reloading it — which is handy when you only remember why later. Saved strategies carry the same pencil for editing their name and tags. Editing metadata never touches the saved strategies or settings.
Both lists — saved portfolios and saved strategies — sit under a toolbar that filters and reorders them instantly (everything happens in the browser, with no extra loading):
The same search, sort and tag filters follow you into the Workspace: its Add and + variant menus end with Browse the library…, which opens this toolbar in a picker where you can tick several entries and bring them in together — and once your shelf grows past eight entries those menus stop listing everything, showing only what you used most recently. Tags you set here are what keep that picker fast.
Tags are one vocabulary across the whole app: 0dte on a portfolio, on a strategy and on a
saved backtest is the same tag, and the same filter.
To keep it that way, every tag field (editing a portfolio or a strategy, saving a portfolio, editing a
backtest in the archive) knows the tags you already use and offers them:
cond finds iron condor), then those containing it,
then near misses with the same letters in order (reserch finds research). Each shows how many saved
items carry it. At the bottom, Create adds what you typed as a new tag.The keys: ↑ ↓ move through the list, Enter adds the highlighted row, Tab completes the highlighted tag, and a comma always adds exactly what you typed (the way to create a short tag that an existing one starts with). The list highlights an existing tag on its own only when it starts like what you typed; for looser matches Create stays highlighted, so Enter never swaps in a different tag. Esc closes the list, a second Esc clears what you typed. Tags already on the item are not suggested.
Inside a shared space the suggestions are the space's tags.
Library vs. variants
Use the library to keep reusable building blocks and portfolios you'll come back to. Use variants to freeze and compare specific configurations of the session you're working on right now.