Skip to content
Zunariq

How we calculate trader stats

Every figure is computed from public Solana transactions by the same code for every trader. Version 1.

Rankings are computed from public on-chain data. They are information, not advice.

What counts as a trade

We read each transaction's balance changes for the wallet, not the instructions of a particular exchange, so every venue is treated the same way. When exactly one asset leaves the wallet and one arrives, that is a trade. SOL, USDC and USDT are treated as cash: buying a token with SOL is a purchase of that token. A swap between two other tokens counts as a sale of one and a purchase of the other.

Network fees, priority fees, tips, and the refundable deposit for opening a token account are not counted as trades. Anything ambiguous, such as several assets moving at once, is recorded but not treated as a trade.

How trades are valued

USDC and USDT count as $1.00. SOL is valued at the closing price of the minute in which the trade happened. A token's price comes from its own trades against SOL, USDC or USDT. A swap between two other tokens uses a price for either token from the previous 15 minutes; if there is none, the trade is marked “not priced” and left out of profit and loss.

Cost basis and realized PnL

We use weighted average cost. Each purchase adds to a token's total cost. Each sale removes cost in proportion to the share of the holding sold. Realized PnL is the sale value minus that cost. Other tools that use first-in, first-out can show different numbers for the same trades.

Tokens that arrive by transfer or airdrop get an estimated cost at their price when received, or zero if no price is known. Sales of tokens with an estimated cost are left out of realized PnL and win rate, and the profile says how many were left out. Sales of more tokens than we saw the wallet buy count as zero profit on the extra tokens.

Unrealized PnL

Unrealized PnL is the current value of open positions minus their cost. It changes until the position is sold, so it is always labelled separately from realized PnL. Positions we cannot price right now are left out rather than valued at zero.

Win rate and hold time

A closed trade runs from the first purchase of a token until the holding is sold down to less than $1.00 in value. Win rate is the share of closed trades with a profit. Average hold time is measured over the same closed trades. Closed trades smaller than $1.00, with estimated cost, or flagged as wash trades are not counted.

Wash trades and dust

A buy and a sell of the same token within 60 seconds at prices less than 0.5% apart are flagged as wash-like: they add volume without real risk. Trades worth less than $1.00 are dust and are left out of volume and trade counts. A trader whose wash-like volume is more than 20% of their volume is not ranked.

Who is ranked

A trader is ranked for a period only when they meet every minimum below. Ties share a rank and are ordered by volume.

Minimums to be ranked
PeriodClosed tradesVolumeDifferent tokensDays tracked
24 hours5$2,000.0010
7 days10$10.0K10
30 days20$25.0K50
All time50$100K130

Limits

We track a selected set of wallets, not the whole chain, and history before we started tracking a wallet may be incomplete. Liquidity-pool deposits and staking are not counted. Past performance does not predict future results.

We use strictly necessary cookies to keep you signed in. With your permission we also use analytics to improve Zunariq.