Reserves, Scale, and Price
A Multiswap Reserve Asset has two distinct quantities: a reserve and a scale.
For asset i, a_i is the number of tokens in its reserve account. s_i is its effective accounting scale, expressed in the same scale unit as the other assets in that pool.
The asset’s local pool price is:
For example, a reserve of 100 tokens and a scale of 200 gives a local price of 2 scale units per token. Scale expresses the reserve’s accounting value.
Cross-prices
For Reserve Assets A and B in the same pool, divide their local prices:
This gives the price of one A in units of B. Both assets must have positive reserves and scales for this expression and the active quote state.
Weights
An asset’s current pool weight is its share of total Reserve Asset scale. If scales are 200 and 300, their weights are 40% and 60%.
Changing a reserve while holding its scale fixed changes its price. Changing its scale relative to total scale changes its weight. PTE swaps update both reserve and scale according to the pool elasticity.
These are weights at the pool’s own prices. A portfolio valued at external market prices can have different weights.
Effective and base scale
The ledger stores base scales and applies a common pool scale accumulator to obtain effective scales. Liquidity operations update that accumulator to apply a common price scale across the pool.
The ledger preserves its double-entry scale totals. Scale updates preserve that identity exactly through double-entry accounting.
USD display
The oracle module exposes conversion information for USD displays. The reserve price and the oracle reference are distinct: swaps derive their curve from pool state, while deposit epochs obtain the value of new deposits from the oracle.
Continue with Elasticity and Dynamic Weights.