pulse_biggest_trades
Get the biggest winning or losing trades on Hyperliquid for market sentiment and narrative analysis.
Instructions
Get the biggest winning or losing trades across all of Hyperliquid. Use type='wins' for the largest profitable trades, or type='losses' for the largest losses. Useful for market sentiment and narrative analysis.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| useToonFormat | No | Return data in compact toon format (default: true). Set to false for standard JSON. | |
| type | Yes | 'wins' for biggest profitable trades, 'losses' for biggest losing trades | |
| limit | No | Number of trades to return | |
| threshold | No | Minimum PnL for wins (e.g. 50000) or maximum PnL for losses (e.g. -50000) |
Implementation Reference
- src/index.ts:742-765 (registration)Registration of the 'pulse_biggest_trades' tool via server.registerTool(), with input schema, description, and the handler function.
// ══════════════════════════════════════════════════════════ if (shouldRegister("pulse_biggest_trades")) server.registerTool( "pulse_biggest_trades", { description: "Get the biggest winning or losing trades across all of Hyperliquid. Use type='wins' for the largest profitable trades, or type='losses' for the largest losses. Useful for market sentiment and narrative analysis.", inputSchema: { useToonFormat: useToonFormatSchema, type: z.enum(["wins", "losses"]).describe("'wins' for biggest profitable trades, 'losses' for biggest losing trades"), limit: z.number().min(1).max(50).default(20).describe("Number of trades to return"), threshold: z.number().optional().describe("Minimum PnL for wins (e.g. 50000) or maximum PnL for losses (e.g. -50000)"), }, }, async ({ useToonFormat, type, limit, threshold }) => { if (type === "wins") { const params: Record<string, string> = { limit: String(limit) }; if (threshold !== undefined) params.minPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-wins", params)); } else { const params: Record<string, string> = { limit: String(limit) }; if (threshold !== undefined) params.maxPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-losses", params)); } } ); - src/index.ts:754-764 (handler)Handler function for pulse_biggest_trades. Accepts type ('wins'|'losses'), limit, and optional threshold. Delegates to callAPI with '/pulse/biggest-wins' or '/pulse/biggest-losses' endpoints.
async ({ useToonFormat, type, limit, threshold }) => { if (type === "wins") { const params: Record<string, string> = { limit: String(limit) }; if (threshold !== undefined) params.minPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-wins", params)); } else { const params: Record<string, string> = { limit: String(limit) }; if (threshold !== undefined) params.maxPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-losses", params)); } } - src/index.ts:743-753 (schema)Input schema for pulse_biggest_trades: useToonFormat (boolean), type (enum 'wins'|'losses'), limit (1-50, default 20), threshold (optional number for min/max PnL filter).
if (shouldRegister("pulse_biggest_trades")) server.registerTool( "pulse_biggest_trades", { description: "Get the biggest winning or losing trades across all of Hyperliquid. Use type='wins' for the largest profitable trades, or type='losses' for the largest losses. Useful for market sentiment and narrative analysis.", inputSchema: { useToonFormat: useToonFormatSchema, type: z.enum(["wins", "losses"]).describe("'wins' for biggest profitable trades, 'losses' for biggest losing trades"), limit: z.number().min(1).max(50).default(20).describe("Number of trades to return"), threshold: z.number().optional().describe("Minimum PnL for wins (e.g. 50000) or maximum PnL for losses (e.g. -50000)"), }, }, - build/index.js:533-555 (registration)Build version: registration and handler of pulse_biggest_trades. Same logic but in compiled JS.
if (shouldRegister("pulse_biggest_trades")) server.registerTool("pulse_biggest_trades", { description: "Get the biggest winning or losing trades across all of Hyperliquid. Use type='wins' for the largest profitable trades, or type='losses' for the largest losses. Useful for market sentiment and narrative analysis.", inputSchema: { useToonFormat: useToonFormatSchema, type: z.enum(["wins", "losses"]).describe("'wins' for biggest profitable trades, 'losses' for biggest losing trades"), limit: z.number().min(1).max(50).default(20).describe("Number of trades to return"), threshold: z.number().optional().describe("Minimum PnL for wins (e.g. 50000) or maximum PnL for losses (e.g. -50000)"), }, }, async ({ useToonFormat, type, limit, threshold }) => { if (type === "wins") { const params = { limit: String(limit) }; if (threshold !== undefined) params.minPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-wins", params)); } else { const params = { limit: String(limit) }; if (threshold !== undefined) params.maxPnl = String(threshold); return toolResult(await callAPI(useToonFormat, "/pulse/biggest-losses", params)); } });