Python functions:
searchJupiterTokens(), screenJupiterTokens(), getJupiterOHLCV(), getJupiterPrice(), getJupiterHoldings(), getJupiterTokenTrades(), getJupiterTokenHolders(), getJupiterWalletTrades(), screenJupiterWallets(), getJupiterTokenTopTraders()Product Overview
Overview
Jupiter Data provides comprehensive access to the Solana token universe through Jupiter, Solana’s dominant DEX aggregator. The dataset spans ten functions covering token discovery, price history, live pricing, wallet holdings, trade tape, holder analysis, and trader leaderboards. Because everything on Solana is public on-chain data, this dataset goes far beyond price feeds: you can inspect any wallet’s holdings and swap history, see who is buying or selling a token right now, and rank traders by realized PnL — no authentication needed. That is the raw material for copy-trading, whale-watching, and flow-driven strategies that are impossible to build on centralized-exchange data. The universe includes a distinctive asset class: tokenized equities and pre-IPO tokens (xStocks like tokenized AAPL and NVDA, and pre-IPO tokens for SpaceX, OpenAI, Anthropic, Anduril). These trade 24/7 on-chain, giving price discovery for hours when traditional markets are closed — and for companies that are not publicly listed at all.Functions at a Glance
Data Sources
Data flows through the Scalar Field data server, which proxies two upstream sources:- Jupiter APIs (Price v3, Tokens v2, Ultra): live aggregated prices, 24h stats, liquidity, token metadata, verification status, organic scores, and wallet balances. Jupiter aggregates liquidity across all major Solana DEXes (Raydium, Orca/Whirlpool, Meteora, and more), so prices reflect the whole on-chain market rather than a single pool.
- Birdeye (Solana DeFi analytics): OHLCV candles aggregated from on-chain swaps per token mint, token trade tape with trading wallets, top holders, per-wallet swap history, top traders, and the trader PnL leaderboard.
Ticker Convention
Jupiter tokens use theJ: namespace prefix, consistent with other Scalar Field asset classes (H: Hyperliquid, X: crypto, I: indices, C: forex). The canonical (and only) form is J:<mint_address>:
Symbols are not accepted — they are ambiguous on Solana (lookalike tokens share symbols). Always resolve tokens to their mint via
searchJupiterTokens() or screenJupiterTokens(). Bare mint addresses are also accepted as input.
J: tickers also work directly with the cross-asset functions getOHLCV() and getLatestPrice(), and with venue.trade() on the WALLET_SOL (Jupiter) venue — so a signal built here can be executed without ticker translation. See Trading on Jupiter DEX for order semantics and connection steps, and Strategies for the automation framework.
Querying the Data
searchJupiterTokens()
Search for verified tokens tradeable on Jupiter DEX by name, symbol, or mint address. This is the entry point of every Jupiter workflow — it resolves a human-readable name to the canonical J: ticker used by every other function.
Strategy angle: the resolver step of any strategy. A pre-IPO exposure strategy starts with searchJupiterTokens("spacex"); a pairs trade between tokenized and real equities starts by resolving the xStock mint for "AAPL".
Parameters
Return Schema
screenJupiterTokens()
Discover tokens by market-activity category (trending, most traded, highest organic score, recently listed) or by tag (verified, liquid staking tokens). Rankings come from the Jupiter Tokens v2 API.
Strategy angle: universe selection for flow-driven strategies. A momentum strategy screens toptraded over the last hour; a new-listing strategy watches recent with liquidity filters to catch tokens early while avoiding illiquid traps; the organic_score (0–100 real-activity score) helps filter wash-traded tokens out of any universe.
Parameters
Return Schema
getJupiterOHLCV()
OHLCV candles for Jupiter tokens at daily, hourly, or minute granularity, aggregated by Birdeye from on-chain swaps across all Solana DEXes. Accepts multiple tokens per call. Omit start and end for live mode (latest bar). Minute data is limited to 20 days per request.
Strategy angle: the backtesting backbone. For tokenized equities specifically, the 24/7 on-chain session opens strategies unavailable in traditional markets — e.g. trade the reaction to after-hours earnings through the xStock and exit before NYSE opens, or study weekend drift in tokenized SPY as a Monday-open signal. For pre-IPO tokens, daily bars are the only continuous price history that exists for those companies.
Parameters
Return Schema
ReturnsDict[str, pd.DataFrame] keyed by token. Each DataFrame:
getJupiterPrice()
Live prices with 24h change and liquidity. Jupiter is a swap aggregator with no central order book, so there are no bids/asks — just the aggregated live price across all pools.
Strategy angle: the pre-trade check for every on-chain strategy. The liquidity field matters as much as the price: a strategy should size positions relative to pool liquidity (e.g. cap orders at a small fraction of it) to keep swap slippage economic.
Parameters
Return Schema
ReturnsDict[str, dict] keyed by token:
getJupiterHoldings()
Token balances for any Solana wallet — native SOL plus all SPL token balances, priced live and sorted by USD value. Balances are public on-chain data; no authentication needed.
Strategy angle: the portfolio X-ray of a copy-trading pipeline. Once screenJupiterWallets() or getJupiterTokenTopTraders() surfaces an interesting wallet, this shows its full current book — snapshot it on a schedule and trade on the changes (new positions appearing, old ones shrinking).
Parameters
Return Schema
One row per holding, sorted byusd_value descending:
getJupiterTokenTrades()
Recent swaps for a token across all Solana DEXes, with the trading wallets. This is the live tape: who is buying and selling right now, in what size, on which venue.
Strategy angle: flow analysis and wallet discovery. Compute net buy-minus-sell flow over the recent tape as a short-horizon pressure signal; filter for large trades (min_usd_value) to isolate informed flow; and feed the discovered wallets straight into getJupiterHoldings() to see what else the buyers hold.
Parameters
Return Schema
Trades sorted newest first:getJupiterTokenHolders()
Top holders of a token, ranked by balance, with USD value and share of total supply.
Strategy angle: the concentration-risk screen. Before entering any small-cap token position, check what share of supply the top 10 wallets control — a token where a handful of wallets hold most of the float can be dumped on you at any moment. Persistent accumulation by top holders across snapshots is conversely a bullish structural signal.
Parameters
Return Schema
getJupiterWalletTrades()
Swap history for any Solana wallet across all DEXes. Each swap has two legs; the row describes the “traded token” — the non-SOL/USDC/USDT leg when one exists — with the other leg as counter symbol/amount.
Strategy angle: where copy-trading gets precise. Holdings tell you what a wallet owns; the swap history tells you when and how it got there — does the trader scale in, chase pumps, or accumulate quietly? Grouping buys by symbol reveals what a profitable wallet is currently accumulating, which is often the actionable signal.
Parameters
Return Schema
Swaps sorted newest first:screenJupiterWallets()
Trader PnL leaderboard for Solana wallets, with realized/unrealized breakdown, volume, and trade count over the selected window.
Strategy angle: the discovery step of a copy-trading pipeline. Rank by PnL, then audit the shortlist with getJupiterWalletTrades() (is the edge repeatable, or one lucky trade?) and getJupiterHoldings() (what do they hold now?). The realized/unrealized split matters: a wallet whose PnL is mostly unrealized in one illiquid token is a very different copy candidate than one with steady realized gains.
Parameters
Return Schema
Wallets sorted by PnL descending:getJupiterTokenTopTraders()
The most active wallets in a token by volume over a chosen window, with buy/sell breakdowns and Birdeye wallet tags (e.g. 'whale', 'bundler').
Strategy angle: complements the raw tape (getJupiterTokenTrades()) and static balances (getJupiterTokenHolders()) with who is moving size right now. Net buyers among tagged whales is a strong accumulation signal; a token whose top traders are mostly bundlers is a red flag for manufactured volume.
Parameters
Return Schema
Traders sorted by volume descending:Strategy Playbook
Concrete ways to combine these functions into a strategy:- Copy-trading.
screenJupiterWallets()to shortlist profitable traders,getJupiterWalletTrades()to audit their realized edge and style, then pollgetJupiterHoldings()on a schedule and mirror position changes viavenue.trade()on the Jupiter venue. - Tokenized-equity hours arbitrage. xStocks trade 24/7 while the underlying stocks trade 9:30–16:00 ET. Use
getJupiterOHLCV()on the xStock alongside equity OHLCV on the underlying to study overnight/weekend divergence, and trade the on-chain leg when traditional markets are closed. - Pre-IPO exposure.
searchJupiterTokens("spacex")and friends give continuous price discovery for private companies. Combine daily OHLCV with holder concentration (getJupiterTokenHolders()) to size positions responsibly in these thinner markets. - Whale-flow momentum.
getJupiterTokenTopTraders()andgetJupiterTokenTrades(min_usd_value=...)surface large net buying in a token; confirm with risingorganic_scoreand liquidity fromscreenJupiterTokens(), then enter with size capped againstgetJupiterPrice()liquidity. - New-listing screens.
screenJupiterTokens(category='recent')withmin_liquidityand holder-concentration checks builds a filtered feed of tradeable new tokens while screening out honeypots and bundler-driven volume.