Skip to main content

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