Idle Cash
Tilt vaults support partial allocation — target weights don’t need to sum to 100%. The unallocated portion stays as idle tiltUSDC in the vault.
How It Works
When creating or managing a fund, you can set target weights that sum to any value between 1% and 100%:
| Target Allocation | Idle Cash |
|---|
| NVDA: 30%, AAPL: 25%, TSLA: 20% = 75% | 25% idle |
| ETH: 50% = 50% | 50% idle |
| MSFT: 100% = 100% | 0% idle |
The idle cash portion:
- Remains as tiltUSDC in the vault
- Is included in
totalAssets() for NAV calculation
- Earns no yield (it’s a stablecoin)
- Acts as a cash buffer for withdrawals
Why Use Idle Cash
Risk management — Holding a cash reserve reduces portfolio volatility. A fund with 70% equity exposure and 30% cash has natural downside protection.
Withdrawal efficiency — When investors withdraw, the vault first uses idle tiltUSDC before liquidating positions. This means smaller withdrawals can be served without any trades, reducing slippage and gas costs.
Tactical allocation — A fund manager might reduce exposure ahead of uncertain events (earnings, macro data) by lowering total allocation, then increasing it once clarity returns.
Dollar-cost averaging — A fund can start with a high cash position and gradually deploy capital by increasing weights over time.
Technical Details
When allocateIdleAssets() is called, the vault allocates from the unallocated balance:
allocatable = tiltUSDC balance (unallocated)
For each target token:
buyAmount = allocatable × (tokenWeight / 10000)
The denominator is always 10,000 (100% in basis points), not the sum of weights. This means a vault with 75% total allocation will deploy exactly 75% of idle capital and keep 25% as cash.
Target weights must sum to between 1 and 10,000 basis points (0.01% to 100%). A weight sum of 0 is invalid.