Skip to content

Add performance and management fees#68

Merged
jribbink merged 7 commits into
mainfrom
jribbink/fees
Jul 7, 2026
Merged

Add performance and management fees#68
jribbink merged 7 commits into
mainfrom
jribbink/fees

Conversation

@jribbink

@jribbink jribbink commented Jun 24, 2026

Copy link
Copy Markdown
Contributor

Closes #30

Adds management and performance fees to FCMVault. Off by default (rates 0, recipient unset); the admin configures them post-deploy via setters.

Mechanics

  • Management — NAV × bps × Δt / year (billable gap clamped at one year, so a long dormancy can't catch-up-bill more than the annual rate).
  • Performance — bps × (gain in WETH-per-share above a strict, flow-neutral high-water mark). WETH-denominated, so the HWM excludes WETH price beta and charges only the strategy's carry; no charge in drawdown, no double-charge. Crystallizes on unrealized, oracle-marked NAV — bounded by the strict all-time HWM, the 50% cap, and dilution (not asset outflow).
  • Collected by minting shares to feeRecipient (dilution) — no assets leave the vault, so collection never triggers an unwind/swap.
  • Accrual_accrueFees() runs at the top of deposit/redeem/redeemInKind/rebalance, plus a permissionless accrueFees(). Accrues Morpho interest first; advances the clock + HWM unconditionally so fees meter from when they're enabled, never retroactively.
  • CapsMAX_MANAGEMENT_FEE_BPS 10% / MAX_PERFORMANCE_FEE_BPS 50%; setters (DEFAULT_ADMIN_ROLE) revert above them and accrue at the old rate first.

@jribbink jribbink marked this pull request as ready for review June 26, 2026 09:01
Comment thread solidity/src/FCMVault.sol Outdated
Comment thread solidity/test/FCMVault.t.sol
@jribbink jribbink merged commit 430cb7d into main Jul 7, 2026
4 checks passed
@jribbink jribbink deleted the jribbink/fees branch July 7, 2026 01:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Fees (Management, Performance)

2 participants