token_current_top_holders
Get upto 25 (per page) top holders information for a specific token.
**Note:** Using `labelType: smart_money` is not a good proxy for an overall market view. Use it only if user explicitly requests it, or to combine it with other non smart money data.
**Modes:**
- `onchain_tokens` (default): Analyze on-chain tokens by contract address
- `perps`: Analyze Hyperliquid perpetual futures by symbol (chain auto-set to "hyperliquid")
Columns returned (onchain_tokens mode):
- **Address**: Wallet/contract address of the token holder
- **Label**: Nansen label (e.g., exchange, whale, etc.)
- **Balance**: Current balance held (numeric with K/M/B formatting)
- **Balance USD**: USD value of token holdings (currency formatted)
- **Ownership %**: Percentage of total token supply owned (percentage, 2 decimal places)
- **Sent**: Total tokens sent from this address historically (numeric)
- **Received**: Total tokens received by this address historically (numeric)
- **24h Change**: Balance change in last 24 hours (numeric, can be negative)
- **7d Change**: Balance change in last 7 days (numeric, can be negative)
- **30d Change**: Balance change in last 30 days (numeric, can be negative)
Columns returned (perps mode):
- **Trader Address**: Address of the trader
- **Trader Label**: Nansen label for the trader
- **Side**: Position direction (Long/Short)
- **Position Value USD**: Total USD value of the position (currency formatted)
- **Position Size**: Size of the position in tokens (numeric)
- **Leverage**: Leverage multiplier (e.g., "20X")
- **Leverage Type**: Type of leverage (cross/isolated)
- **Entry Price**: Average entry price (price formatted)
- **Mark Price**: Current mark price (price formatted)
- **Liquidation Price**: Liquidation price (price formatted)
- **Funding USD**: Cumulative funding payments (currency formatted)
- **Unrealized PnL USD**: Unrealized profit/loss (currency formatted)
Sorting Options (default: holding_size desc):
onchain_tokens mode: holding_size, total_outflow, total_inflow, balance_change_24h, balance_change_7d, balance_change_30d
perps mode: holding_size, side, entry_price, leverage, liquidation_price, funding_usd, upnl_usd
Examples:
# On-chain tokens (default mode)
```
{
"mode": "onchain_tokens",
"chain": "ethereum",
"token_address": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"label_type": "top_100_holders"
}
```
# Hyperliquid perpetual futures
```
{
"mode": "perps",
"token_address": "PENGU",
"label_type": "smart_money"
}
```
# Find most active senders using filters
```
{
"mode": "onchain_tokens",
"chain": "ethereum",
"token_address": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"label_type": "smart_money",
"includeSmartMoneyLabels": ["All Time Smart Trader", "Fund"],
"orderBy": "total_outflow",
"order_by_direction": "desc"
}
```
# Find biggest accumulators (who received most tokens)
```
{
"mode": "onchain_tokens",
"chain": "ethereum",
"token_address": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"label_type": "whale",
"orderBy": "total_inflow",
"order_by_direction": "desc"
}
```
# Perps mode with filters
```
{
"mode": "perps",
"token_address": "ETH",
"label_type": "smart_money",
"side": "Long",
"upnlUsd": {"from": 10000},
"positionValueUsd": {"from": 100000},
"orderBy": "holding_size",
"order_by_direction": "desc"
}
```
**Restrictions exclusively when querying for native tokens (ETH, BNB, etc.):**
- Only supports sorting by `orderBy='holding_size'` (others will fail)
- With `label_type='top_100_holders'`: limited filters (holding_size, total_outflow, total_inflow, address, smart money labels)
- For advanced filters, use different`label_type` or set `aggregate_by_entity=true`
**orderBy Restrictions (use 'holding_size' to avoid API errors):**
- Token address: 0xa0b86a33e6b6c4b3add000b44b3a1234567890ab
**Does not** work for SOL in onchain_tokens mode (tokenAddress So11111111111111111111111111111111111111112). For SOL analysis, use perps mode instead.
token_discovery_screener
Get comprehensive token screening data across multiple blockchain networks with advanced filtering.
A maximum of 25 results are returned out of 1000s of tokens. Use the sorting and filtering options to narrow down the results.
A maximum of 5 chains can be specified per request (excess chains are automatically trimmed).
This tool helps with token discovery and finding trending tokens by combining different metrics: volume, liquidity, market cap,
smart money activity, and token age.
**IMPORTANT - Hyperliquid Special Case:**
- Hyperliquid chain queries perpetual futures (perps), not spot tokens
- When hyperliquid is mixed with other chains, two sections of up to 25 results each are returned - one for spot tokens and one for perps.
- For perps, only these filters are supported: volume, buyVolume, sellVolume, openInterest, netflow, nofTraders, traderType
- Additional orderBy fields for perps: openInterest, funding
- Unsupported filters/orderBy will fallback to defaults
INPUT EXAMPLES:
# Find tokens which are going up in price.
# Added some liquidity filter to remove spam and low quality tokens.
```
{
"chains": ["ethereum", "solana", "bnb", "base"],
"timeframe": "24h",
"liquidity": {"from": 100000},
"nofTraders": {"from": 10},
"orderBy": "price_change",
"orderByDirection": "desc"
}
```
# Find top stablecoins by market cap
```
{
"chains": ["ethereum", "solana", "bnb", "base"],
"timeframe": "7d",
"sectors": ["Stablecoin"],
"orderBy": "market_cap_usd",
"orderByDirection": "desc"
}
```
# Find AI memecoins with high trading activity
{
"chains": ["ethereum", "solana", "bnb", "base"],
"timeframe": "7d",
"sectors": ["AI Meme"],
"liquidity": {"from": 100000},
"volume": {"from": 1000000}
}
# Find DeFi lending tokens
{
"chains": ["ethereum", "solana", "bnb", "base"],
"timeframe": "24h",
"sectors": ["DeFi Lending (Money Markets)"],
"netflow": {"from": 1000000}
}
# Find tokens which have a lot of buying activity (high nofBuyers and buyVolume)
# Note that we added some filters to remove spam and low quality tokens. We added liquidity filter so that we only surface tokens which we can buy or sell.
# We sort by `netflow` descending to get tokens with the most net buying activity.
```
{
"chains": ["ethereum", "solana", "bnb", "base"],
"timeframe": "24h",
"liquidity": {"from": 100000},
"buyVolume": {"from": 1000000},
"marketCapUsd": {"from": 1000000},
"nofBuyers": {"from": 10},
"orderBy": "netflow",
"orderByDirection": "desc"
}
```
# Find Hyperliquid perps with high open interest and positive net flow
```
{
"chains": ["hyperliquid"],
"timeframe": "7d",
"openInterest": {"from": 100000},
"volume": {"from": 1000000},
"netflow": {"from": 0},
"nofTraders": {"from": 10},
"orderBy": "netflow",
"orderByDirection": "desc"
}
```
WARNING: To avoid timeouts, it's recommended to:
- Use 4 chains or less at a time (API tends to timeout with more chains)
- Use shorter timeframes (e.g., 24h or 1h instead of 7d or 30d)
Args:
Returns:
Comprehensive token metrics as markdown. Returns empty string if no tokens found.
Columns returned:
- **Token Address**: Token address (e.g., 0x1234567890123456789012345678901234567890)
- **Symbol**: Token trading symbol (e.g., ETH, BTC, DOGE)
- **Chain**: Blockchain network (ethereum, solana, polygon, etc.)
- **Price USD**: Current token price in USD (currency formatted)
- **Price Change**: Price change percentage over the date range (percentage, can be negative)
- **Market Cap**: Current market capitalization (currency formatted)
- **Fully Diluted Valuation (FDV)**: Market cap if all tokens were circulating (currency formatted)
- **FDV/MC Ratio**: Ratio indicating how much supply is locked/vested (numeric, >1 means locked supply)
- **USD Volume**: Total trading volume in USD (currency formatted)
- **Buy USD Volume**: Total buy volume in USD (currency formatted)
- **Sell USD Volume**: Total sell volume in USD (currency formatted)
- **Net Flow USD**: Net flow (buys minus sells) in USD (currency formatted, can be negative)
- **DEX Liquidity**: Available liquidity for trading (currency formatted)
- **Inflow/FDV**: Inflow as percentage of FDV (percentage formatted)
- **Outflow/FDV**: Outflow as percentage of FDV (percentage formatted)
- **Token Age (Days)**: Days since token was first deployed
- **Sectors**: List of token sectors/categories
Hyperliquid perps columns (smart-money mode, when `onlySmartTradersAndFunds=true`):
- **Net Position** (`LONG $X` / `SHORT $X` / `FLAT`): current net direction. Use this when answering long/short questions.
- **Current Longs USD** / **Current Shorts USD**: gross notional on each side; sizing only, not direction.
- **Net Position Change**: delta over the timeframe — can be positive while Net Position is still SHORT.
Notes:
- Positive Net Flow on spot tokens indicates more buying than selling
- High FDV/MC Ratio suggests significant locked or vested tokens
**Filtering Options** (filters parameter):
- **Numeric Ranges**: volume, liquidity, marketCapUsd, netflow, tokenAgeDays, nofTraders, nofBuyers, nofSellers, nofBuys, nofSells, buyVolume, sellVolume, fdv, fdvMcRatio, inflowFdvRatio, outflowFdvRatio
- **Categories**: sectors (e.g. ["AI", "Meme"]), includeSmartMoneyLabels
- **Trader Type**: traderType (string: "all", "sm", "whale", "public_figure")
- Use "sm" ONLY when user explicitly asks for "smart money".
- Use "whale" ONLY when user specifically asks for whales or large holders.
- Use "public_figure" ONLY when user asks for KOLs or popular figures.
- Data with "sm", "whale", and "public_figure" is sparse — "whale" and "public_figure" are even sparser than "sm". Pairing any of these with other filters (volume, liquidity, netflow) is likely to return no results.
- Only pair traderType="sm/whale/public_figure" with other filters (volume, liquidity, netflow) if the user request explicitly requires it.
- Instead of pairing this with other filters, you can rely on orderBy to sort by netflow, volume, liquidity, etc.
**CRITICAL WARNING:** 'priceChange' is NOT a valid filter. You cannot filter for "tokens up > 10%". Use `orderBy="priceChange"` instead.
**Sorting Options** (orderBy field):
Available fields (use with orderByDirection: "asc" or "desc"):
- **priceUsd**: Sort by token price
- **priceChange**: Sort by price change percentage
- **marketCapUsd**: Sort by market capitalization
- **volume**: Sort by total trading volume
- **buyVolume**: Sort by buy volume
- **sellVolume**: Sort by sell volume
- **netflow**: Sort by net flow (buys - sells)
- **liquidity**: Sort by DEX liquidity
- **nofTraders**: Sort by number of traders
(Note: Fields like `tokenAgeDays` or `outflowFdvRatio` are for FILTERING only, not sorting)
Default: orderBy="netflow", orderByDirection="desc"
token_pnl_leaderboard
Upto 25 results (per page) of trader PnL for a token. Use the sorting and filtering options to narrow down the results.
**Modes:**
- `onchain_tokens` (default): Analyze on-chain tokens by contract address
- `perps`: Analyze Hyperliquid perpetual futures by symbol (chain auto-set to "hyperliquid") — supports native tokens
**NOTE:** This tool does not support native tokens (so11111111111111111111111111111111111111112, 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee) in `onchain_tokens` mode. Native tokens (by symbol - SOL, ETH, ARB etc) ARE fully supported in `perps` mode.
Returns:
Trader performance rankings as markdown. Returns empty string if no trading data found.
Columns returned:
- **Address**: Trader's wallet address
- **Label**: Nansen label of the trader
- **Total PnL**: Combined realized and unrealized PnL (currency formatted, can be negative)
- **Total ROI**: Total return on investment as percentage (percentage formatted)
- **Realized PnL**: Profit/loss from completed trades (currency formatted, can be negative)
- **Realized ROI**: Return on investment from realized trades only (percentage formatted)
- **Unrealized PnL**: Current profit/loss on open positions (currency formatted, can be negative)
- **Unrealized ROI**: Return on investment from unrealized positions only (percentage formatted)
- **Token Holdings**: Current token quantity held (numeric formatted)
- **Holdings USD**: Current USD value of token holdings (currency formatted)
- **Token Price**: Current price per token (price formatted)
- **Peak Token Holdings**: Maximum token quantity ever held in the date range (numeric formatted)
- **Peak Holdings USD**: Maximum USD value ever held in the date range (currency formatted)
- **Still Holding %**: Percentage of peak holdings still held (percentage formatted)
- **Total Trades**: Number of trades executed by this address
- **Net Flow**: Net money flow - negative means net seller (currency formatted, can be negative)
**Sorting** Options
You can **ONLY** sort by pnl_usd_total, roi_percent_total, pnl_usd_realised, roi_percent_realised,
pnl_usd_unrealised, roi_percent_unrealised, holding_amount, max_balance_held, nof_trades,
still_holding_balance_ratio, netflow_amount
**Filtering** Options:
📋 List filters: trader_address, trader_address_label
📊 Numeric range filters: pnl_usd_realised, pnl_usd_unrealised, holding_amount, holding_usd,
nof_trades, still_holding_balance_ratio, max_balance_held, max_balance_held_usd
Examples:
# On-chain tokens (default mode)
```
{
"mode": "onchain_tokens",
"chain": "ethereum",
"tokenAddress": "0xa0b86a33e6ba3e5b9e4b1b1b1b1b1b1b1b1b1b1b",
"dateRange": {"from": "30D_AGO", "to": "NOW"},
"orderBy": "pnl_usd_total",
"order_by_direction": "desc"
}
```
# Hyperliquid perpetual futures
```
{
"mode": "perps",
"tokenAddress": "ETH",
"dateRange": {"from": "7D_AGO", "to": "NOW"}
}
```
# Advanced filtering: Find profitable active traders with significant holdings
```
{
"chain": "ethereum",
"tokenAddress": "0xa0b86a33e6ba3e5b9e4b1b1b1b1b1b1b1b1b1b1b",
"dateRange": {"from": "30D_AGO", "to": "NOW"},
"pnlUsdTotal": {"from": 1000, "to": 999999999},
"nofTrades": {"from": 5, "to": 100},
"holdingUsd": {"from": 10000, "to": 999999999},
"stillHoldingBalanceRatio": {"from": 0.1, "to": 1.0},
"orderBy": "roi_percent_total",
"order_by_direction": "desc"
}
```
Notes:
- Ranked by total PnL performance by default
- Useful for identifying successful traders and copying strategies
- Both ascending and descending sorts provide valuable insights (winners vs losers)
- ONLY RETURNS TOP 25 RESULTS for the sort order. Hence the result is NEVER complete.
- Make sure the sort order is relevant to your analysis as otherwise you will miss data.
** This tool does not support hyperevm as chain **
token_technical_indicators
Get a technical-analysis snapshot for a token: SMA(20/50/200), EMA(12/26), RSI(14), MACD(12,26,9), Bollinger Bands(20, 2σ), ATR(14), and rolling VWAP(20), computed from the last 260 closed candles at an explicit timeframe.
Supports EVM chains and Solana for on-chain tokens, AND Hyperliquid perpetual futures.
For Hyperliquid perps, pass `chain="hyperliquid"` and use the perp symbol as `tokenAddress` (e.g. "BTC", "HYPE" for native perps; "XYZ:ORDI" for XYZ-namespaced perps — prefix is normalized automatically).
**YOU MUST USE THIS** for technical analysis instead of computing indicators from raw `token_ohlcv` candles — it uses far more history (260 closed candles) and charting-platform conventions (SMA-seeded EMA, Wilder RSI/ATR, population-σ Bollinger).
Timeframes (explicit, no auto-resolution):
- 5m / 15m / 30m / 1h / 4h: intraday and short-horizon analysis
- 1d (default): swing/position horizon
- 1w: long-term trend
Output: a snapshot header (candles used, date range, last close, 5-candle price change) plus one row per indicator, each with a 5-candle trend delta so you can read direction, not just level:
- **SMA 20/50/200**: values, price vs each, MA slopes
- **EMA 12/26**: values, spread %, widening/narrowing
- **RSI(14)**: level, prior candle, 5-candle change
- **MACD(12,26,9)**: line/signal/histogram, rising/falling, candles since signal cross
- **Bollinger(20,2σ)**: bands, %B, bandwidth and its change
- **ATR(14)**: value and % of price (volatility), rising/falling
- **VWAP(20)**: value, price vs VWAP
Indicators without enough closed-candle history render as n/a (e.g. SMA200 on young tokens); the candle count used is always reported. VWAP is n/a on Hyperliquid 5m-1h timeframes (volume is NULL in those views) — use 4h or 1d for Hyperliquid VWAP.
Example Usage:
Daily technical snapshot for WETH:
```
{
"chain": "ethereum",
"tokenAddress": "0xc02aaa39b223fe8d0a0e5c4f27ead9083c756cc2",
"timeframe": "1d"
}
```
4-hour snapshot for the BTC Hyperliquid perp:
```
{
"chain": "hyperliquid",
"tokenAddress": "BTC",
"timeframe": "4h"
}
```
token_transfers
Get 25 token transfers (per page) for a specific token based on the sort order.
Default is most recent transfers first.
**NOTE:** This tool does not support native tokens (so11111111111111111111111111111111111111112, 0xeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee).
Columns returned:
- **Time**: Timestamp when the transfer occurred (block_timestamp: ISO 8601 format)
- **From Label**: Source address label (from_address_label: sender of tokens)
- **To Label**: Destination address label (to_address_label: receiver of tokens)
- **From Address**: Raw source address (from_address: hex address)
- **To Address**: Raw destination address (to_address: hex address)
- **Amount**: Quantity of tokens transferred (transfer_amount: numeric)
- **Value USD**: USD value of the transfer at time of transaction (transfer_value_usd: currency formatted)
- **Type**: Transfer category (transaction_type: DEX, CEX, transfer, etc.)
- **Tx Hash**: Blockchain transaction hash for verification (transaction_hash)
Sorting Options (all fields support "asc"/"desc"):
Available for sorting: timestamp, amount
Examples:
# Basic request (most recent transfers first)
```
{
"chain": "ethereum",
"tokenAddress": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"dateRange": {"from": "24H_AGO", "to": "NOW"},
"orderBy": "timestamp",
"order_by_direction": "desc"
}
```
# Smart money only filter (largest transfers first)
```
{
"chain": "ethereum",
"tokenAddress": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"dateRange": {"from": "7D_AGO", "to": "NOW"},
"transferOriginCategories": ["all_transfers"],
"onlySmartTradersAndFunds": true,
"orderBy": "amount",
"order_by_direction": "desc"
}
```
# Filter by DEX only with minimum transfer value (USD)
```
{
"chain": "ethereum",
"tokenAddress": "0xa0b86a33e6b6c4b3add000b44b3a1234567890ab",
"dateRange": {"from": "24H_AGO", "to": "NOW"},
"transferOriginCategories": ["dex"],
"transferValueUsd": {"from": 1000}
}
```
# Filter transfers sent FROM a specific wallet
```
{
"chain": "base",
"tokenAddress": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",
"dateRange": {"from": "2025-03-12", "to": "2025-03-12"},
"fromAddress": "0x2b060b9c89B8aD04e5E1fD40F1f327e41DD32c72",
"orderBy": "timestamp",
"order_by_direction": "desc"
}
```
**Available Filters:**
Address Filters:
- **fromAddress** (str or list[str], optional): Filter by sender address(es)
Example: "0x2b060b9c89B8aD04e5E1fD40F1f327e41DD32c72"
Example: ["0xaddr1", "0xaddr2"]
- **toAddress** (str or list[str], optional): Filter by recipient address(es)
Use fromAddress/toAddress when looking for a specific wallet's transfers.
Transfer Origin Categories:
- **transferOriginCategories** (list[str]): List of transfer types to include
Possible values: ['dex', 'cex', 'non_exchange_transfers', 'all_transfers']
Default: ['all_transfers']
Examples:
- ['dex'] - only DEX transfers
- ['cex'] - only CEX transfers
- ['dex', 'cex'] - both DEX and CEX
- ['non_exchange_transfers'] - only non-exchange transfers
- ['all_transfers'] - all types (default)
Smart Money Filter:
- **onlySmartTradersAndFunds** (bool): Only show smart money transfers (default: false)
When true, filters to show **only** transfers involving profitable addresses
Numeric Range Filter:
- **transferValueUsd** (object, optional): Filter by USD value of transfer
Format: {"from": X, "to": Y} or {"from": X} or {"to": Y}
- Specify only `from` for minimum bound (no maximum)
- Specify only `to` for maximum bound (no minimum)
- Specify both for a bounded range
Example: {"from": 1000} - only transfers worth at least $1,000 USD
Example: {"to": 50000} - only transfers up to $50,000 USD
Example: {"from": 1000, "to": 50000} - transfers between $1,000 and $50,000 USD
Note: This filters by the USD value of the transfer at time of transaction
Notes:
- Use fromAddress/toAddress to find transfers for a specific wallet
- Use transferOriginCategories to control which transfer origins are included
- Smart Money filter shows **only** transfers involving profitable addresses (definition of *Smart Money*)
- transferValueUsd filters by USD value at time of transaction