Reading a Token Page
A token page at /trends/tokens/NAME puts five panels in front of you. Open one at
superhero.com/trends/tokens (opens in a new tab) and follow along.
The tabs
| Tab | What it shows |
|---|---|
| Posts / Feed | The community's feed and chat room. Where the token's community lives, if it has one |
| Trade | The buy/sell card, the candlestick chart, and your position |
| Info | Token summary: price, market cap, DAO balance, supply, creation date, every contract address |
| Transactions | Recent buys and sells with timestamps and transaction hashes |
| Holders | Top addresses and their balances |
Trade, Transactions and Holders are disabled for a name that does not exist yet. The page doubles as the "this token has not been created" screen, with a Create Token call to action.
The Info tab
Every field in the token summary is a hard fact rather than an interpretation:
| Field | Meaning |
|---|---|
| Price | Current spot buy price, one token, in AE |
| Market cap | See below. Displayed in AE, convertible to fiat |
| DAO balance | AE accumulated in the community treasury from the spread |
| Total supply | Tokens currently in circulation. Minted by buys, burned by sells |
| Creation date | When the community was deployed |
| Contract address | The AEX-9 token contract |
| Sale address | The bonding-curve sale contract, the handle for all trading |
| Created by | The account that called create_community |
The API record behind it carries more than the panel shows: sell_price (the spot sell price, 0.5%
under price), circulating_supply, rank, holders_count, tx_count, trending_score,
trending_score_update_at, unlisted, and a performance object with past_24h, past_7d,
past_30d and all_time sub-objects. See Tokens API.
rank is a stored market-cap rank over listed tokens, refreshed every 5 minutes. A token that has
never been ranked sorts last, so a brand-new token does not briefly outrank everything.
tx_count is a count of indexed transaction rows for that sale address (all-time, including the
create_community row), recomputed every time a new transaction for the token is persisted. It
counts trades, not traders: compare it against holders_count to see whether a busy token is busy
with many people or with one.
total_supply versus circulating_supply
They come from different places and can legitimately disagree:
| Field | Source |
|---|---|
total_supply | total_supply() on the AEX-9 contract, read directly |
circulating_supply | æternity middleware's AEX-9 event_supply, tracked from the token's Mint / Burn / Transfer event log |
circulating_supply is null until the middleware has indexed the token's events, which is
the case on a new token or when the middleware is behind. The two converge; use total_supply for anything that has
to be right, including the 10% DAO participation quorum.
DAO balance is the most under-read number on the page. It is cumulative spread, so it measures how much value has actually traded through the token since launch. It is much harder to fake than a price, and not resettable by a single large buy.
Market cap, precisely
Market cap for a bonding-curve token is not the amount of money in the token, and it is not what holders would receive if they all sold. The backend computes it as
market_cap = total_supply × pricewhere price is the sale contract's quote for one whole token and total_supply is read from the
AEX-9 contract. The same product is stored on every transaction row, there taken from the
PriceChange event's next_price, the unit price the trade left behind.
Two details of that definition:
- The unit price includes the 0.5% affiliation fee.
TokenSale.price(count)is the curve integral plus the fee, somarket_capis 0.5% above a pure curve valuation. - It is a marginal price, priced for one token. It is the cost of the next token, applied to every token already minted.
So it is a rectangle, while the AE in the reserve is the area under the curve:
market cap = buy(S) × S ← a rectangle: today's price, every token
reserve paid = ∫ from 0 to S of buy(x) dx ← the area under the curve
redeemable = 0.995 × that same integral ← what selling everything would returnOn a rising convex curve the rectangle is always bigger than the area:
| Total supply | Market cap (AE) | AE ever paid in (AE) | Redeemable if everyone sold (AE) | Market cap overstates by |
|---|---|---|---|---|
| 10,000,000 | 1,052.71 | 518.09 | 515.50 | 2.04× |
| 100,000,000 | 171,838.20 | 71,838.18 | 71,478.99 | 2.40× |
A token showing a 1,000 AE market cap is backed by roughly 500 AE of reserve, and the gap widens as the curve steepens. Unlike most assets, the reserve is a number you can check on-chain.
Market cap is a ranking signal, not a valuation. The trending list defaults to sorting by it so that larger communities surface first, and for that job it is fine. Do not read it as money that exists.
The chart
The candlestick chart on the Trade tab is fed by GET /api/tokens/{address}/history, paginated 100
candles at a time, with three series overlaid: price, volume and market cap.
| Control | Options |
|---|---|
| Interval | 1m, 5m, 15m, 1h, 4h, D, W, M (default 5m) |
| Currency | AE, or your selected display currency |
The interval is passed to the API in seconds (300 for 5m, 86400 for D). The chart also subscribes to live transaction events, so the rightmost candle updates as trades land rather than waiting for a refetch.
On a thin token, a 5-minute candle chart is mostly noise: two buys an hour apart produce a chart that looks like a trend. Widen the interval to D or W before drawing conclusions from shape.
The performance object
past_24h, past_7d and past_30d are refreshed every 5 minutes. Each is built from trades
inside a rolling window ending now, not from a calendar boundary and not from a synthetic price:
| Key | What it is |
|---|---|
current | buy_price of the last trade in the window |
current_date | When that trade happened |
current_change | current − first, where first is the buy_price of the earliest trade in the window |
current_change_percent | (current − first) / first × 100 |
trend | up, down or flat, from the same comparison |
high / low and their dates | Highest and lowest buy_price in the window |
Three consequences:
- The baseline is a trade, not a timestamp. A "7-day change" on a token whose only two trades in the last week were four days ago spans four days, not seven. It is the change between the first and last trades within the window.
- A token that has not traded in the window has no object at all; the fields are
null, not zero. - The prices are buy-side unit prices taken from the transaction rows, so they carry the 0.5% affiliation fee on both ends. The percentage is unaffected; the absolute values are 0.5% high.
Reading the Holders tab
Holders shows the top addresses and their balances. What to look for:
- Concentration. If the top one or two addresses hold most of the supply, the price you see is set by whoever is smallest, and their exit would walk the curve down past everyone below them. Compare the top holder's balance against
total_supply. - The creator's share. Pre-buys at creation happen at the very bottom of the curve: the first 437,000 tokens cost 1 AE. A creator holding a large share got them far cheaper than anyone buying now; that asymmetry is why the curve is steep at the start.
- Holder count versus supply. A high
holders_countwith a small supply is a community. A low holder count with a large supply is one person's position with a price attached.
Reading the Transactions tab
Transactions lists recent buys and sells with amounts, unit prices, timestamps and transaction hashes. Every hash links out to aeScan (opens in a new tab), where you can verify it independently of Superhero's indexer.
Many small buyers suggests organic momentum; one large buyer suggests a pump with higher exit risk. Two refinements:
- Look at the ratio of distinct accounts to transactions. Twenty trades from three addresses is not twenty people.
- Look at what follows a spike. A large buy with no follow-through is a position, not a trend; the curve holds its new price until someone sells, so an elevated price proves nothing about demand.
You can pull the same data outside the UI, filtered by token, by account, or both, with the transactions script or the API. See Transaction History.
A checklist
Before buying, in the order the page makes them available:
- DAO balance: has real volume ever passed through this token?
- Holders: how concentrated is it, and how cheap was the top holder's entry?
- Transactions: distinct accounts, or one address round-tripping?
- Feed: is there a community here, or just a ticker?
- Your own slippage: how big is your trade relative to
total_supply? Check it against the table on Fees & Slippage. - Price and market cap: last, and with the caveat above firmly in mind.
Related
- Bonding Curves: why a token's price rises the way it does
- Transaction History: querying the same trade data outside the UI
- The Trending Score: the other ranking signal on the trending list
- Portfolio & PnL: the same numbers from your own side of the trade
- Tokens API: the full token record behind every panel
- aeScan (opens in a new tab): verify any address or transaction hash independently