vike

Recipe 13 of 65

Rank Hyperliquid traders by Calmar or profit factor with a real sample

Sort /leaderboard by calmar or profit_factor with min_trades=50, inside one account-size tier, so emptied accounts and one-trade wallets cannot take the top.

GET /v1/hyperliquid/leaderboard answers it in one call: sort=calmar with min_trades=50 ranks by return over maximum drawdown among wallets with at least 50 closed trades. Add axis=size&cohort=whale to rank only accounts holding $1M to $2.5M today: without a size tier, accounts that withdrew nearly everything sit on top with ratios in the billions. sort=profit_factor, recovery_factor and expectancy work the same way. The full parameter list is on Leaderboard.

Quick answer

Sort by Calmar inside one account-size tier, with a trade floor.

cURL
# best Calmar ratio over 365 days among $1M-$2.5M accounts with 50+ closed trades
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=all&sort=calmar&min_trades=50&axis=size&cohort=whale&limit=5"

Example response

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

105 wallets in the tier pass the floor. calmar_ratio is roi (realized PnL as a percent of current equity) divided by max_drawdown_pct: 835.75 / 100 gives the leader's 8.36. The third row is the steadier record here: 39,910 trades, a 32% worst drawdown and a profit factor of 1.93.

Example response
{
  "traders": [
    {
      "wallet": "0x880ac484a1743862989a441d6d867238c7aa311c",
      "rank": 1,
      "account_value": 2012493.207814,
      "total_realized_pnl": 16819433.444210347,
      "cum_realized_pnl": 29103046.801821385,
      "roi": 835.7510663342742,
      "pnl_pct": 835.7510663342741,
      "total_volume": 728783685.4140779,
      "total_fee": 37853.3743395701,
      "trade_count": 330,
      "win_count": 193,
      "loss_count": 137,
      "win_rate": 0.5848484635353088,
      "long_win_rate": 0.5454545617103577,
      "short_win_rate": 0.614973247051239,
      "long_pnl": 6570830.8160932,
      "short_pnl": 10248602.62811715,
      "profit_factor": 7.651381492614746,
      "expectancy": 50967.98013397075,
      "max_drawdown_pct": 100.0,
      "current_drawdown_pct": 41.70000076293945,
      "calmar_ratio": 8.357510566711426,
      "recovery_factor": 8.357510566711426,
      "max_win_streak": 14,
      "max_loss_streak": 6,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 638948,
      "size_cohort": "whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "drawdown_recovery",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0x051c2e6d49cf82ebc47f08f9b85800f94fc9693c",
      "rank": 2,
      "account_value": 1199052.952251,
      "total_realized_pnl": 7222938.0124115,
      "cum_realized_pnl": 11081083.223883454,
      "roi": 602.3869086725294,
      "pnl_pct": 602.3869086725294,
      "total_volume": 204883313.22013554,
      "total_fee": 50565.68956691,
      "trade_count": 258,
      "win_count": 135,
      "loss_count": 123,
      "win_rate": 0.5232558250427246,
      "long_win_rate": 0.5202311873435974,
      "short_win_rate": 0.529411792755127,
      "long_pnl": 7182519.417260498,
      "short_pnl": 40418.59515100006,
      "profit_factor": 4.9759626388549805,
      "expectancy": 27995.883769036824,
      "max_drawdown_pct": 80.69999694824219,
      "current_drawdown_pct": 75.0999984741211,
      "calmar_ratio": 7.464521884918213,
      "recovery_factor": 7.464521884918213,
      "max_win_streak": 7,
      "max_loss_streak": 10,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 833948,
      "size_cohort": "whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "drawdown_recovery",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0xe2990ce029db870c805e90a1a8a1d8a1c52255d6",
      "rank": 3,
      "account_value": 1100404.99786,
      "total_realized_pnl": 2338276.588201993,
      "cum_realized_pnl": 2365118.620989005,
      "roi": 212.49236351609903,
      "pnl_pct": 212.49236351609903,
      "total_volume": 9231736337.076067,
      "total_fee": -201486.785766,
      "trade_count": 39910,
      "win_count": 27423,
      "loss_count": 12487,
      "win_rate": 0.6871210336685181,
      "long_win_rate": 0.6893287301063538,
      "short_win_rate": 0.6846898794174194,
      "long_pnl": 1640678.6209119996,
      "short_pnl": 697597.9672899928,
      "profit_factor": 1.9299627542495728,
      "expectancy": 58.58873936862924,
      "max_drawdown_pct": 32.20000076293945,
      "current_drawdown_pct": 7.5,
      "calmar_ratio": 6.599141597747803,
      "recovery_factor": 6.599141597747803,
      "max_win_streak": 32,
      "max_loss_streak": 10,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 4033,
      "size_cohort": "whale",
      "pnl_cohort": "3x smart",
      "pnl_cohort_tag": "consistent_winner",
      "style_cohort_tag": "streak_trader"
    }
  ],
  "totalCount": 105,
  "nextCursor": "eyJrIjoiYWxsfGNhbG1hcnxkZXNjfHNpemV8d2hhbGUiLCJyIjo1LCJ2Ijo0LjU0NjcyNTI3MzEzMjMyNCwidyI6IjB4ZTA5NzI2ZmYyNWY1MDAxZjM3YjE1MDQ5ZjU0MTE2Y2I4M2Q3ZDBmZSJ9"
}

Variations

Profit factor in the same tier. Swap the sort key.

cURL — profit_factor
# highest profit factor among $1M-$2.5M accounts with 50+ closed trades
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=all&sort=profit_factor&min_trades=50&axis=size&cohort=whale&limit=25"

Another size tier. Tiers by account value: 4x_whale ($10M+), 3x_whale, 2x_whale, whale, 2x_shark, shark and smaller; Cohort ladders lists them all.

cURL — accounts over $10M
# best Calmar among accounts over $10M with 50+ closed trades
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=all&sort=calmar&min_trades=50&axis=size&cohort=4x_whale&limit=25"

Without a tier. The literal board. In a capture from the same day all five leaders had $0.000001 to $0.000017 of equity and Calmar ratios from 1.9 billion to 221 billion.

cURL — no tier
# the unfiltered Calmar board, led by near-empty accounts
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=all&sort=calmar&min_trades=50&limit=5"

Before you rely on it

Both ratios have artifacts at the top

Calmar divides by current equity, so a wallet that withdrew after its gains scores enormous; a size tier is the server-side fix. profit_factor is 999 when no losing trade closed in the window, and a single tiny loss gives values like 5.6e16, so look past the first rows of a profit_factor board. window=all is the last 365 days, not lifetime, and max_drawdown_pct is of account value, which deposits and withdrawals move as well as trading.

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, axis: size and a cohort, at 1 credit a call.

Ask your agent
Rank Hyperliquid whale accounts with at least 50 trades by Calmar ratio
Example response
{  "traders": [    {      "wallet": "0x880ac484a1743862989a441d6d867238c7aa311c",      "rank": 1,      "account_value": 2012493.207814,      "total_realized_pnl": 16819433.444210347,      "cum_realized_pnl": 29103046.801821385,      "roi": 835.7510663342742,      "pnl_pct": 835.7510663342741,      "total_volume": 728783685.4140779,      "total_fee": 37853.3743395701,      "trade_count": 330,      "win_count": 193,      "loss_count": 137,      "win_rate": 0.5848484635353088,      "long_win_rate": 0.5454545617103577,      "short_win_rate": 0.614973247051239,      "long_pnl": 6570830.8160932,      "short_pnl": 10248602.62811715,      "profit_factor": 7.651381492614746,      "expectancy": 50967.98013397075,      "max_drawdown_pct": 100.0,      "current_drawdown_pct": 41.70000076293945,      "calmar_ratio": 8.357510566711426,      "recovery_factor": 8.357510566711426,      "max_win_streak": 14,      "max_loss_streak": 6,      "avg_leverage": 0.0,      "avg_duration_seconds": 638948,      "size_cohort": "whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "drawdown_recovery",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0x051c2e6d49cf82ebc47f08f9b85800f94fc9693c",      "rank": 2,      "account_value": 1199052.952251,      "total_realized_pnl": 7222938.0124115,      "cum_realized_pnl": 11081083.223883454,      "roi": 602.3869086725294,      "pnl_pct": 602.3869086725294,      "total_volume": 204883313.22013554,      "total_fee": 50565.68956691,      "trade_count": 258,      "win_count": 135,      "loss_count": 123,      "win_rate": 0.5232558250427246,      "long_win_rate": 0.5202311873435974,      "short_win_rate": 0.529411792755127,      "long_pnl": 7182519.417260498,      "short_pnl": 40418.59515100006,      "profit_factor": 4.9759626388549805,      "expectancy": 27995.883769036824,      "max_drawdown_pct": 80.69999694824219,      "current_drawdown_pct": 75.0999984741211,      "calmar_ratio": 7.464521884918213,      "recovery_factor": 7.464521884918213,      "max_win_streak": 7,      "max_loss_streak": 10,      "avg_leverage": 0.0,      "avg_duration_seconds": 833948,      "size_cohort": "whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "drawdown_recovery",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0xe2990ce029db870c805e90a1a8a1d8a1c52255d6",      "rank": 3,      "account_value": 1100404.99786,      "total_realized_pnl": 2338276.588201993,      "cum_realized_pnl": 2365118.620989005,      "roi": 212.49236351609903,      "pnl_pct": 212.49236351609903,      "total_volume": 9231736337.076067,      "total_fee": -201486.785766,      "trade_count": 39910,      "win_count": 27423,      "loss_count": 12487,      "win_rate": 0.6871210336685181,      "long_win_rate": 0.6893287301063538,      "short_win_rate": 0.6846898794174194,      "long_pnl": 1640678.6209119996,      "short_pnl": 697597.9672899928,      "profit_factor": 1.9299627542495728,      "expectancy": 58.58873936862924,      "max_drawdown_pct": 32.20000076293945,      "current_drawdown_pct": 7.5,      "calmar_ratio": 6.599141597747803,      "recovery_factor": 6.599141597747803,      "max_win_streak": 32,      "max_loss_streak": 10,      "avg_leverage": 0.0,      "avg_duration_seconds": 4033,      "size_cohort": "whale",      "pnl_cohort": "3x smart",      "pnl_cohort_tag": "consistent_winner",      "style_cohort_tag": "streak_trader"    }  ],  "totalCount": 105,  "nextCursor": "eyJrIjoiYWxsfGNhbG1hcnxkZXNjfHNpemV8d2hhbGUiLCJyIjo1LCJ2Ijo0LjU0NjcyNTI3MzEzMjMyNCwidyI6IjB4ZTA5NzI2ZmYyNWY1MDAxZjM3YjE1MDQ5ZjU0MTE2Y2I4M2Q3ZDBmZSJ9"}