APY Calculations

APY vs APR

For convenience, Factor Studio utilizes both Annual Percentage Yield (APY) and Annual Percentage Rate (APR) depending on the context of the earnings generated.

  • Annual Percentage Yield: The rate of return (i.e. interest/yield) per year that takes into account any earnings that are compounded within the year.

  • Annual Percentage Rate: The rate of return (i.e. interest/yield) per year.

Projected APY

projectedAPY=strategyAPY+scaleAPY+boostAPYprojectedAPY=strategyAPY+scaleAPY+boostAPY

The projectedAPY provides an estimate of the yearly compounded returns that a depositor will receive by depositing into the specified strategy vault. The projectedAPY is the sum of APYs generated by the strategy as well as protocol rewards which are allocated to the vault via Factor Scale and Factor Boost.

Strategy APY

The strategyAPY is the estimated yearly compounded returns that arise from the execution of the automated strategy. Consequently, the APY calculations differs depending on the strategy type.

Leverage

strategyNetValueUSD=strategyAssetValueUSDāˆ’strategyDebtValueUSDstrategyNetValue_{USD} = strategyAssetValue_{USD} - strategyDebtValue_{USD}
strategyAPY=(strategyAssetValueUSDƗsupplyAPY)āˆ’(strategyDebtValueUSDƗborrowAPY)strategyNetValueUSDstrategyAPY = \frac{(\text{strategyAssetValue}_{USD}\times{\text{supplyAPY}})-(\text{strategyDebtValue}_{USD}\times{\text{borrowAPY}})}{strategyNetValue_{USD}}

For leverage strategies, the strategyAPY takes into account the costs of borrowing as well as any interest accrued from lending. The displayed strategyAPY is calculated based on the maximum leverage for that strategy:

strategyAPY=(strategyAssetValueUSDƗsupplyAPY)āˆ’(strategyMaxDebtValueUSDƗborrowAPY)strategyNetValueUSDstrategyAPY = \frac{(\text{strategyAssetValue}_{USD}\times{\text{supplyAPY}})-(\text{strategyMaxDebtValue}_{USD}\times{\text{borrowAPY}})}{strategyNetValue_{USD}}
strategyAPY=(strategyAssetValueUSDƗsupplyAPY)āˆ’(strategyAssetValueUSDƗLTVmaxƗborrowAPY)strategyNetValueUSDstrategyAPY = \frac{(\text{strategyAssetValue}_{USD}\times{\text{supplyAPY}})-(\text{strategyAssetValue}_{USD}\times{LTV_{max}}\times{\text{borrowAPY}})}{strategyNetValue_{USD}}

The positionAPY for leverage strategies utilizes a similar approach where the leverage multiplier affects the position's strategyAssetValue and strategyDebtValue:

positionAPY=(positionAssetValueUSDƗsupplyAPY)āˆ’(positionDebtValueUSDƗborrowAPY)positionNetValueUSDpositionAPY = \frac{(\text{positionAssetValue}_{USD}\times{\text{supplyAPY}})-(\text{positionDebtValue}_{USD}\times{\text{borrowAPY}})}{positionNetValue_{USD}}

Yield

strategyAPY=(1+protocolAPRn)nāˆ’1strategyAPY=\left(1+\frac{protocolAPR}{n}\right)^n-1

For yield strategies, the strategyAPY is calculated by compounding the underlying protocol's APR by the frequency of reinvestments, nn.

positionAPY=(1+protocolAPRn)nāˆ’1positionAPY=\left(1+\frac{protocolAPR}{n}\right)^n-1

As all liquidity within a yield strategy vault is fungible, the strategyAPY also represents the estimated yearly compounded returns for any positions within the strategy (i.e. the positionAPY).

Factor Scale APY

Factor Scale emission rewards are linearly distributed as esFCTR based on the proportion of votes that each strategy vault receives in the previous epoch (i.e. weekly) voting period. The total amount of esFCTR allocated as epoch rewards to Factor Scale vaults depends on the emission milestones reached.

As Factor Scale emissions are only allocated to deposits within the epoch, the scaleAPR is calculated using information from the active epoch. Note that as there is a 90 day linear vesting schedule for esFCTR, Factor Scale rewards are not auto-compounded by the strategy vaults.

vaultVotesProportion=voteCountvaultvoteCounttotalvaultVotesProportion = \frac{voteCount_{vault}}{voteCount_{total}}
scaleRewardsannual=scaleRewardssecondƗsecondsInYearscaleRewards_{annual} = scaleRewards_{second}\times{secondsInYear}
scaleAPR=vaultVotesProportionƗscaleRewardsannualscaleVaultsTVLUSDscaleAPR = \frac{vaultVotesProportion\times{scaleRewards_{annual}}}{scaleVaultsTVL_{USD}}
scaleAPR=voteCountvaultvoteCounttotalƗscaleRewardsannualscaleVaultsTVLUSDscaleAPR = \frac{voteCount_{vault}}{voteCount_{total}}\times\frac{scaleRewards_{annual}}{scaleVaultsTVL_{USD}}

The scaleAPY assumes compounding upon vesting of esFCTR (i.e. 90 days esFCTR vesting which equates ton ā‰ˆ 4):

scaleAPY=(1+scaleAPRn)nāˆ’1scaleAPY=\left(1+\frac{scaleAPR}{n}\right)^n-1

Factor Boost APY

Factor Boost rewards are distributed linearly over the period of 7 days from when the reward tokens are deposited. As Factor Boost rewards are only allocated to deposits within the Boost period, the boostAPR is calculated using information from the active boost period.

boostRewardsannual=boostRewardssecondƗsecondsInYearboostRewards_{annual} = boostRewards_{second}\times{secondsInYear}
boostAPR=boostRewardssecondboostVaultsTVLUSDƗsecondsInYearboostAPR = \frac{boostRewards_{second}}{boostVaultsTVL_{USD}}\times{secondsInYear}

The boostAPY assumes weekly compounding (i.e. n = 52):

boostAPY=(1+boostAPRn)nāˆ’1boostAPY=\left(1+\frac{boostAPR}{n}\right)^n-1

Last updated