Trade journal
Export your trades, fills, funding, daily equity and payouts as CSV or JSON, and connect an AI assistant that can read them through a read-only journal key.
Your trade journal is everything your accounts have done: closed trades, executions, funding, daily equity and payouts. On Analytics you can download it with Export, or let an AI assistant read it with Connect your AI. Both are read-only. Neither can place, change or close a trade, or request a payout.
Export
Export in the Analytics header opens a dialog with four choices. On a phone it opens as a sheet from the bottom of the screen.
| Choice | What it sets |
|---|---|
| Data | Which rows: Trades, Fills, Funding, Daily equity or Payouts. |
| Accounts | The account Analytics is showing, or All accounts. |
| Date range (UTC) | A start day and an end day, both included. Leave both empty for everything. Days are UTC days. |
| Format | CSV, for a spreadsheet, or JSON. |
The dialog counts the rows for your choice before you download, and says so when there are none. Download saves the file.
A file holds at most 50,000 rows, the newest first. If your choice holds more, the dialog
tells you before the download: narrow the date range and export again for the rest. A JSON file also carries
truncated: true when it was cut. You can start 6 per minute exports.
What each file holds
| Data | One row is | Columns |
|---|---|---|
| Trades | A closed trade, or one partial close. | Trade and account ID, market, side, size, leverage, entry and exit time, entry and exit price, realized P&L (gross), the round-trip fee, net P&L, what closed it (manual, take-profit, stop-loss, liquidation and the engine's other closes), order type, and hold time in seconds. |
| Fills | One execution. | Fill and account ID, time, market, side, whether it opened or closed, price, size, this fill's fee, the mid it is measured against, slippage in basis points, the order kind and the order, run and trade it belonged to. |
| Funding | One hourly funding payment on an open position. | Payment and account ID, the hour, market, the payment in dollars (negative is a charge), the rate, and the position's notional. |
| Daily equity | One UTC day on one account. | Account ID, the day, and equity and balance at the 00:00 UTC daily reset that opened it. |
| Payouts | One payout you requested. | Payout ID, type (profit or referral), account ID, when it was requested and paid, the amount in USDC, its state, network and transaction. |
Net P&L is realized P&L less the fee, the same arithmetic as every figure on Analytics. Times are ISO 8601 in UTC.
A payout's state is one of pending, claimable, paid, rejected or expired. An older profit payout that drew from all your funded accounts together has no account ID; exporting one account's payouts includes those too.
A funding payment belongs to a position, not to one closing trade, so funding is its own file and the Trades file has no funding column.
Connect your AI
Connect your AI sets up the journal server: an MCP (Model Context Protocol) server that an AI assistant can call to read your trade journal and answer questions about it. It is one screen. On a phone it opens as a sheet from the bottom of the screen.
- Pick your assistant. There is a tile for each one. Under the tiles are the three things to do in that assistant.
- Create key. This makes an API key with the
journal:readscope for your live accounts, valid for 90 days. You confirm it with your 2FA code or passkey, like every API key: six digits are sent as soon as you type the sixth. Creating a key needs API access. - Copy setup. The setup for your assistant appears with your new key and the server's address
(
https://mcp.perpsfund.com) already inside it, and one button copies the whole of it. Paste it where the three lines say. The key is shown once: copy the setup before you close the window.
| Assistant | How it connects |
|---|---|
| Claude Desktop | Paste the block into Claude Desktop's config file (Settings, Developer, Edit Config), save, and restart. |
| Claude.ai | Add a custom connector (Settings, Connectors) with the name, the server's address and the key as an Authorization: Bearer request header. Anthropic is still rolling that field out: if your account does not show it, use Claude Desktop. |
| Other MCP client | Add a remote server in your client's MCP settings with the server's address and the same Authorization: Bearer header, then reload the client. |
| ChatGPT | Not yet. ChatGPT's connectors sign in with OAuth and cannot send a key. Its tile opens Export: download a file and attach it to a chat. |
What a journal key can do
A journal key reads your trade journal through the journal server and nothing else. It cannot place, change, close or cancel anything, and it is refused everywhere on the trading API. A read or trade API key is refused by the journal server in turn, so the key you hand to an assistant is never one that can trade.
You can see and revoke the key in Settings, under API keys, where it is marked Journal. Signing out everywhere or changing your password revokes it with your other keys.
What the assistant can read
| Tool | What it answers |
|---|---|
list_accounts | Your accounts, with status, size, balance and phase. |
get_trades | Closed trades on one account, a page at a time. |
get_fills | Every execution on one account. |
get_funding | Hourly funding payments on one account. |
get_daily_equity | Equity and balance at each daily reset. |
get_metrics | Win rate, net P&L, profit factor, expectancy, average win and loss, best and worst trade, hold times and streaks, and the net by market, by day, by weekday and by the UTC hour a trade closed. |
get_open_positions | What is open right now, with unrealized P&L. |
get_payouts | Your payouts and their states. |
get_rules | The account's loss limits and profit target, and how far it is from each at the current mark. |
The metrics are computed the way Analytics computes them. They leave out the figures that need the equity curve (drawdown, return and the risk ratios), which are on the Analytics page.
The server also offers three ready-made prompts: Weekly review, Worst habit and Pre-session checklist. An assistant that supports prompts lists them; otherwise just ask for one.
What an assistant says about your trading is its own reading of your data. It is not advice from Perps Fund.
A sandbox key with the journal scope reads the sandbox's paper account instead: its trades, positions and limits. The sandbox keeps no fills, funding, daily equity or payouts.
The full reference, with every argument and field, is Trade journal in the API reference.