How it works

Units and pricing

Decimals, ratios, and how to derive a partial's USD price.

Partials carry fewer decimals than the underlying. Every wallet, indexer, and integration that shows a Daybreak price needs to account for that.

Raw units are 1:1

All protocol accounting is in raw units. One raw set equals one raw underlying:

  • Minting n raw underlying (net of fee) mints n raw units of each partial.
  • Redeeming n raw units of each partial pays n raw underlying.
  • A partial's pool leg trades exactly the set count in atoms.

Ratios are raw-per-raw and therefore dimensionless. The only unit conversion anywhere in the system is display.

The display scale

Partial decimals are the underlying's decimals minus 2. So one whole underlying token corresponds to 100 display partials of each kind.

UnderlyingUnderlying decimalsPartial decimalsDisplay partials per whole underlying
GOOGLx86100
SPCXx64100

The scale is fixed when a set is created and can be derived from the two mints' decimals.

Deriving prices

Let ratio be a partial's pool price in raw underlying per raw partial. That is the pool's midprice before any decimal scaling.

QuantityFormula
Partial's share of the companyratio
USD price of one display partialratio × underlying_usd_price / 100
USD price of one whole underlying via its partialsΣ ratioᵢ × underlying_usd_price
Basket premium or discount to parΣ ratioᵢ − 1

Warning. A pool's midprice is quoted in quote atoms per base atom. To convert an atom ratio to a display ratio you scale by 10^(decimals_quote − decimals_base). For a GOOGLx set that factor is 10^(8 − 6) = 100, which is exactly the display scale. So an atom-level midprice of 0.535 means one display partial is worth 0.535 / 100 of a GOOGLx, and the whole-underlying share is 0.535.

The underlying's own multiplier

Tokenized equities carry a display multiplier that the issuer changes on splits. Daybreak's arithmetic ignores it: one raw set still redeems to one raw underlying after a split, while wallets display the underlying side scaled. Partials carry their own multiplier, fixed at 1.

Note. After a split, the underlying's displayed balance changes but the partial's does not. Display prices in token terms and re-derive USD from the underlying's current USD price.