# Your bot's agent account

> Give your bot its own paper money that never counts anywhere public, and check its buying power before it sizes a trade.

Your bot gets its own practice account. Send `"account": "agent"` on any order and it trades there instead of on your own paper wallet or your futures practice account.

All tickers, prices, ids and times on this page are made up to show the shape of a call. They aren't real fills and they aren't results.

## What it is

- **Its own paper money.** A paper wallet for options and stocks that starts at $100,000, and a futures account that starts at $50,000. Your own wallet doesn't move when your bot trades there.
- **The same engine and rules.** Same live prices, same fills, same checks as your own paper trading.
- **It never counts anywhere public.** No leaderboards, ranks, seasons, profile stats, feed, copy trading or Discord, and it's never part of a challenge or an evaluation. You see it in Nexus under Agent, and your key reads it. That's it.

`GET /api/nexus/v1/trading/capabilities` describes it under `agentAccount`.

## Send orders to it

```bash
# Options: 2 SPY 600 calls on the agent account
curl -s -X POST "$NEXUS/api/nexus/v1/trades" \
  -H "Authorization: Bearer $SKYLIT_API_KEY" -H "Content-Type: application/json" \
  -d '{"contract":"SPY 600C 10/16","quantity":2,"account":"agent","clientOrderId":"agent-0001"}'

# Futures: long 1 MNQ on the agent account
curl -s -X POST "$NEXUS/api/nexus/v1/trades" \
  -H "Authorization: Bearer $SKYLIT_API_KEY" -H "Content-Type: application/json" \
  -d '{"assetClass":"futures","ticker":"MNQ","side":"buy","quantity":1,"account":"agent"}'
```

Limits, stops and adds work the same way there: a resting order on the agent account holds back the bot's buying power, and an add to an agent trade pays from the agent wallet. See [Limits, stops and adds](https://www.skylit.ai/docs/nexus-trades/order-types).

## Read its trades and positions

- Options and stocks: `GET /api/nexus/v1/trades?account=agent`.
- Futures: `GET /api/nexus/v1/trading/accounts/agent`, or `GET /api/nexus/v1/trades?assetClass=futures&account=agent` for its positions and closed trades.
- Resting options and stock orders: `GET /api/nexus/v1/trading/wallets/agent/orders/working`.
- Without `account`, the list is your own trades, same as always.

## Check the wallet

`GET /api/nexus/v1/trading/wallets/agent` for your bot's wallet, or `GET /api/nexus/v1/trading/wallets/main` for your own.

```json
{
  "data": {
    "book": "agent",
    "currency": "USD",
    "asOf": "2026-10-12T14:45:00Z",
    "opened": true,
    "startingCashCents": 10000000,
    "cashCents": 9927100,
    "buyingPowerCents": 9887100,
    "reservedCents": 40000,
    "realizedPnlCents": 12400,
    "openPositions": 2,
    "openCostBasisCents": 85300,
    "openMarketValueCents": 91200,
    "equityCents": 10018300
  }
}
```

Every number is in cents, so `9927100` is $99,271.00.

- `cashCents`: cash in the wallet right now.
- `buyingPowerCents`: what you can spend on a new trade. It's your cash minus what resting buys hold back (`reservedCents`), since a paper trade can't take you below zero.
- `startingCashCents`: what the wallet started with.
- `realizedPnlCents`: profit or loss from closed trades.
- `openPositions`, `openCostBasisCents`: how many trades are open and what you paid for them.
- `openMarketValueCents`, `equityCents`: those positions at their latest marks, and cash plus that. If a position hasn't been marked yet, these two are left out instead of guessed.
- `opened`: `false` until your first trade on that wallet. Until then you'll see the starting $100,000.

You only ever see your own wallets. It counts as a read, so it shares your 120 reads a minute.

## Size from buying power

Read the wallet before each open, and size from `buyingPowerCents`, not from `cashCents`. A resting buy has already spoken for part of the cash. If your bot sends more than the wallet can cover, the order answers `422 insufficient_buying_power` and nothing's placed.

## Stop it fast

Hit Close on each open trade in the Agent tab in Nexus, or flatten futures with `POST /api/nexus/v1/trading/accounts/agent/close` and `"closeAll": true`. Cancel what's resting with `POST /api/nexus/v1/trading/wallets/agent/orders/cancel` and `"cancelAll": true`. To stop new orders too, revoke the key. That takes effect within about a minute.
