How it works
Yield and distribution
The reserve earns funding on its shorts and dividends on its spot. Every 8 hours a crank turns what the reserve holds above USDq supply into new USDq, and splits it 80 / 10 / 10 between sUSDq, the Reserve Fund and the AEQUA buyback.
- Every
- 8 h
- To sUSDq
- 80%
- To the Reserve Fund
- 10%
- To the buyback
- 10%
- Yield cap
- 5 bps of supply a day
Where the yield comes from
| Source | Earned by | A year |
|---|---|---|
| Funding | the shorts, paid hourly on the perps | about 5.5% |
| Dividends | the spot, through the xStock multiplier | about 0.7% |
Both are rates on the sleeve that earns them. The shorts and the spot are each 67.5% of supply, so on SPYx inputs the reserve earns about 4.2% of USDq supply a year:
0.675 × (5.5% + 0.7%) ≈ 4.2%
The dividend figure is SPY's trailing yield, 0.98%, less the issuer's 30% withholding. Mint and redeem fees are not part of it: they go straight to the Reserve Fund.
Net asset value
The program values the whole reserve in dollars:
NAV = spot + buffer + in flight + hedge account
- spot
- each xStock vault: raw × M × the ETF's mid price
- buffer
- USDC in the buffer on Solana
- in flight
- USDC between the chains, and USDC waiting in the landing account
- hedge account
- the account value in the latest hedge report
USDC moving between the chains is counted the whole way, so a transfer never reads as a gap. In flight shows how it is tracked.
The surplus
What the reserve holds beyond USDq supply and a cushion is the surplus:
surplus = NAV − supply × (1 + 25 bps)
The cushion, 25 bps of supply, is never distributed. It stays in the reserve.
The crank
distribute is a crank: anyone may call it, and aequa's own service does every 8 hours. It runs when every collateral has a fresh price, none is inside a corporate-action window, and the latest hedge report is at most 120 seconds old. When the surplus is above zero, it mints:
amount = min(surplus, yield_cap × supply × elapsed)
- yield_cap
- 5 bps of supply a day
- elapsed
- time since the last distribution
The yield cap bounds what any single report can distribute, whatever the report says. Over weekends, while no session is open, the crank waits for the next live window, and the surplus carries over to it.
The split
| Share | Goes to |
|---|---|
| 80% | The sUSDq vault, vesting evenly over 8 hours |
| 10% | The Reserve Fund while it holds less than 2% of supply; the protocol vault after that |
| 10% | The protocol vault, which spends everything it holds on the AEQUA buyback |
The Reserve Fund and protocol vault parts round down, and sUSDq keeps the remainder.
Worked numbers
On SPYx inputs, with half of USDq staked
- Reserve yield
- about 4.2% of supply a year
- sUSDq's share
- 80%
- Share of USDq staked
- 50%
- sUSDq a year
- about 6.7%
sUSDq yield = 0.8 × reserve yield / share of USDq staked
The reporter
The hedge account lives on Hyperliquid, so its value reaches the program through a report. Every 60 seconds aequa's reporting service signs report_hedge with the account value, the short notional and session state of each perp, and the USDC totals that track transfers.
- Anyone can read the same account from Hyperliquid's public info API; the Reserve tab shows both side by side.
- Its figures feed NAV, and its age and each perp's session open and close the xStock paths. Mint and redeem prices come from Pyth alone.
- The yield cap bounds what any report can distribute.