Skip to content

vault#

List, rank, and inspect Hyperliquid vaults.

Subcommands#

Command What it does
ls Cached vault summaries (name, address, leader, TVL, APR).
rank Sort cached summaries by tvl, apr, or name.
inspect <vault> Live fetch + cached trades; equity curve, metrics, asset breakdown.

Cache vault summaries#

The CLI reads vault data from the cache. Pull summaries before listing or ranking:

from hl_research.api.info import InfoClient
from hl_research.cache.store import Cache
from hl_research.cache.sync import Syncer
import asyncio

async def pull():
    async with InfoClient() as client:
        await Syncer(client, Cache()).pull_vault_summaries()

asyncio.run(pull())

A hlr data pull-vaults shortcut is on the v0.2 roadmap.

hlr vault ls#

$ hlr vault ls
NAME              ADDRESS         LEADER          TVL          APR     STATE
HLP               0x1234…dead     —              $52,431,290  +14.21%  open
Whale Vault       0x5678…beef     0xabcd…0123    $4,820,991   +28.50%  open

--top N to limit rows.

hlr vault rank#

hlr vault rank --metric tvl --top 20
hlr vault rank --metric apr
hlr vault rank --metric name

v0 supports tvl, apr, and name. Sharpe-style ranking requires per-vault equity curves and lands in v0.2.

hlr vault inspect <vault>#

hlr vault inspect 0x1234... --out vault.html

Steps:

  1. Live vaultDetails fetch (portfolio, followers, leader, name)
  2. Cached vault trades read from disk
  3. Equity curve assembled from portfolio.account_value_history
  4. analyze_vault() computes metrics + asset breakdown

Without --out, prints the summary panel, performance metrics, asset breakdown, and a hint about trade-cache emptiness. With --out PATH, writes a standalone HTML report (matte cards, plotly equity curve, metrics table, recent trades).

JSON mode#

hlr --json vault inspect 0x... emits a single payload with vault metadata, depositor count, metrics, equity curve, asset breakdown, and the head of the trade list.