Solidity API
OrionTransparentVault
A transparent implementation of OrionVault where curator intents are submitted in plaintext
_portfolio
struct EnumerableMap.AddressToUintMap _portfolio
Current portfolio shares per asset (w_0) - mapping of token address to live allocation
_portfolioIntent
struct EnumerableMap.AddressToUintMap _portfolioIntent
Curator intent (w_1) - mapping of token address to target allocation
constructor
constructor(address vaultOwner, address curator, contract IOrionConfig configAddress, string name, string symbol, uint8 feeType, uint16 performanceFee, uint16 managementFee) public
Constructor
Parameters
Name | Type | Description |
---|---|---|
vaultOwner | address | The address of the vault owner |
curator | address | The address of the vault curator |
configAddress | contract IOrionConfig | The address of the OrionConfig contract |
name | string | The name of the vault |
symbol | string | The symbol of the vault |
feeType | uint8 | The fee type |
performanceFee | uint16 | The performance fee |
managementFee | uint16 | The management fee |
submitIntent
function submitIntent(struct IOrionTransparentVault.Position[] intent) external
Submit a plaintext portfolio intent.
Parameters
Name | Type | Description |
---|---|---|
intent | struct IOrionTransparentVault.Position[] | Position structs array containing the tokens and plaintext weights. |
getPortfolio
function getPortfolio() external view returns (address[] tokens, uint256[] sharesPerAsset)
Get the transparent portfolio.
Return Values
Name | Type | Description |
---|---|---|
tokens | address[] | The tokens in the portfolio. |
sharesPerAsset | uint256[] | The shares per asset in the portfolio. |
getIntent
function getIntent() external view returns (address[] tokens, uint32[] weights)
Get the transparent intent.
Return Values
Name | Type | Description |
---|---|---|
tokens | address[] | The tokens in the intent. |
weights | uint32[] | The weights in the intent. |
updateVaultState
function updateVaultState(struct IOrionTransparentVault.Position[] portfolio, uint256 newTotalAssets) external
Updates the vault's portfolio state and total assets
Can only be called by the liquidity orchestrator. Clears the previous portfolio and replaces it with the new one.
Parameters
Name | Type | Description |
---|---|---|
portfolio | struct IOrionTransparentVault.Position[] | Array of Position structs It contains the new portfolio token addresses and plaintext number of shares per asset. |
newTotalAssets | uint256 | The new total assets value for the vault |