vike

Recipe 14 of 65

What do Hyperliquid's worst-performing wallets do differently: leverage, hold time, losing streaks?

Filter /leaderboard to the 3x rekt cohort (bottom 5% by lifetime realized PnL) for hold time and losing streaks, compare it with 3x smart, and read leverage from their open positions, because the leaderboard's avg_leverage is always 0.

GET /v1/hyperliquid/leaderboard answers it with axis=pnl&cohort=3x_rekt, which keeps only wallets in the bottom 5% by lifetime realized PnL. Each row carries avg_duration_seconds, max_loss_streak, win_rate and profit_factor for the window, so you can sort the cohort by any of them and run the same call for 3x_smart to compare. Leverage comes from a second route: GET /v1/hyperliquid/positions with the same cohort filter returns their open positions with the leverage each one uses. The full parameter lists are on Leaderboard and Positions.

Quick answer

Filter to the bottom cohort and sort by losing streak.

cURL
# the bottom-5% cohort's longest losing streaks over 30 days, wallets with 30+ closed trades
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&axis=pnl&cohort=3x_rekt&sort=loss_streak&min_trades=30&limit=5"

Example response

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

2,600 wallets of the bottom cohort closed 30 or more trades in the window. The longest losing runs are 559, 200 and 137 trades in a row, and the first two lose more than 90% of their trades. avg_duration_seconds is the average hold of a closed trade: about 2.6 hours for the first wallet.

Example response
{
  "traders": [
    {
      "wallet": "0x06b79146f1e54ef4e1ab9b1fe2cc4b4576cc33f1",
      "rank": 1,
      "account_value": 0.0,
      "total_realized_pnl": -2208.9519989999953,
      "cum_realized_pnl": -4874.01778704,
      "roi": 0.0,
      "pnl_pct": null,
      "total_volume": 24888907.67107001,
      "total_fee": 13746.548393789992,
      "trade_count": 20414,
      "win_count": 1357,
      "loss_count": 19057,
      "win_rate": 0.06647399067878723,
      "long_win_rate": 0.06647399067878723,
      "short_win_rate": 0.0,
      "long_pnl": -2208.9519989999953,
      "short_pnl": 0.0,
      "profit_factor": 0.9604790806770325,
      "expectancy": -0.10820770054864286,
      "max_drawdown_pct": null,
      "current_drawdown_pct": null,
      "calmar_ratio": null,
      "recovery_factor": null,
      "max_win_streak": 5,
      "max_loss_streak": 559,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 9367,
      "size_cohort": "shrimp",
      "pnl_cohort": "3x rekt",
      "pnl_cohort_tag": "fee_burner",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0x64bac0fc115ef0bb3e49eacafe89a8404dbb4c8a",
      "rank": 2,
      "account_value": 545.488666,
      "total_realized_pnl": -1115.1816338899998,
      "cum_realized_pnl": -4835.345811010009,
      "roi": -204.43717778180198,
      "pnl_pct": -204.43717778180195,
      "total_volume": 1062418.749503,
      "total_fee": 143.09047246999995,
      "trade_count": 541,
      "win_count": 49,
      "loss_count": 492,
      "win_rate": 0.0905730128288269,
      "long_win_rate": 0.0515873022377491,
      "short_win_rate": 0.6216216087341309,
      "long_pnl": -2251.0860638899994,
      "short_pnl": 1135.9044299999998,
      "profit_factor": 0.6833305954933167,
      "expectancy": -2.0613338888909425,
      "max_drawdown_pct": 97.0999984741211,
      "current_drawdown_pct": 58.599998474121094,
      "calmar_ratio": -2.105429172515869,
      "recovery_factor": -2.105429172515869,
      "max_win_streak": 4,
      "max_loss_streak": 200,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 15010,
      "size_cohort": "shrimp",
      "pnl_cohort": "3x rekt",
      "pnl_cohort_tag": "high_risk",
      "style_cohort_tag": "streak_trader"
    },
    {
      "wallet": "0x417e99d72cfef3a31d9a525c41236912752f2c1e",
      "rank": 3,
      "account_value": 330683.819553,
      "total_realized_pnl": -41411.133999,
      "cum_realized_pnl": -69525.6181210001,
      "roi": -12.522878819706772,
      "pnl_pct": -12.522878819706772,
      "total_volume": 17350190.755922,
      "total_fee": 2457.618924,
      "trade_count": 1015,
      "win_count": 504,
      "loss_count": 511,
      "win_rate": 0.4965517222881317,
      "long_win_rate": 0.49301397800445557,
      "short_win_rate": 0.5,
      "long_pnl": 12431.393254999999,
      "short_pnl": -53842.52725400001,
      "profit_factor": 0.7029821872711182,
      "expectancy": -40.79914679704433,
      "max_drawdown_pct": 38.0,
      "current_drawdown_pct": 38.0,
      "calmar_ratio": -0.3295494318008423,
      "recovery_factor": -0.3295494318008423,
      "max_win_streak": 10,
      "max_loss_streak": 137,
      "avg_leverage": 0.0,
      "avg_duration_seconds": 491352,
      "size_cohort": "shark",
      "pnl_cohort": "3x rekt",
      "pnl_cohort_tag": null,
      "style_cohort_tag": "streak_trader"
    }
  ],
  "totalCount": 2600,
  "nextCursor": "eyJrIjoiMzBkfGxvc3Nfc3RyZWFrfGRlc2N8cG5sfDN4IHJla3QiLCJyIjo1LCJ2IjoxMjMuMCwidyI6IjB4NGE4YTY4YjJlYzdjNjdjYmI3OTA2MGQ5ODE1N2I2OGM0N2ViYTBlNiJ9"
}

Variations

The same view for the top cohort. Swap the cohort for 3x_smart.

cURL — 3x smart
# the top-1% cohort's longest losing streaks, same window and floor
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&axis=pnl&cohort=3x_smart&sort=loss_streak&min_trades=30&limit=5"

Cohort medians from one page. Pull up to 500 rows of a cohort and take medians on your side. Run it again with cohort=3x_smart and compare.

cURL — medians
# median hold time, losing streak and win rate over one 500-row page of the bottom cohort
curl -s -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/leaderboard?window=30d&axis=pnl&cohort=3x_rekt&min_trades=30&limit=500" \
  | jq '.traders | {n: length, median_hold_s: (map(.avg_duration_seconds) | sort | .[length/2|floor]), median_loss_streak: (map(.max_loss_streak) | sort | .[length/2|floor]), median_win_rate: (map(.win_rate) | sort | .[length/2|floor])}'

Leverage on their open positions. The biggest open BTC positions held by the bottom cohort, each with its leverage and liq_progress.

cURL — open positions
# the bottom cohort's 25 biggest open BTC positions
curl -H "X-API-Key: $VIKE_API_KEY" \
  "https://data.vike.io/v1/hyperliquid/positions?symbol=BTC&axis=pnl&cohort=3x_rekt&sort=size&limit=25"

Before you rely on it

avg_leverage is always 0, and the cohort is today's

The leaderboard's avg_leverage is written as 0 for every wallet, so sort=avg_leverage orders by wallet address and says nothing about leverage. Position leverage is the setting on each open position now, it can be 0 when unknown, and it is not the account's effective leverage: compare size_usd with account_value. The cohort label is the wallet's standing today, and wallets with too short a record are unknown, not rekt. Losing streaks are counted over the trades opened 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, axis: pnl and a cohort, at 1 credit a call.

Ask your agent
How do the worst Hyperliquid wallets trade compared with the best: hold time, losing streaks and leverage?
Example response
{  "traders": [    {      "wallet": "0x06b79146f1e54ef4e1ab9b1fe2cc4b4576cc33f1",      "rank": 1,      "account_value": 0.0,      "total_realized_pnl": -2208.9519989999953,      "cum_realized_pnl": -4874.01778704,      "roi": 0.0,      "pnl_pct": null,      "total_volume": 24888907.67107001,      "total_fee": 13746.548393789992,      "trade_count": 20414,      "win_count": 1357,      "loss_count": 19057,      "win_rate": 0.06647399067878723,      "long_win_rate": 0.06647399067878723,      "short_win_rate": 0.0,      "long_pnl": -2208.9519989999953,      "short_pnl": 0.0,      "profit_factor": 0.9604790806770325,      "expectancy": -0.10820770054864286,      "max_drawdown_pct": null,      "current_drawdown_pct": null,      "calmar_ratio": null,      "recovery_factor": null,      "max_win_streak": 5,      "max_loss_streak": 559,      "avg_leverage": 0.0,      "avg_duration_seconds": 9367,      "size_cohort": "shrimp",      "pnl_cohort": "3x rekt",      "pnl_cohort_tag": "fee_burner",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0x64bac0fc115ef0bb3e49eacafe89a8404dbb4c8a",      "rank": 2,      "account_value": 545.488666,      "total_realized_pnl": -1115.1816338899998,      "cum_realized_pnl": -4835.345811010009,      "roi": -204.43717778180198,      "pnl_pct": -204.43717778180195,      "total_volume": 1062418.749503,      "total_fee": 143.09047246999995,      "trade_count": 541,      "win_count": 49,      "loss_count": 492,      "win_rate": 0.0905730128288269,      "long_win_rate": 0.0515873022377491,      "short_win_rate": 0.6216216087341309,      "long_pnl": -2251.0860638899994,      "short_pnl": 1135.9044299999998,      "profit_factor": 0.6833305954933167,      "expectancy": -2.0613338888909425,      "max_drawdown_pct": 97.0999984741211,      "current_drawdown_pct": 58.599998474121094,      "calmar_ratio": -2.105429172515869,      "recovery_factor": -2.105429172515869,      "max_win_streak": 4,      "max_loss_streak": 200,      "avg_leverage": 0.0,      "avg_duration_seconds": 15010,      "size_cohort": "shrimp",      "pnl_cohort": "3x rekt",      "pnl_cohort_tag": "high_risk",      "style_cohort_tag": "streak_trader"    },    {      "wallet": "0x417e99d72cfef3a31d9a525c41236912752f2c1e",      "rank": 3,      "account_value": 330683.819553,      "total_realized_pnl": -41411.133999,      "cum_realized_pnl": -69525.6181210001,      "roi": -12.522878819706772,      "pnl_pct": -12.522878819706772,      "total_volume": 17350190.755922,      "total_fee": 2457.618924,      "trade_count": 1015,      "win_count": 504,      "loss_count": 511,      "win_rate": 0.4965517222881317,      "long_win_rate": 0.49301397800445557,      "short_win_rate": 0.5,      "long_pnl": 12431.393254999999,      "short_pnl": -53842.52725400001,      "profit_factor": 0.7029821872711182,      "expectancy": -40.79914679704433,      "max_drawdown_pct": 38.0,      "current_drawdown_pct": 38.0,      "calmar_ratio": -0.3295494318008423,      "recovery_factor": -0.3295494318008423,      "max_win_streak": 10,      "max_loss_streak": 137,      "avg_leverage": 0.0,      "avg_duration_seconds": 491352,      "size_cohort": "shark",      "pnl_cohort": "3x rekt",      "pnl_cohort_tag": null,      "style_cohort_tag": "streak_trader"    }  ],  "totalCount": 2600,  "nextCursor": "eyJrIjoiMzBkfGxvc3Nfc3RyZWFrfGRlc2N8cG5sfDN4IHJla3QiLCJyIjo1LCJ2IjoxMjMuMCwidyI6IjB4NGE4YTY4YjJlYzdjNjdjYmI3OTA2MGQ5ODE1N2I2OGM0N2ViYTBlNiJ9"}