Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.voltr.xyz/llms.txt

Use this file to discover all available pages before exploring further.

Fee parameters are configured at vault creation and can later be updated by the admin. See Vault Configuration Updates.

Core Concepts

Locked Profit

Realized profit is not always immediately available. It decays over the configured locked-profit window to reduce extraction and timing risk.

High Water Mark

Performance fees only apply to profit above the historical peak asset-per-LP ratio.

Fee Split

Eligible fees are divided across manager, admin, and protocol fee buckets according to the configured basis points.

SDK Helpers

Harvest Accumulated Fees

import { getHarvestFeeInstructionAsync } from "@voltr/vault-sdk";

const harvestIx = await getHarvestFeeInstructionAsync({
  harvester: harvesterSigner,
  vaultManager: vaultManagerAddress,
  vaultAdmin: vaultAdminAddress,
  protocolAdmin: protocolAdminAddress,
  vault: vaultAddress,
});

Calibrate High Water Mark

import { getCalibrateHighWaterMarkInstructionAsync } from "@voltr/vault-sdk";

const calibrateIx = await getCalibrateHighWaterMarkInstructionAsync({
  admin: adminSigner,
  vault: vaultAddress,
});

Read Fee State

import {
  getAccumulatedAdminFeesForVault,
  getAccumulatedManagerFeesForVault,
  getCurrentAssetPerLpForVault,
  getHighWaterMarkForVault,
  getVaultLpSupplyBreakdown,
} from "@voltr/vault-sdk";

const adminFees = await getAccumulatedAdminFeesForVault(rpc, vaultAddress);
const managerFees = await getAccumulatedManagerFeesForVault(rpc, vaultAddress);
const hwm = await getHighWaterMarkForVault(rpc, vaultAddress);
const assetPerLp = await getCurrentAssetPerLpForVault(rpc, vaultAddress);
const lpBreakdown = await getVaultLpSupplyBreakdown(rpc, vaultAddress);
These helpers are the preferred replacement for older VoltrClient fee methods.