Maximize Capital Efficiency and Yield with Balancer Boosted Pools Jeffrey Bennett
Ethereum Denver·Sun, Oct 9, 2022, 12:00 AM
Transcript
hi there jeff from balancer we're very proud to be sponsors of this year's e denver uh be sure to check out our booth uh we have 50 000 in uh in bounties available one of which concerns the the topic of this talk so if you're a hacker and you like money you may want to pay attention okay all right so um however i'm not sure everyone necessarily knows what balancer is and what it does i've made that assumption before in the past and been wrong so i'm going to start with a little intro of what we do and uh make sure we're all on the same page and hopefully we'll be able to follow along better when we get to the main topic so one way to think of of balancer is it's a generalized generalization of the amm concept that's focused on asset management so amms were popularized by uniswap in 2018 they offered two token liquidity pools with equal value tokens so what uh balancer did first is parameterize these kinds of pools so instead of uh just 50 50 you could have 80 20 or 60 40. you could also change the swap fees you could have a whole range from very low to very high for different use cases and you could make them dynamic they weren't necessarily fixed you could change the weights change the swap fees and of course we supported more tokens we had a constant product invariant that supported up to eight tokens on v1 so right away uh even doing nothing else that actually supported a lot of different kind of products on the platform and so 80 20 pools for instance had unique tokenomics and high fee swing trade pools but the mission of balancer is to be the primary provider of programmable liquidity and the way you get there is to be a platform not a product or a set of products so not just different pools but different types pools each type of pool is its own primitive it can launch a thousand projects so i'll go over just a few of the pools that we've primitives that we've already created and this isn't the full list and this is just ours there's other pools that our partners have done so uh to start with we have liquidity bootstrapping pools so those are used for fair token launches and we've had several partners really take those and start running with them um copper and prime down for instance and they also do smart treasuries you can do use that for that we have stable pools with special stable math for trading stable coins with very low liquidity very low or high liquidity and low slippage we have both weighted and stable versions of pools that have oracles in them so these are embedded oracles you can query past past prices then we have boosted pools for capital efficiency that's the subject of this talk and managed pools that are coming soon those are pools that go more in the uh trad five direction so what are boosted pools uh i mentioned they were capital efficient and they're a type of stable pool so we already have a stable pool uh it's called stable three uh has had pretty good liquidity and it's just uh dye usdc and tether uh hundreds of millions but uh and it enabled uh you know easy trading of stable coins with low slippage but they just kind of sat there they weren't doing anything else so we're migrating from that to what we call the boosted pool so this is also the stable uh kind of stable pool uh we call it bba usd usd the a refers to ava so these this stable pool is yield farming on ava in the background very efficiently in fact about 95 of the of the liquidity is held in on ava in a tokens and about 200 million at the moment so i'll talk about these from really three perspectives uh what are the benefits to users and here i mean like traders and lps uh and then the i'll look at the value to builders so here i mean the pool creators either people making new just launching new pools or even making new pool types and then finally the opportunity this this presents to integrators so starting with users uh what do traders get well they get deep stable coin liquidity first we fully expect that most of the stable coin liquidity on balancer will migrate to these yield generating pools and the other thing you can do with these is direct swaps with a tokens so you can you can do swaps between die and a die and even die in a tether and you don't have to leave the platform so if you're a liquidity provider in this pool so liquidity providers of course all of them have swapped the apr and many have liquidity mining but on with the boosted pool you also have the av yield you're generating now of course you'll notice these aren't we don't have 700 percent ape madness here but that's because these yields are sustainable and uh balancers in it for the long run and in the long run you know we know that this era of liquidity mining and yield chasing won't last forever and when the music stops the protocols that survive will be those that can generate yield from sustainable long-term sources and that's also needed for for mass adoption that's where we're going so if you happen to have a position in the existing stable three pool we do have a migration tool uh one click if you if you see this button it means you got that you can one click migrate maybe it's two clicks uh check the fees uh it ain't cheap but uh if you're a whale it's uh definitely worth the migration so how do they actually work the boosted pools themselves so i said it's a special kind of stable pool and it's composed of an even more special type of pool called the linear pool and these have many innovations so first the math is different they have an invariant that uses uh the balances and rates so there's always a main token this uh if we use the die example the main tokens die and then the rate of that is always one by definition and then there's a wrap token so we'll say a die and that rate is relative to the main token um and then we have this uh virtual bpt or it's called phantom in the code and that's responsible for a lot of the uh the swap magic that i'll be describing in a minute there's also a sort of fundraising funding rate mechanism uh that incentivizes rebalancing these pools because you have and remember these pools are composed of the the collateral token and the a token and you want to have enough collateral token to facilitate easy trading but not so much that starts cutting into the yield so i'll describe that and then there's a little twist in there too that that derives from it being a tokens that i'll get to soon so uh looking at the the linear pools themselves this is how they look now from the outside this looks like a normal two token pool right that has die and a die and the way pools usually work is the other you have a vault interface you interact with all the pools through the vault the vault has you can swap you can join and you can exit and there's separate things separate calls so normally if you have a complex transaction that involves swaps and joins and exits you can't do it in one transaction because you have to make separate calls uh the vault is supports uh not re-entrant so if you're in a swap you can't do a joint then so what what this does is um there's a secret kind of third hidden token and it's the pool the bpt of the pool itself so it's kind of a self-referential thing so what happens when you deploy these is it pre-mints all of its own bpt and then it stores that in the vault along with the other tokens so now what this lets you do is a fit you're effectively joining and exiting just by a swap right because normally when you do a joint exit in a pool the pool itself is minting and burning so you transfer tokens in they go to the vault the pool means ppt and when you're exiting you do the reverse but here the ppt is a token of the pool so everything is a swap and that that enables you to do effective joins and and exits right in right along with a bunch of other swaps now i talked about the rebalancing so we have a there's like a lower limit here you need to have enough tokens so that you can swap without running out but you don't want too many or you'll cut into the yield so um there's a range in there where we call it the pool balanced and in that zone the free zone there are no fees so it's very efficient trade in there but if someone does a big trade and unbalances it then what happens is they do pay a fee and unlike most pools where the fees accrue to lps in this case the pool just they just sit there accumulating in the pools until there's a counter transaction that rebalances the pool and then whoever does that uh the pool distributes those fees to that rebalancer so that's how that that's what keeps these things in in balance and keeps most of the tokens generating yield while also facilitating trading and these uh rebalancers are also the people who are uh going out to ava and doing the the relatively expensive deposit and and withdraw to uh wrap and unwrap the avo tokens and that prevents that makes it so that the the retail users don't have to now the twist we note that a tokens are actually rebasing tokens and that means they can change their balances kind of asynchronously and that does not play well uh in the vault the vault uh has its own accounting and it does not expect balances of tokens to suddenly change so that means you can't put a tokens directly in the vault you have to wrap them so the the a die shown in there in the linear pool is actually wrapped 8 i and we are using the standard uh ava wrappers for this and all that really means um it's very cheap to wrap and unwrap these things it's not it's not like wrapping and unwrapping on ava all this means is that if you have an external a token operation so if you're passing in an a token or you're pulling out an a token that that needs a relayer and we have a batch rear for this purpose and it's pretty transparent to users um the ui will know if you need the relay or not if you do have to approve it the first time you use it but it is just a signature so it's it's pretty easy and transparent to users and this is only uh needed because these are these rebasing tokens if you had c die or y die or other things that don't require that we could put in the vault directly then you don't need this it's a lot simpler so that was the linear pool components of the boosted pool but now we're going to look at the boosted pool itself so remember it's a special kind of stable pool and the specialness is it's again that virtual bpt that's just like the the uh the linear ones so the stable pool is a it's called a stable phantom pool in the code and it is composed the one we deployed is composed of three linear pool bpts and its own bpt so and and this is this layering here is that's what enables the combinatorics so you can swap if you have you're constructing a swap you can swap um within the linear pools and then between the linear pools within the boosted pool so say you want to go from die to a tether right ordinarily if these were not this kind of pools you'd have to be joining and exiting and wrapping and unwrapping everything but here you just do you do it's one transaction one batch swap with three components you do it uh the first swap is with within the linear pool you send your die in you get the bpt of that die linear pool now remember that the boosted pool has these bpts as its pull tokens and you got to get to the tether somehow so you can simply swap the dye bpt for the tethered bpt now you're in the world of tether and then you simply do the final swap uh in in the linear tether pool to pull out the ausdt and uh you know again because we've got a tokens you have this this little battery layer step that's necessary for that if you had other tokens you wouldn't need to do that so how do you build on these things so we have it it's out there it's deployed what do you do with it well you can do a lot right out of the box so uh for instance you can simply deploy your own pool with the boosted pool bbt and whatever token you want and immediately you get concentrated liquidity between your token and all six of these stable coins including the yield generating ones all right now of course it doesn't have to be a weighted pool you could also deploy a metastable pool uh with the boosted pool api and some different stable coin and if you want to do a little more work remember these are primitives so you can build on these linear and phantom stables to to boost a completely different set of yield tokens so you can in fact we're working with overnight finance to to build a 4626 compatible linear pool when that comes out so 4626 is a standard for yield a standard wrapper for yield generating tokens so if you have a 4626 compare compatible wrap token you can directly create a linear pool from it when we deploy this and then from those linear pools you can use the phantom stable to make your own boosted pools with with any any arbitrary uh lending platform so very powerful and then uh looking at the integration opportunities so here i'm talking about aggregators and smart wallets you know zappers area and that sort of thing the first benefit it has is uh it simplifies the pool the operations or the pads that it has to do so rather than have to it doesn't have to go out to all these different protocols uh it can keep everything within balancer it doesn't have to go to you know curve and and uh all these other places uh and also it enables just by itself it enables uh very advanced applications so we have a boosted usd pool what if someone made a boosted euro pool i don't think ava wraps euros but if somebody did and someone made a boosted euro pool then you could do maybe a weighted or maybe a meta-stable pool of these two boosted pools and now you pretty much have one pool that is basically a forex exchange by itself plus it generates a yield so that's one of the things that's possible this kind of technology these primitives made possible uh and the now the interface to it now is kind of a work in progress we have a battery layer and that's what's needed for kind of large swaps and these little wrapping and wrapping of the rebasing tokens and it figures out all the the details of of how to construct the batch swaps and pass it into the vault and then we have the sor layer kind of on top of that that abstracts that a little bit more and has a simpler interface and then we have an sdk kind of on top of that and we now have an sdk team that his entire job is to make this easy so the sdk we're working toward having this sdk with a just dirt simple interface to all these complex functionalities and just make it very easy to use integrators so i threw a lot at you there um i told you what i was going to say and i said it and now it's time to to tell you what i said so what is the boosted pool value proposition right again from the user perspective what do users get they get direct swaps with yield tokens without having to go wrap and unwrap themselves you also get a deep concentrated stable coin liquidity and you have this organic sustainable yield that will you know withstand the test of time if you're a pool creator you get immediate instant combinatoric stable coin liquidity uh with whatever tokens you want uh and of course you get the the yield participation also you get the benefit and all your lps get the benefit of that and you have these primitives to work with so these generalize you can do completely new lending protocols completely new yield tokens really you don't even need to do yield tokens the linear pull mechanism is very general it really has to do with wrapping and unwrapping so you could um probably even you know if you had a token that had some other benefit for wrapping and unwrapping you could probably do that and make make the rates all one and do make something else with it all right one minute okay uh and for yeah for the integrators their main benefit is the simpler workflow and like i said you don't they don't have to go out to um you know to curve and then go out to ava and then go to balancer all goes within balancer and enables these kind of advanced trading applications that i've already described so i think i might be almost out of time but if there's any questions here
Automatic transcript — names and jargon may be misspelled.