Skip to content

Docs

Execution prices and USD marks

The price you trade at comes from the pool. The USD value beside it moves with the quote asset, even when nobody trades the token.

Design · not deployedValues on this page come from the design. Deployed addresses and settings: Contract addresses; live state: Status.

USD marks

USD values are marks: the pool price times the current USD price of the quote asset. They can change without any trade and are not the price you would get. Your executable price is shown in the trade preview.

Two kinds of price

Every EtherFamily market prices its token in its quote asset: so many ETH, USDC, stock tokens or vault shares per token. Two different numbers come out of that.

  • The execution price is what a specific trade gets, fee and price impact included. The app computes it by simulating your exact transaction at the latest block, and states the minimum you receive; below that minimum the trade reverts. It is only ever shown in the trade preview.
  • The USD mark is the pool's current price times the current USD price of the quote. It moves whenever the quote's USD price moves, with or without trades in the token. It is a reference value, not a price anyone will fill, and the app labels it “not an execution price”.

The second is what makes a token paired with a perp share or a stock move in USD with its quote. Holding such a token is still not a position in the quote. Perp vault shares

Pool price and all-in price

Each trade in the market is recorded with two prices, in quote per token:

A is the quote a buyer pays, Q the quote the pool outputs on a sale, and the fee is the launch fee
PriceBuySellMeaning
Pool price(A − fee) ÷ tokensQ ÷ tokensWhat the pool traded at, without the launch fee. Charts use it.
All-in priceA ÷ tokens(Q − fee) ÷ tokensWhat the trader actually paid or received per token.

USD values of a trade use the quote's USD price as of that trade's block, and are never re-priced later with a newer price.

Trading from ETH, USDC or USDT

A market trades against its quote asset. Paying with ETH, USDC or USDT instead means converting through other pools first (or after, when selling), and each extra pool adds its own fee and price impact. The trade panel names the route before you confirm:

Conversion route

This trade goes through route, hop by hop. Route availability and depth change from block to block. If no route is available you can still trade directly in the quote asset. You receive at least minimum output or the trade reverts.

The app checks the price of every route against an independent reference (Chainlink prices, the stock's USD reference, or the vault's own net asset value for perp shares) and refuses to sign when the difference is above a per-quote limit. Below that limit, a large difference still needs an explicit confirmation:

Price far from the reference

This route prices the quote asset deviation away from an independent reference (reference source). Confirm to continue.

Before any button is enabled, the app simulates the whole transaction from your own address at the latest block. A status shown by the app is advice, not permission: a failed simulation always wins.

Charts

  • Execution candles are built only from trades in the market itself. An interval without trades has no candle: nothing is filled in, and no volume is invented. USD candles use each trade's own USD price at its block.
  • The USD mark series has a point for every block in which the pool price or the quote's USD price changed. It is labelled as a mark, never as an execution price.
  • A market's chart is never the chart of its quote. The price of a stock or of a BTC position is not the price of a token paired with it.

Where USD prices come from

A USD price counts only while its source is fresh. When no fresh source exists, the app shows no USD value and says why (stale, no source, vault not operational), instead of interpolating one.

Valuation version 1 (2026-09-30). Design values, not deployed.
QuoteUSD sourceMaximum ageNotes
ETHChainlink ETH / USD4,500 sThe feed's one-hour heartbeat plus a margin. The heartbeat is the vendor's value and is re-verified before deployment.
USDCChainlink USDC / USD90,000 sThis feed updates rarely: it was 19.6 hours old at one research read.
TSLAon, SPYon, QQQonChainlink token feed (“Calculated”), then Chainlink token feed (“Ondo API”)90,000 sPrices of the token itself, not of the share. 24-hour heartbeat; frozen while US equity markets are closed. The two feeds differed by up to about 0.2%.
NVDAonChainlink NVDA / USD (the underlying share) × 190,000 sAn approximation, labelled “approx.”: NVDAon's dividend multiplier is not published on-chain.
AAPLonNonen/aNo on-chain USD reference exists. Values are shown in AAPLon only.
USDT (perp collateral)Chainlink USDT / USD90,000 sUsed to value perp shares; a USDT depeg shows in their USD marks.
Perp sharesThe vault's attested net asset value per share × USDT / USDNAV at most 1 hour old; USDT / USD 90,000 sNo USD value while the vault is winding down or not yet opened; flagged when its NAV is disputed or its redemptions are restricted.

Feed addresses and ages were read on-chain during the research Observed on-chain; the stock feeds' methods are the vendor's Vendor-documented. Stock and perp-share markets state their source:

USD source of a stock token

USD values for the stock token use USD source.note when the value is approximated from the share pricenote when no USD reference exists

USDT accounting

The vault accounts in USDT. USD values assume USDT's market price from Chainlink; a USDT depeg changes them.

Supply, FDV and market cap

  • Total supply: 1,000,000,000 tokens, always.
  • Circulating supply: the total, minus what the locked position still holds, minus the rounding dust in the hook, minus tokens burned to the dead address. Tokens in other pools, in contracts and in the fee escrow count as circulating.
  • FDV (fully diluted value): total supply × USD mark.
  • Market cap: circulating supply × USD mark. The app never labels the FDV as market cap.

Portfolio totals carry the block and age of their marks:

Portfolio values

Portfolio values are USD marks as of block block (age ago). Some assets have no USD source and are shown in their own units.

The liquidity milestone

A market reaches its liquidity milestone in the first block in which the quote held by its locked position is worth at least $25,000 (a design value), valued under a published valuation version. It is a label and nothing else: nothing moves on-chain, nothing migrates, and the label stays once reached. Blocks without a fresh USD price do not count.

Valuation versions

Every derived value (USD prices, candles, FDV, the milestone) is computed from chain data under a numbered valuation version. A change of method creates a new version, published before it is used; values computed under an earlier version stay available and are never rewritten.

Sources: indexer valuation, version 1 (design); ADR 0007 (routes and references), ADR 0013 (milestone); research on Chainlink feeds and on Ondo stock pricing.