Risks and Nuances
When interacting with any smart-contract protocol, there is always some degree of risk that an edge case or code vulnerability can result in funds being lost. We take security very seriously and have extensively engaged multiple auditors across every release of new code, and maintain a comprehensive unit and integration testing suite.
It’s important to note that despite these precautions, there is still a risk that some edge case or bug exists which could result in user funds being lost. You can review the latest audit report here.
Enzyme relies on oracles to calculate the GAVs of any investment product. If these oracles are compromised in any way, they can provide attack vectors to users which could lead to a loss of funds.
It is important to note that a vault which is able to interact with external positions is no longer trustless and it is possible some or all of your funds could get temporarily or permanently locked in the vault. We strongly recommend that public vaults with unknown managers do not interact with external positions. This is the recommended option in the template we provide.
If assets appear in a Vault which were not acquired through trading, they will be untracked by the Vault and therefore not reflected in the pricing (GAV, NAV) of the Vault. Examples of when this could happen include airdrops or when a Vault Manager claims assets owed from yield farming. In order to make these assets "trackable" by the Vault, you should add them assets to Tracked Assets from your settings page. Note that as long as these assets are not claimed, the Vault may be arbitraged. It is therefore advisable that you either leverage the suite of policies available (eg. the
Buy Shares Caller Whitelistor a
whitelist) to mitigate these risks.
It is the Portfolio Manager's responsibility to stay on top of any nuances surrounding tokens. The available asset universe is not intended to be any list of endorsement. Things to look out for could include the risk of token migrations, deviations from the ERC-20 standard, the degree of centralised custodial risk (eg. USDT) and how prices are derived (for example, we use the BTC/ETH rate for WBTC).
If you are planning to trade any synths, you should either
- Denominate your product in sUSD, or;
- add sUSD as a tracked asset and hold a small position in your portfolio at all times.
Synths can be frozen or disabled at any time in which case sUSD will be sent back to synth holders instead. If you are not tracking this asset, it means the value may not be reflected in your portfolio potentially leaving you and other depositors vulnerable to arbitrageurs.
Denomination assets are always tracked regardless of whether you hold the asset or not.
You can hold up to 20 positions in any Enzyme product. Note that gas costs required to operate (eg. investments, trades, etc) increase as the number of assets you hold increases.
A few things to note if farming is part of your Vault strategy.
- When you have unclaimed tokens, your Vault potentially becomes a target for arbitrageurs (at the expense of other depositors in your Vault). We would recommend that you either claim them regularly or use a whitelist to prevent malicious actors.
- Once you have claimed your rewards (in this case, COMP), the position won't update in your overview until either you do a trade or you receive a new deposit. However, your Vault's NAV will no longer be open to arbitrage until substantial rewards accrue.
- If you think that you'll only be claiming rewards once a week, it might make sense to use an entrance fee to deter arbitrageurs.