HODLHODL Docs

How Yield Works


Today

In the current hackathon implementation, yield is manually injected by the vault owner using depositRewards(tokenIndex, amount). The owner deposits MOTO or PILL; the vault accepts it without minting new HDL. The total value backing existing HDL increases, so NAV rises.

This approach fully demonstrates the profit-claiming flow and NAV appreciation mechanic end-to-end. It is a deliberate simplification for hackathon scope — not a long-term design. In production, yield would flow in automatically without any owner action.

Limitation: Manual yield injection requires a trusted owner. The roadmap items below remove this trust assumption entirely.

Native Staking Roadmap

Rather than holding tokens idle, the vault can stake them directly in OPNet staking contracts and earn block-by-block yield automatically.

How it would work

  1. On deposit, the vault stakes incoming MOTO and PILL into their respective staking contracts
  2. Each staking contract accrues yield per block at a protocol-defined APY (e.g. 5–12%)
  3. When rebalance() is called, the vault unstakes, collects accrued yield, swaps to 50/50, and restakes
  4. The collected yield enters the vault without minting HDL — NAV rises automatically
  5. Rebalancers earn WRK and trigger the yield harvest simultaneously — the incentive becomes even stronger

The staking contract architecture already exists in the HODL codebase (based on the AuroraStaking pattern with RATE_PER_BLOCK yield calculation). It needs to be wired to the IndexVault via a claimYield() interface.

Why this isn't live yet: The staking contracts need MOTO and PILL token teams to expose a standardised yield interface. This is a coordination dependency, not a technical limitation.

Liquidity Mining Roadmap

Instead of staking, the vault can deposit MOTO + PILL as liquidity into the MotoSwap MOTO/PILL pool and earn trading fees from every swap that passes through the pool.

How it would work

  1. Vault deposits MOTO + PILL into the MotoSwap pool, receiving LP tokens
  2. Every swap on MotoSwap using this pool pays a fee to LP holders, including the vault
  3. Fee revenue accumulates as MOTO + PILL in the vault's LP position
  4. On rebalance, the vault removes liquidity, harvests fees, rebalances to 50/50, and re-adds liquidity
  5. NAV rises as fee revenue compounds

Impermanent loss

LP positions are exposed to impermanent loss (IL) when the two tokens' prices diverge. However, because HODL already targets 50/50 MOTO/PILL, IL is structurally minimised compared to a one-sided position. The vault's rebalancing mechanic also functions as an IL mitigation strategy: by restoring the 50/50 ratio, the vault tracks the pool's own composition and reduces the divergence that causes IL.

Combined Strategy

Staking yield and LP yield are not mutually exclusive. A mature vault could allocate a portion of each token to staking and another portion to the LP pool — earning both forms of yield simultaneously.

The rebalance call would then perform multiple operations in sequence: harvest staking yield, remove LP, collect LP fees, rebalance the combined position, re-stake, and re-provide liquidity. The rebalancer earns WRK for all of this in one transaction.