DashboardPortfolio
Decision-ready portfolio aggregate across the caller's RUNNING bots in the active workspace, computed once on the server.
- totalValue: Σ (open-position stake + unrealized profit)
- openPnl: Σ unrealized profit on open positions
- pnlDelta: openPnl as a percent of committed stake (the ▲/▼ % indicator)
- currency: the shared stake currency of the contributing bots ("" when empty)
- pnlSeries: trailing-7d cumulative realized PnL, one point per UTC day
- allocation: one slice per running bot holding ≥1 open position (pcts ≈ 100)
The query errors with code MIXED_STAKE_CURRENCY when the contributing bots do not share a single stake currency (a single aggregate would mix unlike units).
type DashboardPortfolio {
totalValue: Float!
openPnl: Float!
pnlDelta: Float!
currency: String!
pnlSeries: [DashboardPnlPoint!]!
allocation: [DashboardAllocationSlice!]!
}
Fields
DashboardPortfolio.totalValue ● Float! non-null scalar
DashboardPortfolio.openPnl ● Float! non-null scalar
DashboardPortfolio.pnlDelta ● Float! non-null scalar
DashboardPortfolio.currency ● String! non-null scalar
DashboardPortfolio.pnlSeries ● [DashboardPnlPoint!]! non-null object
DashboardPortfolio.allocation ● [DashboardAllocationSlice!]! non-null object
Returned By
dashboardPortfolio query