Reserve account represents a lending pool for a specific asset (e.g., SOL, USDC). It tracks liquidity, collateral, interest rates, fees, and configuration parameters.
Reserve
Program version number
Last update tracking slot, staleness, and price status flags
Parent lending market account this reserve belongs to
Optional farm account for collateral token staking rewards
Optional farm account for debt token staking rewards
Liquidity state tracking available and borrowed amounts
Collateral token state (cTokens representing deposits)
Reserve configuration parameters
Total borrowed against this reserve outside elevation groups
Per-elevation-group borrowed amounts against this reserve
Withdrawal queue state for managing delayed withdrawals
Key Concepts
Utilization Rate
The utilization rate is calculated as:borrowed_amount / total_supply
Collateral Exchange Rate
The exchange rate between collateral tokens (cTokens) and liquidity tokens changes over time as interest accrues.Interest Accrual
Interest is compounded continuously based on the borrow rate curve and current utilization.Account Size
TheReserve account has a fixed size defined by RESERVE_SIZE constant (approximately 3KB).
Related Types
- BorrowRateCurve: Defines interest rates at different utilization points
- TokenInfo: Oracle configuration and price feed settings
- WithdrawalCaps: Time-based rate limiting configuration