Skip to main content

Fees and Performance

How Curator Fees Work

Fee Mechanics

Oblivion uses share dilution for fee collection. No assets are removed from the vault. Instead, new shares are minted to the fee recipients (curator + protocol), slightly diluting existing shareholders. This is the same model used by traditional ETFs.

Your Fee Revenue

Your annual fee depends on the cadence you chose:

CadenceAnnual FeeYour Share (at 80% curator split)
Weekly0.90%0.72% of AUM/year
Monthly0.75%0.60% of AUM/year
Quarterly0.50%0.40% of AUM/year

Example: A monthly vault with $1M in deposits and 80% curator fee share earns you approximately $6,000/year in management fees.

Fee Collection Timing

Fees are not collected continuously — the keeper calls collect_fees periodically. The fee calculation is pro-rated based on time elapsed since the last collection:

fee_shares = total_shares * fee_bps * seconds_elapsed / (10000 * seconds_per_year)
curator_shares = fee_shares * curator_fee_share_bps / 10000
protocol_shares = fee_shares - curator_shares

Fee collection requires fresh oracle prices to ensure fees are calculated on accurate NAV.

Fee Caps

The protocol enforces max_management_fee_bps. You cannot set fees above this cap, protecting depositors from predatory fees.

Curator Points

When the points system is active, you earn curator points proportional to depositor activity:

curator_points = depositor_points * curator_points_bps / 10000

More depositors holding more shares for longer = more curator points. This aligns your incentives with depositor retention.

Performance Tracking

On-Chain Metrics

Your vault tracks these performance fields automatically:

MetricDescription
cumulative_deposit_usdTotal USD deposited over vault lifetime
cumulative_withdraw_usdTotal USD withdrawn over vault lifetime
net_external_flow_usdNet deposits minus withdrawals
cumulative_realized_pnl_usdRealized profit/loss from swaps and yield
cumulative_unrealized_pnl_usdUnrealized profit/loss based on current prices
performance_baseline_nav_usdNAV baseline for IRR calculation

Client Performance Helpers

The TypeScript SDK provides helpers to calculate:

import { sharePrice, allTimeReturn, annualizedReturn, realizedPnl, unrealizedPnl } from '@oblivion/client'

const price = sharePrice(vault) // current share price in USD
const allTime = allTimeReturn(vault) // total return percentage
const annual = annualizedReturn(vault) // annualized return (IRR proxy)
const realized = realizedPnl(vault) // realized PnL in USD
const unrealized = unrealizedPnl(vault) // unrealized PnL in USD

What Makes a Successful Vault

Depositors evaluate curators on:

  1. Returns: all-time and annualized performance
  2. AUM growth: growing deposits signal trust
  3. Consistency: steady returns with controlled drawdowns
  4. Transparency: on-chain verifiable performance metrics

The combination of fees, points, and performance tracking gives you a complete incentive and reputation system.