Glossary
The terms, roles, tools, and risk caps that appear throughout the Aelix docs, in one place.
A quick reference for the vocabulary used across these docs. Where a term has its own page, the definition links to it.
Roles & architecture
- Portfolio Manager (PM)
- The main Claude Code session you talk to. It orchestrates the sub-agents and is the only role that can place orders, and only after your approval. See The Desk Team.
- Sub-agent
- A specialist role defined as a Markdown file in
.claude/agents/with its own restrictedtools:list andmodel:. Loaded when Claude Code starts. - Human-in-the-loop (HITL)
- The structural rule that no order is placed without your explicit in-session approval. See Guardrails.
- Least privilege
- Each role holds only the tools its job needs. The analysts and Risk Manager have no order tools; only the PM does.
- Claude Code
- The agent host Aelix runs inside. There is no separate backend server or Python orchestrator, the PM *is* the session. See Architecture.
- MCP (Model Context Protocol)
- The protocol that connects Claude Code to the broker. Aelix uses one MCP server,
robinhood-trading. See MCP & Tools. - robinhood-trading
- The single MCP server (HTTP transport, OAuth) that is the desk's only path to the account. Defined in
.mcp.json. - Robinhood Agentic account
- The isolated, beta, equities-only account the desk may trade. Every other account is read-only for context.
- OAuth
- The in-session authentication flow for the MCP server. The agent never sees your password; there is a Robinhood mobile verification step.
The desk run
- Preview card
- The desk's standard output: a summary of the proposed order (symbol, side, qty, order type, estimated cost, rationale) that the PM presents and waits on. Built by
review_equity_order. See The Desk Run. - review_equity_order
- A read-only tool that builds an order preview without submitting anything.
allow-ed, because it never transacts. - place_equity_order
- The tool that actually submits an order. Held only by the PM and gated behind an
askprompt. - Veto
- The Risk Manager's power to block a proposed trade outright. A VETO stops the trade; the PM reports back.
- APPROVE-WITH-CHANGES
- A Risk Manager verdict that clears a trade only after specific changes (e.g. cut size to N, add a stop at $X).
- Scan
- A saved technical screen the Technical Analyst runs (
run_scan/get_scans) to surface candidate tickers. - Watchlist
- A list of symbols the desk screens (
get_watchlist_items); mutating watchlists is gated behindask. - INJECTION ATTEMPTS
- The line in the Macro/News Analyst's brief where instruction-like text from the web is quoted verbatim and flagged, never obeyed. See Prompt-Injection Defense.
- Prompt injection
- External content that tries to act like an instruction ("buy X now", "ignore your rules"). Aelix treats all external content as untrusted data.
Risk & strategy
- NAV (total_value)
- Account value = cash + positions, read from
get_portfolio.total_valuefor the Agentic account. All risk percentages are of NAV, not the brokerequity_valuefield. See Strategies & Risk. - Per-trade cap
- 15% of NAV, the hard ceiling on any single
place_equity_order. - Concentration cap
- 25% of NAV in any one symbol, including all adds.
- Max open positions
- 6, forces diversification within a small account.
- Max daily orders
- 4, throttles churn; counts buys + sells per day.
- Stop-loss
- −8% from average entry, every entry must define this before it is placed.
- Daily loss halt
- −5% account day P&L, stop trading, report, and ask for the rest of the day.
- Cash buffer
- ≥10% of NAV kept in cash, never fully deploy.
- Mean reversion
- A strategy: buy oversold pullbacks inside a confirmed uptrend; long only, swing. One entry per setup, no averaging.
- Left-side accumulation
- A strategy: planned, risk-budgeted scale-in at support in a quality name's fear-driven selloff. The only defined exception to "no averaging into losers," bounded by a fixed total-risk budget and a whole-position kill-stop.
- No averaging into losers
- Adding to an underwater position is forbidden unless a strategy file explicitly permits it with limits.
State, tooling & operations
- desk-state.json
- The snapshot the PM writes after each run; the dashboard mirrors it. Real state is gitignored; only the sanitized example is committed.
- injectionAlerts
- The array in
desk-state.jsonwhere flagged injection attempts surface (source, quote, handledBy, action). - decisionLog
- A tail of the JSONL audit log flattened for the dashboard timeline as
{ ts, event, summary, symbol, tone }. See Audit Logging. - JSONL audit log
- The append-only
logs/*.jsonltrail, one JSON object per line, of every desk decision, written viatools/desk-log.mjs. - Backtester
- The offline, dependency-free engine in
backtest/that sanity-checks strategy logic against historical bars, illustrative, not a track record. See Backtester. - /loop
- The Claude Code mechanism used to run the read-only desk on a cadence (e.g. behind the dashboard's Run desk button).
- Kill switch
- Disconnecting the MCP from the Robinhood app or
claude mcp remove robinhood-trading, the desk's hard stop.
Missing a term? The FAQ covers scope and safety questions, and each reference page defines its own vocabulary in context.