Documentation · Section 5 of 6
Portfolios
The long-term lane: target weights, a monthly amount, reviewed contribution proposals you approve, pass-through execution and performance from your own fills.
Portfolios: The Long-Term Lane
Target weights, a monthly contribution, and proposals you approve.
A portfolio is dotQuant's swing/long-term investing lane: pick holdings and target weights, set a monthly investment amount, name the broker connection it instructs, and enable it.
- The amount is a planning cap: the portfolio invests up to that amount per month from cash already at your broker. dotQuant never touches your bank and never moves money into the account.
- dotQuant stores your intent (weights, cadence, benchmark) and the instruction history (what was proposed, approved, sent, and what the broker reported back). Positions, cash, and valuations always come from a fresh read of your broker at planning time — the broker is the book of record, dotQuant is never a custodian.
- If the named connection cannot answer, the outcome is cannot plan now — never a plan from a cache, never a different account.
Create one on the Portfolios tab: pick symbols, weights that total 100%, the monthly amount, review day, and broker connection.
- The amount is a planning cap: the portfolio invests up to that amount per month from cash already at your broker. dotQuant never touches your bank and never moves money into the account.
- dotQuant stores your intent (weights, cadence, benchmark) and the instruction history (what was proposed, approved, sent, and what the broker reported back). Positions, cash, and valuations always come from a fresh read of your broker at planning time — the broker is the book of record, dotQuant is never a custodian.
- If the named connection cannot answer, the outcome is cannot plan now — never a plan from a cache, never a different account.
Create one on the Portfolios tab: pick symbols, weights that total 100%, the monthly amount, review day, and broker connection.
Risk warning: Capital at risk — portfolio orders are placed on your own broker account, and investments can fall as well as rise in value.
The Monthly Review
Fresh broker facts in, a fully resolved proposal out.
On the portfolio's review day (or immediately on first enable) the platform runs a review round:
1. Reads your free cash on the named connection — the contribution is capped by what is actually there.
2. Reads your current positions and fresh prices (pence-quoted LSE instruments are normalised; cross-currency holdings are converted through the platform's own FX feeds, and the rate and date are recorded on the slice).
3. Computes a drift-aware, new-money-first split toward your target weights — overweight holdings simply receive nothing; the planner never plans a sell.
4. Resolves each slice into what your broker can actually execute — fractional quantities where supported, whole shares rounded down, and anything unexecutable (below the broker minimum, or a unit costing more than the slice) banked as cash that rolls into the next month. Ordered plus banked always equals the contribution to the cent.
The result is a proposal: the resolved orders and banked slices, waiting for you. A pending proposal is a refreshable quote — if prices or cash change before you act, the platform re-plans and supersedes it. Only your approval (or your explicit skip) closes the period, and a period can be approved once — that is the money invariant.
1. Reads your free cash on the named connection — the contribution is capped by what is actually there.
2. Reads your current positions and fresh prices (pence-quoted LSE instruments are normalised; cross-currency holdings are converted through the platform's own FX feeds, and the rate and date are recorded on the slice).
3. Computes a drift-aware, new-money-first split toward your target weights — overweight holdings simply receive nothing; the planner never plans a sell.
4. Resolves each slice into what your broker can actually execute — fractional quantities where supported, whole shares rounded down, and anything unexecutable (below the broker minimum, or a unit costing more than the slice) banked as cash that rolls into the next month. Ordered plus banked always equals the contribution to the cent.
The result is a proposal: the resolved orders and banked slices, waiting for you. A pending proposal is a refreshable quote — if prices or cash change before you act, the platform re-plans and supersedes it. Only your approval (or your explicit skip) closes the period, and a period can be approved once — that is the money invariant.
Approving and Steering
You are the only money event — and you can steer between reviews.
Approve (two-tap confirmation) is the only action that spends money: the platform dispatches the proposal's orders to your broker, pass-through, at the approved quantities.
You can also steer without waiting for the review day:
- Review now… requests an ad-hoc review immediately, optionally with a one-off amount for just that round.
- Withdraw cancels an open review request and its pending quote.
- Skip this period… declines the current proposal — the period closes with zero execution.
When a review is due but no proposal can be produced, the portfolio says why — no free cash on the broker, the broker unreachable, or no execution adapter for that broker — read fresh, never from a stored flag.
You can also steer without waiting for the review day:
- Review now… requests an ad-hoc review immediately, optionally with a one-off amount for just that round.
- Withdraw cancels an open review request and its pending quote.
- Skip this period… declines the current proposal — the period closes with zero execution.
When a review is due but no proposal can be produced, the portfolio says why — no free cash on the broker, the broker unreachable, or no execution adapter for that broker — read fresh, never from a stored flag.
Execution, Rejections, and Retries
Pass-through orders, honest broker verdicts, user-pressed remediation.
Approved orders go to your broker untouched — dotQuant never resizes, retries, or cancels on its own. Fractional quantities are used where the broker supports them.
- Rejections are shown verbatim with the broker's own reason on the proposal's slice — an unmapped symbol, a quantity-precision rule, insufficient funds.
- Retry is yours to press: a rejected slice carries a Retry action that re-executes it at the approved quantity under a fresh attempt — never automatic, and idempotent per press (a double-tap cannot double-buy).
- Quantity-precision rejections on platform-sized orders are stepped down automatically at the gateway (always rounding down) until the broker accepts — the order record shows exactly what was sent.
Every order the platform sends carries its origin — which portfolio (or strategy, or manual ticket) produced it — visible on the Activity tab and filterable in the order history.
- Rejections are shown verbatim with the broker's own reason on the proposal's slice — an unmapped symbol, a quantity-precision rule, insufficient funds.
- Retry is yours to press: a rejected slice carries a Retry action that re-executes it at the approved quantity under a fresh attempt — never automatic, and idempotent per press (a double-tap cannot double-buy).
- Quantity-precision rejections on platform-sized orders are stepped down automatically at the gateway (always rounding down) until the broker accepts — the order record shows exactly what was sent.
Every order the platform sends carries its origin — which portfolio (or strategy, or manual ticket) produced it — visible on the Activity tab and filterable in the order history.
Performance: From Your Own Fills
P/L and rate-of-return graphs computed from what dotQuant actually did.
Each portfolio shows Invested / Value / P&L and a rate-of-return graph (1M / 3M / 1Y / MAX), and the portfolio list opens with an aggregate graph across all your portfolios in your chosen display currency.
- Everything is computed from dotQuant's own fill records: cost basis at the fill date's FX close, value at the latest usable close, pence-quoted instruments normalised. It measures the dotQuant process — it is labelled from fills and is never a statement of account; your broker's numbers are the authority.
- Honest degradation: if any held position cannot be priced, totals say incomplete rather than partially summing.
- With the Desktop App streaming, the headline return ticks live from your own market-data entitlement.
For agents:
- Everything is computed from dotQuant's own fill records: cost basis at the fill date's FX close, value at the latest usable close, pence-quoted instruments normalised. It measures the dotQuant process — it is labelled from fills and is never a statement of account; your broker's numbers are the authority.
- Honest degradation: if any held position cannot be priced, totals say incomplete rather than partially summing.
- With the Desktop App streaming, the headline return ticks live from your own market-data entitlement.
For agents:
portfolio-performance (current snapshot) and portfolio-performance-history (daily series; omit the portfolio id and pass a currency for the cross-portfolio aggregate).Agent-Designed Portfolios
Hand an AI agent your mandate; approve what it structures.
Portfolios are a first-class agent surface. The
You stay the decision-maker: the agent structures and computes; the holdings are your picks, the portfolio is saved disabled, and enabling it — like approving every proposal — is yours. dotQuant computes arithmetic on your choices; it does not give investment advice.
The companion
design-a-portfolio workflow walks an agent through turning an investment mandate — "beat a global index fund over years, adding money monthly" — into a configured portfolio: the long-term frame, the buyable universe on your broker connection (venue, currency, and cost facts included), contribution sizing from your real free cash, weights that total 100%, and a benchmark.You stay the decision-maker: the agent structures and computes; the holdings are your picks, the portfolio is saved disabled, and enabling it — like approving every proposal — is yours. dotQuant computes arithmetic on your choices; it does not give investment advice.
The companion
manage-a-portfolio workflow covers the ongoing loop: enable, read proposals, approve or decline, request ad-hoc reviews, retry failed slices, and read performance — all the same commands the UI uses.Risk warning: An AI agent can prepare and manage a portfolio, but every order batch still requires your explicit approval, and the value of investments can fall as well as rise.