Vault Design

Points:

  • Oracle Free Perpetual Option Protocol

  • The exchange of tokens relies on Uniswap

  • Applicable to all token pairs in Uniswap

\begin{align*} [Predy_{v3 Core}]\\ OptionVault_{value} &= Asset - Debt + Margin&\\ &= f_2(x_a,y_a,LPT_{asset}) - f_2(x_d,y_d,LPT_{debt})&\\ &= f_2(x_a,y_a, f_1(x,y)) - f_2(x_{d},y_d,f_1(x,y))&\\ &where, LPT_{value} = f_1{(x, y)} \ inherited \ from \ Uniswap &\\ &Example: x = ETH, y = USDC, \sqrt{P} = \sqrt{\frac{y}{x}} &\\ f_2(x_a,y_a, f_1(x,y)) &= (x_a + L *\frac{\sqrt{P_b} - \sqrt{P_{twap}}}{\sqrt{P_{twap}}\sqrt{P_b} }) * P_{twap} + y_a + L*(\sqrt{P_{twap}} - \sqrt{P_b})&\\ f_2(x_d,y_d, f_1(x,y)) &= (x_d + L *\frac{\sqrt{P_b} - \sqrt{P_{twap}}}{\sqrt{P_{twap}}\sqrt{P_b} }) * P_{twap} + y_d + L*(\sqrt{P_{twap}} - \sqrt{P_b})&\\ &where, L = \sqrt{xy}, P_a =1.0001^{lowerTick} , P_b=1.0001^{upperTick} , P_a < P < P_b &\\ \end{align*}

Smart contracts manage OptionVaultOptionVault by performing three main operations.

  • Exchange of xx and yy

  • AssetAsset Management

  • DebtDebt Management

OptionVaultOptionVault has MarginMargin to pay/earn Premium with the Asset/DebtAsset/Debt management as follows:

  • Mint and Burn of LPTLPT, Lending and borrowing of LPTLPT

  • Deposits and withdrawals of xx or yy

  • Lending and borrowing of xx or yy

Predy v3 defines SafeSafe as follows, allowing Option positions to be taken in the Vault.

[SafePredyv3]OptionVaultvalue=f2(xa,ya,LPTasset)f2(xd,yd,LPTdebt)+Margin>Min.Deposit(>0)\begin{align*} [Safe_{Predy_{v3}}]\\ OptionVault_{value} &= f_2(x_a,y_a,LPT_{asset}) - f_2(x_d,y_d,LPT_{debt}) + Margin &\\ & > Min.Deposit (> 0)&\\ \end{align*}

Note:

  • In smart contracts, each option is corresponding to a SubVault.

  • Daily Premium payments are made in Margin and are not compounded.

Last updated