One frozen snapshot. One shared price move. A narrow view of the effect on existing perpetual positions.
The calculation
signed size × oracle price × price move
Positive size means Long; negative size means Short. Hypothetical price = baseline price × (1 + shock). Linear perpetuals with verified market identity, quote denomination, and valid oracle data are eligible. Totals stay separate when quote currencies differ.
What stays unchanged
- Position sizes are fixed; the selected percentage move applies together to all eligible, verified linear perpetual oracle prices.
- Price P&L change = signed base quantity × frozen baseline oracle price × shock fraction.
- Excludes collateral-price changes, future fills, funding, fees, borrowing interest, and liquidation effects.
- This is a perpetual price effect, not hypothetical account equity, health, liquidation risk, or a trading recommendation.
- Only contributions with the same verified quote currency are added. Different quote currencies have separate totals.
- Unsupported contracts, LP exposure, undecodable positions, and missing, nonpositive, or invalid oracle prices are excluded with a reason.
- Live calculations expire 120 seconds after retrieval, or earlier when the provider marks them expired. This is a conservative app rule, not a protocol liquidation rule.
- Account, market, and oracle reads are not atomic. RPC providers report observed slots; public API providers report available price timestamps without claiming on-chain slot verification.
- Preset accounts, metrics, and prices are deterministic fixtures; they are not live on-chain observations.
The result is an incremental perp price effect. Baseline account metrics come from the selected provider; no hypothetical account equity or future health is calculated. The liquidation estimate under the risk card is a separate, versioned model that solves one position at a time with everything else held; it is not the protocol’s liquidation engine.