userCompletedTrades | Hyperliquid Info API
Info API
userCompletedTrades | Hyperliquid Info API
Hyperliquid userCompletedTrades: fetch a wallet’s most recent fully-closed round-trip trades, newest-first, each with realized PnL, funding, fees, and volume-weighted entry/exit prices.
POST
userCompletedTrades | Hyperliquid Info API
Credit Cost
10 per call
Processing
Realtime
type: "userCompletedTrades" is used to fetch a wallet’s most recent fully-closed round-trip trades, newest-first, each with realized PnL, funding, fees, and volume-weighted entry/exit prices.
- GoldRush custom analytics product. Not available on the public Hyperliquid node - there is no
POST api.hyperliquid.xyz/infoequivalent. Served only fromPOST hypercore.goldrushdata.com/info. - Each record is one fully-closed round-trip position (opened, then brought fully flat), reconstructed from the wallet’s fills. Positions that are still open are not included.
- Returns up to
limitrecords, newest-first (default100, max500). - For a
close_timewindow with forward paging, useuserCompletedTradesByTime. For one aggregate roll-up across all a wallet’s trades, useuserPnlSummary.
limit fully-closed round-trip trades for a wallet, ordered newest-first by close time. Each row rolls up every fill that opened and then fully closed a position on one coin into a single record - realized gross and net PnL, the funding component, volume-weighted entry and exit prices, fees, fill counts, and the open/close timestamps. Use this when you want a wallet’s recent trading outcomes without stepping through raw fills.
User-keyed. GoldRush-native, so there is no upstream Hyperliquid /info equivalent.
Endpoint
Request
string
required
Always
"userCompletedTrades".string
required
The wallet address (lowercase 0x-prefixed hex).
string
Optional filter. When set, returns only trades whose closing fill was routed through this builder address (
0x-prefixed 42-character hex).string
Optional perp-DEX scope.
main_dex for the canonical Hyperliquid perp DEX, or a HIP-3 DEX identifier. Omit to include trades across every DEX.int
Maximum number of records to return. Default
100, maximum 500. Values above the maximum are clamped.Example
Response
An array of completed-trade objects, newest-first byclose_time.
Field descriptions
The PnL, price, size, and fee fields (
gross_pnl, net_pnl, funding_pnl, entry_px, exit_px, position_closed_size, fees, max_position_size) are returned as decimal strings, preserving full precision. Counts (fills, maker_fills) and timestamps (open_time, close_time, duration_ms) are JSON numbers. Do not parse the decimal strings as floats - keep them as strings or use a fixed-precision decimal type.string
The wallet address the trades belong to (lowercase 0x-prefixed hex), echoing the request.
string
Asset symbol - e.g.
"BTC", "ETH" for perps; HIP-3 markets use the dex:SYM form (e.g. "xyz:GOLD").string
Direction of the round-trip position -
"Long" or "Short".string
Realized trading PnL for the round-trip in USDC, before fees and funding.
string
Net realized PnL in USDC -
gross_pnl minus fees plus funding_pnl.string
Funding component of the round-trip in USDC (negative = paid, positive = received).
string
Volume-weighted average entry price across the opening fills (carried at 10 decimal places, then trimmed of trailing zeros).
string
Volume-weighted average exit price across the closing fills (carried at 10 decimal places, then trimmed of trailing zeros).
string
Peak absolute position size reached during the round-trip - the same value as
max_position_size.string
Total trading fees paid across all fills in the round-trip, in USDC.
int
Total number of fills that make up the round-trip (opening and closing).
int
Unix timestamp in milliseconds of the first opening fill.
int
Unix timestamp in milliseconds of the closing fill that brought the position flat.
int
Round-trip duration in milliseconds -
close_time minus open_time.string
Peak absolute position size reached during the round-trip.
int
Number of fills in the round-trip that were on the maker side.
string | null
Builder address routed through by the closing fill (
0x-prefixed hex), or null when the closing fill carried no builder code.Related endpoints
userCompletedTradesByTime
fetch a wallet’s fully-closed round-trip trades within a time window, oldest-first with a keyset cursor for forward paging.
userPnlSummary
fetch one aggregate PnL summary for a wallet - realized PnL, win/loss rate, volume, fees, funding, and traded pairs.
userFills
fetch a user’s most recent trade fills without specifying a time window.
userFunding
fetch a user’s per-coin funding payment history within a time window for funding-only P&L attribution.