HyperFunFactory

VaultFactory (HyperFunFactory.sol)

HyperFunFactory.sol is the UUPS upgradeable factory for deploying HyperFun Vaults and managing global settings.

Inheritance

contract HyperFunFactory is
    Initializable,
    UUPSUpgradeable,
    OwnableUpgradeable

Constants

uint256 public constant MAX_PERFORMANCE_FEE = 3000;  // 30%
uint256 public constant MAX_EXIT_FEE = 5000;         // 50%
uint256 public constant L1_INIT_FEE = 1000000;       // 1 USDC (6 decimals)

State Variables

Implementation Contracts

address public coreImplementation;      // HyperFunToken implementation
address public tradingImplementation;   // HyperFunTrading implementation

Platform Settings

Default BC Parameters

Builder Fee Settings

Vault Registry


Global Vault Settings

All vaults read these settings via getGlobalSettings() and getGlobalSettingsExt().

Core Settings

Rebalance Settings

Buy Limit

Exit Fee

BC Virtual Settings

Dynamic NAV Virtual (V35-V36)

Graduation Tiers (V37-V38)


Vault Creation

Simple Creation

Creates vault with default BC parameters.

Advanced Creation (Owner Only)

Creates vault with custom BC parameters.

Creation Flow

  1. Validate parameters (name, symbol, fee <= 30%)

  2. Collect creation fee (if set)

  3. Collect L1 init fee (1 USDC) from leader

  4. Deploy Trading proxy (ERC1967)

  5. Deploy Token proxy (ERC1967)

  6. Initialize Trading with Token reference

  7. Initialize Token with:

    • Leader = msg.sender

    • Admin = Factory (temporary)

    • Trading module

    • BC parameters

  8. Approve builder fee (if configured)

  9. Set admin to factory owner

  10. Initialize L1 account (deposit 1 USDC)

  11. Register vault in registry

  12. Emit VaultCreated event


View Functions

Vault Registry

Global Settings

Default Parameters

Graduation Tiers


Admin Functions (Owner Only)

Implementation Management

Updates implementations for future vaults. Existing vaults unaffected until upgraded.

Platform Settings

Default Parameters

Builder Fee

Vault Verification

Global Settings

Dynamic NAV Virtual

Graduation Tiers

Emergency Functions


Events


Upgrade Authority

Only factory owner can upgrade the factory itself.


Default Values Summary

Setting
Default
Description

globalTradingFeeBps

100

1% trading fee

globalMaxPremiumBps

10000

Max 100% premium over NAV

globalMaxDiscountBps

5000

Max 50% discount from NAV

globalMinDepositUsdc

5 USDC

Minimum buy amount

globalRebalanceLowBps

4800

Rebalance when EVM < 48%

globalRebalanceHighBps

5200

Rebalance when EVM > 52%

globalReserveRatioBps

5000

Target 50% EVM reserve

globalMinReserveRatioBps

3000

Warning at 30%

globalMaxBuyBps

100

Max 1% of vault per buy

globalBcVirtualMinimumBps

500

5% BC Virtual floor

globalMaxBcRatioBps

0

Disabled (0) or ratio cap

defaultBcVirtualBase

2M

Virtual USDC pool

defaultBcVirtualTokens

2M

Virtual token pool

defaultInitialAssets

100K

BC scaling baseline

L1_INIT_FEE

1 USDC

L1 account init fee


Exit Fee Tiers (Default)

Days Held
Fee

< 7 days

15%

7-30 days

8%

30-90 days

3%

> 90 days

0%


Contract
Role

HyperFunToken

Core vault, reads global settings

HyperFunTrading

Trading module, reads rebalance settings

Last updated