vike

Recipe 9 of 65

Find high win-rate Hyperliquid traders with at least 30 closed trades

Call /leaderboard with min_trades=30 and min_win_rate=0.6 (a fraction), sorted by PnL, to list wallets that won at least 60% of 30 or more trades closed in the window.

GET /v1/hyperliquid/leaderboard answers it in one call: min_trades=30 and min_win_rate=0.6 keep the wallets with at least 30 trades closed in the window and a win rate of 60% or more. Sorting the survivors by pnl puts the ones that also made the most money first; sorting by win_rate gives a wall of 100% ties instead. The full parameter list is on Leaderboard.

Quick answer

Set both floors and sort by PnL.

cURL
# wallets with 30+ closed trades and a 60%+ win rate over 30 days, biggest PnL first
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&min_trades=30&min_win_rate=0.6&sort=pnl&limit=5"

Example response

Captured from the live API on 2026-10-24 at 17:22 UTC, trimmed to 3 of 5 rows.

13,390 wallets pass the two filters. win_rate is a fraction (0.611 is 61.1%), counted over the trades closed in the window, and trade_count is that number of trades. The first wallet wins 61% of 3,234 trades for $5.57M; the second wins 67% of only 46 trades but with a profit factor of 10.5.

Example response
{
  "traders": [
    {
      "wallet": "0xecb63caa47c7c4e77f60f1ce858cf28dc2b82b00",
      "rank": 1,
      "account_value": 33067379.692377,
      "total_realized_pnl": 5567982.361969139,
      "cum_realized_pnl": 19680262.553564098,
      "roi": 16.838293247809784,
      "pnl_pct": 16.838293247809784,
      "total_volume": 9462552357.735611,
      "total_fee": -84653.02627408998,
      "trade_count": 3234,
      "win_count": 1976,
      "loss_count": 1258,
      "win_rate": 0.6110080480575562,
      "long_win_rate": 0.6136080026626587,
      "short_win_rate": 0.6084558963775635,
      "long_pnl": 7855474.846183539,
      "short_pnl": -2287492.484214401,
      "profit_factor": 1.6827245950698853,
      "expectancy": 1721.7014106274396,
      "max_drawdown_pct": 48.599998474121094,
      "current_drawdown_pct": 45.599998474121094,
      "calmar_ratio": 0.34646692872047424,
      "recovery_factor": 0.34646692872047424,
      "max_win_streak": 22,
      "max_loss_streak": 11,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 92101,
      "size_cohort": "4x whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "consistent_winner",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0x58b27998b4ff896949d5f57466b259e50ee211f3",
      "rank": 2,
      "account_value": 1675724.100283,
      "total_realized_pnl": 2806590.700221001,
      "cum_realized_pnl": 3199946.620584999,
      "roi": 167.48525009260285,
      "pnl_pct": 167.48525009260283,
      "total_volume": 429257228.63025,
      "total_fee": 93601.925023,
      "trade_count": 46,
      "win_count": 31,
      "loss_count": 15,
      "win_rate": 0.6739130616188049,
      "long_win_rate": 0.5789473652839661,
      "short_win_rate": 0.7407407164573669,
      "long_pnl": 1296031.2249120001,
      "short_pnl": 1510559.4753090015,
      "profit_factor": 10.452153205871582,
      "expectancy": 61012.8413091522,
      "max_drawdown_pct": 65.0,
      "current_drawdown_pct": 26.5,
      "calmar_ratio": 2.5766961574554443,
      "recovery_factor": 2.5766961574554443,
      "max_win_streak": 8,
      "max_loss_streak": 3,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 231719,
      "size_cohort": "whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "consistent_winner",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0x71d0e11ebb6150cebe20cf62f798be1a50108c26",
      "rank": 3,
      "account_value": 9194978.373452,
      "total_realized_pnl": 2302443.4488457143,
      "cum_realized_pnl": 3475830.6563184457,
      "roi": 25.040226907910885,
      "pnl_pct": 25.040226907910885,
      "total_volume": 2922966557.301638,
      "total_fee": 40987.1221534395,
      "trade_count": 3035,
      "win_count": 2136,
      "loss_count": 899,
      "win_rate": 0.7037891149520874,
      "long_win_rate": 0.670634925365448,
      "short_win_rate": 0.7367038726806641,
      "long_pnl": 453311.48798302293,
      "short_pnl": 1849131.9608626913,
      "profit_factor": 1.3840434551239014,
      "expectancy": 758.6304609046834,
      "max_drawdown_pct": 29.0,
      "current_drawdown_pct": 27.299999237060547,
      "calmar_ratio": 0.863456130027771,
      "recovery_factor": 0.863456130027771,
      "max_win_streak": 26,
      "max_loss_streak": 8,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 99423,
      "size_cohort": "3x whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "sharp_shooter",
      "style_cohort_tag": "streak_trader"
    }
  ],
  "totalCount": 13390,
  "nextCursor": "eyJrIjoiMzBkfHBubHxkZXNjfHNpemV8IiwiciI6NSwidiI6MjEwMjcwMS43NDExMDEsInciOiIweGQ0YzFmN2U4ZDg3NmM0NzQ5MjI4ZDUxNTQ3M2QzNmY5MTk1ODNkMWQifQ"
}

Variations

Sorted by win rate. The literal ranking. The top is a run of 100% win rates, tied and then ordered by wallet address.

cURL — sort=win_rate
# the same filter ranked by win rate
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&min_trades=30&min_win_rate=0.6&sort=win_rate&limit=5"

A size floor as well. min_volume drops small accounts. The five 100% rows of the win-rate ranking each had under $600,000 of volume.

cURL — with min_volume
# 60%+ win rate, 30+ trades and at least $10M of volume over 30 days
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&min_trades=30&min_win_rate=0.6&min_volume=10000000&sort=win_rate&limit=25"

The same question on /traders. /traders takes min_win_rate in percent and returns at most 20 rows with no cursor.

cURL — /traders
# the /traders form: 60 means 60% here
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/traders?window=30d&sort=win_rate&min_trades=30&min_win_rate=60&size=20"

Before you rely on it

0.6 here, 60 on /traders, and open losers are not counted

On /leaderboard, min_win_rate=60 keeps nobody, because the field is a fraction; on /traders it is a percent. The win rate counts only closed trades, so a wallet that closes its winners and holds its losers open scores 100%: in a capture of sort=win_rate the 100% rows carried drawdowns of up to 99%. Read max_drawdown_pct and profit_factor beside it; a profit_factor of 999 means no losing trade closed in the window.

Ask your agent

Connected to the Vike MCP server (https://vike.io/mcp) in Claude, ChatGPT or Cursor, ask it in plain words. The hl_leaderboard tool answers with view: ranking, at 1 credit a call.

Ask your agent
Which Hyperliquid traders won at least 60% of 30 or more trades in the last 30 days?
Example response
{  "traders": [    {      "wallet": "0xecb63caa47c7c4e77f60f1ce858cf28dc2b82b00",      "rank": 1,      "account_value": 33067379.692377,      "total_realized_pnl": 5567982.361969139,      "cum_realized_pnl": 19680262.553564098,      "roi": 16.838293247809784,      "pnl_pct": 16.838293247809784,      "total_volume": 9462552357.735611,      "total_fee": -84653.02627408998,      "trade_count": 3234,      "win_count": 1976,      "loss_count": 1258,      "win_rate": 0.6110080480575562,      "long_win_rate": 0.6136080026626587,      "short_win_rate": 0.6084558963775635,      "long_pnl": 7855474.846183539,      "short_pnl": -2287492.484214401,      "profit_factor": 1.6827245950698853,      "expectancy": 1721.7014106274396,      "max_drawdown_pct": 48.599998474121094,      "current_drawdown_pct": 45.599998474121094,      "calmar_ratio": 0.34646692872047424,      "recovery_factor": 0.34646692872047424,      "max_win_streak": 22,      "max_loss_streak": 11,      "avg_leverage": 0.0,      "avg_duration_seconds": 92101,      "size_cohort": "4x whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "consistent_winner",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0x58b27998b4ff896949d5f57466b259e50ee211f3",      "rank": 2,      "account_value": 1675724.100283,      "total_realized_pnl": 2806590.700221001,      "cum_realized_pnl": 3199946.620584999,      "roi": 167.48525009260285,      "pnl_pct": 167.48525009260283,      "total_volume": 429257228.63025,      "total_fee": 93601.925023,      "trade_count": 46,      "win_count": 31,      "loss_count": 15,      "win_rate": 0.6739130616188049,      "long_win_rate": 0.5789473652839661,      "short_win_rate": 0.7407407164573669,      "long_pnl": 1296031.2249120001,      "short_pnl": 1510559.4753090015,      "profit_factor": 10.452153205871582,      "expectancy": 61012.8413091522,      "max_drawdown_pct": 65.0,      "current_drawdown_pct": 26.5,      "calmar_ratio": 2.5766961574554443,      "recovery_factor": 2.5766961574554443,      "max_win_streak": 8,      "max_loss_streak": 3,      "avg_leverage": 0.0,      "avg_duration_seconds": 231719,      "size_cohort": "whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "consistent_winner",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0x71d0e11ebb6150cebe20cf62f798be1a50108c26",      "rank": 3,      "account_value": 9194978.373452,      "total_realized_pnl": 2302443.4488457143,      "cum_realized_pnl": 3475830.6563184457,      "roi": 25.040226907910885,      "pnl_pct": 25.040226907910885,      "total_volume": 2922966557.301638,      "total_fee": 40987.1221534395,      "trade_count": 3035,      "win_count": 2136,      "loss_count": 899,      "win_rate": 0.7037891149520874,      "long_win_rate": 0.670634925365448,      "short_win_rate": 0.7367038726806641,      "long_pnl": 453311.48798302293,      "short_pnl": 1849131.9608626913,      "profit_factor": 1.3840434551239014,      "expectancy": 758.6304609046834,      "max_drawdown_pct": 29.0,      "current_drawdown_pct": 27.299999237060547,      "calmar_ratio": 0.863456130027771,      "recovery_factor": 0.863456130027771,      "max_win_streak": 26,      "max_loss_streak": 8,      "avg_leverage": 0.0,      "avg_duration_seconds": 99423,      "size_cohort": "3x whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "sharp_shooter",      "style_cohort_tag": "streak_trader"    }  ],  "totalCount": 13390,  "nextCursor": "eyJrIjoiMzBkfHBubHxkZXNjfHNpemV8IiwiciI6NSwidiI6MjEwMjcwMS43NDExMDEsInciOiIweGQ0YzFmN2U4ZDg3NmM0NzQ5MjI4ZDUxNTQ3M2QzNmY5MTk1ODNkMWQifQ"}