Get completed round-trip trades (server-derived)
The trader’s completed round-trip trades — one row per position episode (open-from-flat to back-to-flat), newest exit first. Scale-ins and scale-outs are merged into the episode’s single trade. Render these rows as-is rather than re-pairing fills yourself.
Semantics:
- Trades are paired per account and contract (exact full contract symbols, e.g.
NQU6andMNQU6are distinct). - LIFO matching — a close pairs with the newest open lot.
- A flatten or liquidation always ends the episode.
pnl/gross_pnlare gross;feeandcommissionare reported separately so clients can present net if preferred.duration_formattedreports sub-second round trips (e.g. an instant liquidation) as<1s.- Positions still open at query time are not included (the round trip isn’t complete yet).
- Orders can fill in several executions at different prices. The journal uses each order’s executed quantity and volume-weighted average fill price; executed contracts still count when the rest of the order was cancelled.
Example — partner session token:
curl "https://api.hyperprop.com/platform/v1/user/trading/trades?since=2026-07-01T00:00:00Z" \
-H "Authorization: Bearer <partner-session-token>"
Example — partner app, with API key headers:
curl "https://api.hyperprop.com/platform/v1/user/trading/trades?since=2026-07-01T00:00:00Z" \
-H "X-Partner-App-Id: your-app-uuid" \
-H "X-Partner-App-Secret: your-app-secret" \
-H "X-Trader-Api-Key: hpk_the_traders_key" \
-H "X-Trader-Email: trader@example.com"
Partner access (read-only). Approved partner apps can read a trader’s journal on the trader’s behalf, in either of two ways:
- API key headers — send
X-Partner-App-Id,X-Partner-App-Secretand the trader’s key inX-Trader-Api-Key. Optionally addX-Trader-Email(must match the key’s owner) andX-Partner-Firm(limits results to one firm). - Partner session token — send the token from
POST /trade/partner/sessionasAuthorization: Bearer <token>. A token created for one firm only returns that firm’s accounts.
Without a firm, results cover the trader’s accounts at every firm. Partner access is read-only: it works on the journal endpoints only. A bad app secret, trader key or email returns 401; a firm where the trader has no accounts returns 403; repeated failures return 429.
Headers
Bearer <token>: the trader's own session, or a partner session token from POST /trade/partner/session
Partner access: your partner app id
Partner access: your partner app secret (server-side only)
Partner access: the trader's API key (hpk_...)
Partner access, optional: the trader's sign-in email; must match the key's owner
Partner access, optional: organization id, slug or name; limits results to the trader's accounts at that firm
Query Parameters
Restrict to one trading account (default: all of the user's accounts)
Only trades whose exit is at/after this time (for incremental refreshes)