Strategy Allocation

Strategy Allocation Flow

This diagram describes how deposited SOM is allocated from the InsomniaVault into strategies through the StrategyRouter. The process ensures that user funds are distributed across strategies according to governance-defined weights.

Step-by-Step Process

  1. Push to Router

    • A Keeper calls pushToRouter(amount) on the InsomniaVault, signaling that a portion of idle SOM should be moved into strategies.

  2. Transfer SOM

    • The vault transfers the specified SOM amount to the StrategyRouter for allocation.

  3. Allocate Trigger

    • The Keeper (or governance) calls allocate() to initiate fund distribution.

  4. Router Allocation

    • The StrategyRouter begins the allocation process, preparing to distribute funds to each registered strategy adapter.

  5. Distribute by Weight

    • For each strategy adapter, the router calls depositNative{value: portion} based on the weight (in basis points) assigned to that strategy.

  6. Adapter Management

    • Each strategy adapter (e.g., SimpleHoldingAdapter) receives its allocated portion of SOM and manages it according to its strategy.

    • In the case of the SimpleHoldingAdapter, the tokens are securely held without further deployment.

  7. Emit Allocation Event

    • The StrategyRouter emits an Allocated event, recording the distribution of funds for transparency and monitoring.

Key Notes

  • Governance-Defined Weights: Allocation proportions are determined by governance and can be adjusted dynamically.

  • Keepers’ Role: Trusted operators (keepers) execute allocation calls to keep vault funds productively deployed.

  • Extensibility: New adapters can be added, and the router will automatically allocate to them once assigned weights.

  • Idle Funds: Until pushed to the router, user deposits remain safely in the vault.

Last updated