Intelligent DeFi Swaps and MetaLiquidity

by EJ Spode

A standard routine that DeFi investors must endure, is the often arduous and expensive process of moving from one staked asset to another. To illustrate, imagine that one wanted to move from yWETH in a YFI vault, to staked YFI on another platform. As matters stand one must first remove the yWETH from the YFI vault (possibly paying a performance fee on exit), yielding WETH, swapping the WETH for ETH, using the ETH to buy YFI, and staking the YFI on the new platform, in some cases paying a 1% fee on staking, anticipating yet another (possibly 20%) “performance fee” on exit from the new platform. Each of these steps can in turn involve additional ETH-burning steps as you deconstruct and reconstruct staking positions. Should it not be possible to directly swap from one staked position to another, skipping all of the intermediate steps and expenses?

There is certainly precedent for such swaps. Cream Finance, for example, has a swap (and liquidity pool) pairing yYCRV (yUSD) with yETH. (This is a bit of an oversimplification, as the actual trading pairs must be staked in Cream Finance, so technically the swap is crYYCRV/crYETH, but you get the idea). It should be possible to move from staked position to staked position without the intermediate steps.

While most liquidity pools today feature simple asset pairs, the recent proliferation of liquidity pool protocols (from Uniswap to Sushiswap to Sakeswap, to Mooniswap etc) suggests opportunities for more intelligent asset pairs. If a staked asset has a contract address, then it should be possible to utilize it in an asset pairing. While this might hinder the ability of protocols to raise money through “performance fees” and “deposit fees” that should not be the concern of investors.

Intelligent swapping protocols should have dynamic approaches to providing liquidity pairs, anticipating capital movement within the DeFi ecosystem and crafting vault-to-vault trading pairs and like pairs for potential clients.

Of course, this approach to capital movement can be applied to more than assets residing in vaults, it can also apply to assets that are in liquidity pools. Just as envaulted assets have contract addresses, so too do liquidity pools. This opens the door to MetaLiquidity swaps — swaps directly between liquidity pools.

Once again, we have all experienced the labor and expense of breaking down one position in a liquidity pool and reconstructing a new one using new assets (and sometimes the same assets in a new vault). But this work and expense is senseless, and helpful swapping protocols can help users avoid it. This can be done by introducing swaps between liquidity pools. In other wise, swapping protocols ought to facilitate the supply of MetaLiquidity.

Where does it end? Can we anticipate swaps of swaps of swaps? While it is hard to envision an application for MetaMetaSwaps, it is certainly a good idea to keep in mind that such things are possible if one day needed. A more likely need would be a swap that skipped a level of the hierarchy. For example, it might be useful to have a swap that paired an asset like WETH with a MetaLiquidity pool. Such a pairing would allow people to take positions in a MetaLiquidity pool without going through the expense of layering the necessary ingredients. Similarly, such a pool would enable liquidity providers to exit such a pool without carefully deconstructing their positions.

To date, swapping protocols have shown ingenuity in cloning existing swapping protocols and in finding food-and-beverage-based names for their new protocols, but perhaps they have not been sufficiently creative in the their creation of asset pairs. Hopefully, this will soon change, and we will see a new era of creative pool construction, including pools that make life easier for liquidity providers by offering them tools for the provision of and utilization of MetaLiquidity.

Writes about Philosophy, Crypto Anarchy, Cryptocurrencies, DeFi, Generative Linguistics. More info: https://sites.google.com/site/peterjludlow/