The SmartIndex community ask for an ETF-like service for a long time. This allows any investor to deposit any desired amount of BCH and it gets converted to a basket of assets. These assets and their allocation are the same as the assets in the SmartIndex portfolio, which most of them are stacked to give yields.
How will the SmartIndex ETF work?
This project will be managed by a server in a trusted manner, as building a project this big on Solidity if out of budge and I don't have the required knowledge. Most of the code being writter has been test on SmartIndex: operations involving taking the weekly yields (unstack assets, sell them, add liquidity, farm LP tokens...) are already done by the server. A quick summary about hois project will work:
- Alice enters the ETF frontpage, where there's a wallet address to deposit any desired amount of BCH to invest.
- A watchdog running on the server detects a new input transaction. The watchdog mints ETF tokens that represents the share Alice will have in the ETF. This is a simple SEP20 token.
- The server starts moving the assets: a small fee (still to be decided) will be located to the SmartIndex portfolio and to the admin wallet, the rest is used to buy the tokens and stacked them. This also includes farming liquidity pools.
- Assets in the ETF portfolio and their yields can be tracked just like SmartIndex portfolio.
- If SIDX token holders make a change in the portfolio assets allocation, this will be reflected on the ETF portfolio. The idea is that ETF investors can take profit of good strategies without doing nothing.
- Alice can redeem her tokens just sending them back to the wallet. The server will do the reverse process (unstack and sell the assets) and send to Alice her corresponding investment.
What are the drawbacks?
At the moment, the biggest drawbacks are: