In a previous article back in April, I explained what Pie Smart Pools are and how they are used within PieDAO. Today we are proud to announce our new V2 implementation which adds more granular control and extra safety features.
Additionally, we are very proud to announce that Balancer has rewarded PieDAO with a grant for our contributions to smart pool development, community engagement, and continued feedback to improve their product.
Before we dive into the new functionality we are introducing let’s step back for a moment and explain what Smart Pools are.
Pie Smart Pools are a layer on top of normal Balancer pools which add governance levers and extra safety measures on top which are not possible in finalized pools. For a more in-depth explainer please refer to Introducing Pie Smart Pools.
In V1 we were able to carry out the most common tasks like adding and removal of tokens and the adjustments of weights but they often resulted in us needing to perform many manual actions.
At the same time Balancer was working on their Configurable Rights Pools which included a lot of the features we liked to add so we decided to adopt the same interface to be compatible with any applications build on top of those.
Additionally, we added Pie Smart Pool specific safety features and refactored the codebase to get around the maximum contract size on Ethereum.
The following functionality was added in V2:
Single asset entry and exit
When trading is enabled on the smart pool you are now able to supply liquidity using just one of the underlying assets.
Pausing of entry and exit
During manual rebalances or adding and removal of tokens the controller of the pool can now pause entry and exit of the Smart Pool.
Separated circuit breaker
We can now assign a separate address to trip the circuit breaker in case there is an issue with one of the underlying asset.
It is now possible to charge annualized fees on Smart Pools and direct these fees towards the PieDAO.
Gradual weight adjustment
Enables gradual rebalancing over a set period of time without any manual actions needed, also enables us to run liquidity bootstrapping pools.
Atomic weight adjustment
Increase or decrease the weight of a token by supplying either pool tokens and burning them or supplying the underlying asset and minting pool tokens.
Atomic adding and removing of tokens
Add or remove a token by either supplying the underlying asset and minting pool tokens or burning pool tokens and receiving the underlying asset.
Because we use the Diamond Standard storage pattern together with the Pie Proxy we are able to swap the implementation without users needing to migrate.
In the coming days, all Pie Smart Pools will be migrated to the new implementation.
The V2 smart pools allow us to create a wider range of products but we are not stopping there! Recently Evert joined the team and is now working on a experimental project called ExperiPie. ExperiPie will allow us to create more complex Pies which can participate in governance or yield farm using its underlying assets.
We are planning to release a capped chaos-net version participating in the governance of multiple DAOs soon.