A repost of my old blog from 9th November 2020
Introduction
Market capitalisation based index funds should be simple to manage: buy the tokens in the correct ratios, then hold until you want to sell. However, with continual token issuance, migration and burn there is a need for ongoing management.
Antony Sassano has already described the process used in the November rebalance. However, I wanted to dig a little deeper to try and understand what is going on:
Process
The overall process for management of the DPI index fund is:
Methodologist reviews components and decides if any need to be added or removed.
3. Methodologist reviews circulating market cap of each component and calculates the ratios
3. The ratio is then used to calculate the fraction (weight) of each token within a single unit of $DPI. This is then published.
4. Once the weights are agreed, the manager then identifies which tokens need to be purchased or sold so that $DPI components match the required weights.
5. The manager then identifies the best markets to trade (and size of orders) in order to minimise slippage.
6. The manager executes the trades.
Personally, I think the key is to look at the ratio of circulating tokens for each component, this means that the price and market cap can be ignored as they will fluctuate with the market.
The methodologist recommendations for the end of October 2020 are presented in table 1:
Personally speaking, I struggle to understand the impact of the changes made as expressed in this table (note that the AAVE previous weighting is most likely based on LEND which is migrating to AAVE with a 1/100 change in the number of tokens and a corresponding x100 price impact — The $DPI treasury migrated LEND to AAVE in October).
So, I’ve looked at the exact amounts transferred. The information as presented doesn’t exactly jump off the page either (Figure 1)
Following some number crunching and head scratching I think the following definitions are correct:
currentUnit is the number of a token in a single unit of DPI (note that there is a 1*10¹⁸ factor based on token decimals).
newUnit is the number of a token in a single unit after the rebalance.
notionalInToken, is the total number of the token to be changed within the DPI treasury.
notionalInUSD is the total value of that token sold or purchased to rebabalnce the DPI treasury.
tradeNumber is the number of trades for that asset to produce acceptable slippage.
After some more manipulation in a spreadsheet, I get the following summary in terms of fractions and $USD value of each token in 1 unit of $DPI at the time of the rebalance:
This shows the absolute changes. However, I think it’s easier to look at the % change in the token weightings:
The two largest increases are $UNI and $COMP. This is due to ongoing issuance for both. Uniswap was liquidity mining 333,333 UNI per day (0.15% of circulating supply) until the 17th of November (now stopped). Compound was issuing 2,313 COMP per day (0.06% of circulating supply). $AAVE has the largest reduction at -2.5%. I think that this was to correct for a miss-match in the weights related to the migration from LEND in October 2020.
As $YFI has a fixed supply, with all available tokens in circulation, I have calculated the relative change for each vs the -0.5% seen for YFI. This should give an indication of the relative rate of token issuance / release from vesting / burn for the different tokens. Excluding $AAVE, MKR is the only token to be reduced relative to $YFI, which is in line with the burn mechanism.
Due to the size of the trades , and the available liquidity, a total of 71 trades (https://etherscan.io/address/ 0x25100726b25a6ddb 8f8e68988272e1883733966e) were required to complete this rebalance. Including 24 for AAVE.
Impact of price change
As the weights of each token have now been set for November, $DPI is free to float as a market cap weight fund with the %USD of each dependent on the individual prices. Figure 2 presents the %USD composition of the $DPI treasury (and thus the %USD of each $DPI token) at the time of writing. The current value can be found by refreshing the query here on dune analytics (note: Query needs to be updated to add MTA and SUSHI)
Final thoughts
Regular rebalancing a market cap index fund is required to keep pace with the changes in the number of circulating tokens for each asset. With the LEND to AAVE migration correction, the November 2020 rebalance required more trades than would be typical. Until there is another addition or deletion from the index, I expect future rebalancings to be smaller.
Disclosure and Disclaimer
I’m a long term investor in crypto currencies including DeFi. I am an active member of the INDEXcoop which manages the $DPI fund.
This is not financial advice, all investments are risky, crypto investments are riskier than most. Do your own research. Do not invest more than you can afford to lose.