Skip to main content
Vault Smart Contracts

Covered Call Token Technical and Smart Contract Details

Updated over a week ago

Summary

Lyra LRT Vault Tokens are erc20s that represent the payoff of vaults which hold a yield bearing asset (i.e. weETH, rswETH, sUSDe) and periodically buy/sell structured option products against that collateral (i.e. covered call spreads, long put spreads). The tokens are generated by locking LRTs within a Lyra Tokenized SubAccount (TSA) and receiving back shares of that account.

To complete the deposit and receive the TSA-Tokens on the chain, three steps must be completed:

  • Deposit asset to Lyra Chain

  • Deposit asset into the Tokenized SubAccount (mint TSA-Token)

  • Withdraw TSA-Token to original chain

Deposit LRT and Mint C-Token

Deposit LRT to Lyra Chain

Assets must be deposited to Lyra Chain to be able to enter the TSA. Socket DLTech bridges are used to enable near instant deposits and withdrawals on lyra. More information on the bridges can be found here, and a more in depth technical breakdown can be found here. DLTech has been audited by both Zellic and Hexens:

This will mint a token on Lyra Chain that represents the deposited asset.

Of note, assets from multiple different chains can be deposited in their respective “Vaults” on each chain, and generate the same token on Lyra Chain’s side (single “Connector").

Deposit Asset into TSA

LRTs held on Lyra Chain can now be deposited into the TSA. The TSA is an upgradeable contract that is a simple implementation of the OpenZeppelin ERC20WrapperUpgradeable. This is deployed behind the TransparentUpgradeableProxy.

Withdraw TSA-Token

TSA-Tokens, similar to the the underlying asset, are transferred to other chains via the socket. The only difference being that there is one “Vault” on Lyra Chain, and multiple “connectors” that can mint/burn the token to transfer them between chains.

Lyra TSA Deposit Hook

Socket bridges implement a “hook” architecture which allows to transactions to be triggered on the completion of the deposit. Lyra utilises this structure to enable the completion of this full round trip with a single user action. More details can be found in the Socket docs under the “Hooks” section.

TSA TradingExecution

🚧 In the current state, the contracts simply hold assets. The contracts will be upgraded to implement logic to deposit the LRTs into a Lyra Protocol Subaccount, and begin trading using the funds deposited to the TSA.

Mainnet contract addresses

weETH (Wrapped ether.fi ETH)

weETHC (Wrapped ether.fi ETH Covered Call Tokens)

weETHCS (Wrapped ether.fi ETH Covered Call Spread Tokens)

weETHBULL (Wrapped ether.fi ETH BULL Tokens)

rswETH (Restaked Swell ETH)

rswETHC (Restaked Swell ETH Covered Call Tokens)

rsETH (Kelp DAO Restaked ETH)

rsETHC (Kelp DAO Restaked ETH Covered Call Tokens)

sUSDe (Staked USDe)

sUSDeBULL (Staked USDe BULL Tokens)

LBTC (Lombard Bitcoin)

LBTCCS (Lombard Staked Bitcoin Covered Call Spreads)

LBTCPS (Lombard Staked Bitcoin Covered Put Spreads)

Testnet

weETH (Wrapped ether.fi ETH)

weETHC (Wrapped ether.fi ETH Covered Call Tokens)

weETHCS (Wrapped ether.fi ETH Covered Call Spread Tokens)

weETHBULL (Wrapped ether.fi ETH BULL Tokens)

rswETH (Restaked Swell ETH)

rswETHC (Restaked Swell ETH Covered Call Tokens)

rsETH (Kelp DAO Restaked ETH)

rsETHC (Kelp DAO Restaked ETH Covered Call Tokens)

sUSDe (Staked USDe)

sUSDeBULL (Staked USDe BULL Tokens)

LBTC (Lombard Bitcoin)

LBTCCS (Lombard Staked Bitcoin Covered Call Spreads)

LBTCPS (Lombard Staked Bitcoin Covered Put Spreads)

Did this answer your question?