Skip to content
Eden Engine

Hyperliquid Closed Round-Trip Trades for a Wallet (Up to 20, with Realized PnL)

omnial/hyperliquid-wallet-closed-trades

For one wallet address and a date window, returns up to 20 of its closed Hyperliquid positions, one row per open-to-close round trip: symbol, long or short, open and close time, size, entry and exit price, notional value, gross and net realized PnL, fees, hold time and whether the trade was a win. Net PnL is gross PnL minus fees. Funding payments are not returned. The capture returned 20 rows, newest first.

activeper callv1

Price

Up to $0.0328 per call; you pay what the call used

The price shown is the price you pay. No monthly minimum. Top-ups start at $5.

Data source

Hyperliquid

Data from Hyperliquid.

Use it

Five steps: search, inspect, learn, run, settle. No per-tool setup; your agent reaches this tool through the meta-tools it already has.

agent
// 1. search: find the tool
omnial_search({ query: "what you need" })

// 2. inspect: price and input schema
omnial_inspect({ tool: "omnial/hyperliquid-wallet-closed-trades" })

// 3. learn: read the usage guide at runtime
omnial_learn({ tool: "omnial/hyperliquid-wallet-closed-trades" })

// 4. run: price the exact call first, then run it
omnial_execute({ tool: "omnial/hyperliquid-wallet-closed-trades", input: { /* see input_schema */ }, dry_run: true })
omnial_execute({ tool: "omnial/hyperliquid-wallet-closed-trades", input: { /* ... */ } })

// 5. settle: the call is charged when it finishes, nothing to do

Not connected yet? Point your MCP client at https://mcp.eden-engine.com/mcp, then copy a config for your client.

Pricing

Every charge this tool can incur.

ChargePrice
Per call
$0.0328
Updated
Oct 14, 2026

Input and output schemas

Input schema
input_schema.json
{
  "type": "object",
  "required": [
    "address",
    "from",
    "to"
  ],
  "properties": {
    "to": {
      "type": "string",
      "minLength": 1,
      "description": "End of the window, inclusive: Unix seconds, an ISO datetime, or a bare date (the end of that UTC day)."
    },
    "from": {
      "type": "string",
      "minLength": 1,
      "description": "Start of the window: Unix seconds, an ISO datetime, or a bare date (midnight UTC)."
    },
    "limit": {
      "enum": [
        20
      ],
      "type": "integer",
      "default": 20,
      "description": "How many trades to return at most; only 20, the one tested, is offered."
    },
    "address": {
      "type": "string",
      "minLength": 1,
      "description": "The wallet: a 0x EVM address or an ENS name."
    }
  },
  "additionalProperties": false
}
Output schema
output_schema.json
{
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "fees": {
            "type": "number",
            "description": "Trading fees, US dollars; negative means a net rebate."
          },
          "is_win": {
            "type": "boolean",
            "description": "Whether net PnL was positive."
          },
          "symbol": {
            "type": "string",
            "description": "The traded asset."
          },
          "exit_px": {
            "type": "number",
            "description": "Average exit price."
          },
          "net_pnl": {
            "type": "number",
            "description": "Gross PnL minus fees, US dollars."
          },
          "entry_px": {
            "type": "number",
            "description": "Average entry price."
          },
          "direction": {
            "type": "string",
            "description": "long or short."
          },
          "gross_pnl": {
            "type": "number",
            "description": "Realized PnL before fees, US dollars."
          },
          "open_time": {
            "type": "number",
            "description": "When the position opened, Unix seconds."
          },
          "opened_sz": {
            "type": "number",
            "description": "Position size, in units of the asset."
          },
          "close_time": {
            "type": "number",
            "description": "When the position closed, Unix seconds."
          },
          "episode_id": {
            "type": "string",
            "description": "Identifier of this round trip."
          },
          "hold_seconds": {
            "type": "number",
            "description": "How long it was held, in seconds."
          },
          "notional_usd": {
            "type": "number",
            "description": "Position value in US dollars."
          }
        }
      },
      "description": "One row per closed round-trip position."
    }
  },
  "description": "Closed positions of the wallet in the window."
}