The PoolTogether Prize Savings Hyperstructure

The PoolTogether Prize Savings Hyperstructure

PoolTogether is a prize savings protocol: users deposit tokens, tokens generate yield, and the yield is awarded randomly as prizes to depositors. Also known as a premium bond, it allows participants to have an exciting chance to win big without spending their principal.

Fundamentally, PoolTogether’s value proposition is high-variance yield. Instead of earning their own yield, users have a chance to win everyone else’s yield. To maximize the amount of available yield, we need to combine yield from as many different assets as possible; this will afford the deepest prize liquidity.

The PoolTogether Hyperstructure is a new version of the protocol that combines yield from an unlimited number of assets and awards the yield as prizes in a permissionless, autonomous way. Anyone will be able to add new assets to the protocol, and the prize distribution is fully automatic with no administrator controls. The protocol will be able to scale without any technological or human roadblocks.

This article presents the rationale for a hyperstructure, the high-level design, and the next steps towards implementation.

Why a Hyperstructure?

The term hyperstructure describes a special kind of crypto protocol: one that runs for free and forever, without maintenance, interruption or intermediaries. This “forever software” is made possible because of blockchain technology; if designed correctly, protocols can survive for the lifetime of the blockchain they live on.

However, not every protocol is a hyperstructure. Many protocols have administrative controls or external dependencies that are critical to their survival, which means that the protocol can become inaccessible or inoperative.

The properties of a hyperstructure are virtuous, but they also afford something profound: the ability to scale. Requiring zero maintenance, a protocol can grow without overhead. Being permissionless, anyone can extend and enhance the protocol.

Currently, PoolTogether is controlled by a centralized token voting using the POOL token. By evolving PoolTogether into a hyperstructure, we unlock the ability to scale without limit. The new design eliminates the need for administrative controls and will allow anyone to extend the protocol.

High-level Design

Fundamentally, the hyperstructure is still a prize savings protocol. Users deposit assets, yield is awarded as prizes, and anyone can withdraw at any time.

However, it includes significant improvements:

  • The design supports any number of assets and yield sources
  • Prizes are adjusted automatically to ensure there are both large and plentiful prizes
  • The protocol runs autonomously without any kind of governance
  • New assets and yield sources can be added permissionlessly
  • The POOL token plays an integral part

Prize Token

The hyperstructure will combine all yield into a single token by continuously liquidating yield for the prize token. This affords two major advantages:

  • Supports larger prizes thanks to the combined liquidity
  • Allows us to measure the relative contribution of each asset, so that odds may be fairly distributed.

Ideally the prize token is exchange for the asset that the winner desires, such as the deposit token (then they can increase their chances of winning!). However this level of automation is beyond the scope of work for launch. At launch we will support manual exchange by working with POOL governance to establish a strong protocol-owned liquidity position. Protocol-owned liquidity will establish a base redemption price, so that winners can exit to their asset of choice.

Using POOL as the Prize Token

Any token can serve as the prize token, but using POOL has certain advantages: most notably it allows us to leverage the protocol’s existing treasury, it aligns incentives between existing POOL token holders and prize winners, and intrinsically ties the POOL token to total protocol yield.

The PoolTogether protocol currently holds approximately $3m USD in stablecoins, and $4m USD in POOL tokens. As part of the hyperstructure rollout, we wish to create a large protocol-owned liquidity position that will significantly improve POOL liquidity and provide a minimum redemption price for POOL.

Deep POOL liquidity will benefit both POOL token holders and POOL prize winners, whether to acquire speculative positions or to exit with their prizes. Having a strong foundation of protocol-owned liquidity will give the hyperstructure stability.

The POOL token will have significantly more utility in the new hyperstructure: initially as the prize token to consolidate yield, but there will be more uses down the road. A strong POOL token will help grow the protocol and foster an ecosystem of POOL utility.

Flow of Funds

Funds flow through the protocol like so:

  1. Users deposit a variety of assets into Vaults
  2. Yield from deposits is liquidated for POOL tokens and contributed to the Prize Pool
  3. Winners claim their prizes from the Prize Pool

Vaults

Users deposit tokens into Vaults in order to win prizes. The Protocol will provide a factory for Vaults that implement ERC-4626 and use an ERC-4626 yield source. The standard Vault will be no-loss and expose yield to a Liquidator contract, which will liquidate yield for POOL tokens. The POOL tokens are contributed to the Prize Pool.

Anyone will be able to create Vaults and start contributing POOL to the prize pool, so the protocol can easily expand to include additional assets or yield sources.

The permissionless nature of Vaults does not introduce any cross-asset risk, because assets are totally isolated from eachother. Only yield is combined; and done so in a single, audited, immutable contract.

This marks a significant shift in how PoolTogether manages risk; we will be relying on front-ends to curate Vaults and protect users, rather than have the protocol gatekeep assets. Anyone will be able to integrate their protocol with PoolTogether!

Liquidator

The Liquidator contract liquidates yield for POOL. It’s a single-sided virtual AMM that treats yield as an instant virtual swap before each user swap. As yield accrues, this creates an arbitrage opportunity.

It’s important to note that the above diagram has been simplified; technically the POOL flows from the liquidator back to the Vault and then is contributed to the Prize Pool. Ultimately, Vaults can choose any liquidation strategy they wish.

Prize Pool

The Prize Pool is an immutable, autonomous contract that distributes POOL tokens as prizes. POOL liquidity is contributed by Vaults, and the amount contributed determines their weight of the total odds. The Prize Pool can receive prize tokens from any number of Vaults. In this way, the Vaults are part of a prize liquidity network. Anyone can expand the network by creating new Vaults that contribute to the Prize Pool.

Prizes are distributed through periodic “Draws” that include a random number that unlocks that period’s prizes. When the Prize Pool is updated with a new Draw users may begin claiming their prizes. At launch, the source of new Draws will be the PoolTogether V4 Draw Beacon. In the future we’re going to decentralize this mechanism with incentives.

Prizes are structured into tiers: from the largest rare prize to abundant small prizes. The largest prize is tuned to occur statistically once per year, and the smallest prizes every Draw. There is a spectrum of tiers in between the largest and smallest, and the Prize Pool dynamically grows and shrinks the number of tiers to ensure there is always an abundant supply of small prizes.

A New Approach to Risk

The PoolTogether hyperstructure does not have any gatekeeping; anyone can add new Vaults without permission. This is a significant departure from the existing protocol, where POOL token holders decide which assets to add. This new approach will allow the protocol to evolve and scale rapidly, but it also introduces new risk: someone could create a malicious Vault or unintentionally add a malicious token.

It will be critically important for interfaces to either curate the Vaults shown, or ensure that users understand the risks they are taking. This is much like the Uniswap app, which warns about illiquid or less commonly traded tokens.

The hyperstructure replaces gatekeeping at the protocol level with curation at the interface level; giving users the freedom to choose their own acceptable level of risk.

Progressive Decentralization

The new hyperstructure will launch with several governance controls, which will be phased out as the remaining parts of the system are built. In particular:

  • The Prize Pool’s source for new Draws will be configurable, to give us time to properly design a permanent solution. Once the solution is in place we will revoke the privilege to configure the Draw source. For now we’ll be leveraging the existing PoolTogether V4 draw propagation.
  • Vaults will have owners whose sole privilege is configuring the Liquidator. This is so that we can tune the liquidation strategy after launch. Once a Vault is stable, ownership can be abdicated.

Deployment

The hyperstructure will be an entirely new deployment. As such, we will coordinate with the POOL token holders to establish a strong protocol-owned liquidity position and to set up migration incentives.

Future Additions

There are a million things we’d love to add! Some of the more notable additions would be:

  • Mechanism that incentivizes users to push new Draws to Prize Pools. This will be critically important to ensure the protocol run perpetually.
  • Design vaults that automatically compound prizes back into deposit tokens, so that the users chance of winning is automatically increased. This would afford the same prize experience that users have today!
  • Create a simple POOL staking contract that allows arbitragers to flash loan POOL for yield liquidations, and stakers to earn fees.

The above may not be available for launch, but they will be important follow-ups.

Next Steps

The PoolTogether Inc. team is working hard to deliver this new vision. Our next steps are to:

  • Publish a technical overview of the new protocol; including the algorithms and analysis. (prior to ETH Denver)
  • Develop a go-to-market strategy
  • Deploy a testnet (shooting for ETH Denver!)
  • Gather launch partners

We’re excited for what we believe is PoolTogether’s final form!

19 Likes

Really excited about the new Hyperstructure!
Especially about the ability to combine our current stable coin strategy with more assets like ETH! :slight_smile:

4 Likes

This sounds very cool!
The implication for the POOL token itself is interesting. The POOL in circulation vs the yield the protocol will be generating on the protocols’ AUM will be something that giga-finance brains will watch closely.

I have a few questions:

  1. POL gives stability and a very strong floor price for POOL in the new design. But does that also mean that it effectively caps the largest prize the protocol could distribute based on the POOL liquidity in the system?
  2. How will this work in our multi-chain future? Will every chain need its own deployment of the hyperstructure and a decent chunk of POL in POOL to service it? As i understand, the only thing that would link them would be the POOL token itself…as cross-chain arbitrage would stabilize each hyperstructure making them effectively equivalent from a redeptions point of view. Correct?
  3. Will this make POOL a bit volatile? At prize draw time, a race is on to liquidate POOL winnings to other assets before the POOL price drops and then slowly recovers on the yield. Could people game the prize draw timing?

I notice all 3 of my questions are related to POOL itself. I suppose i just worry that we are offloading all risk onto the stability and soundness of the design of the tokenomics

4 Likes

Assuming the winner wishes to instantly dump the grand prize on an AMM, then they would incur slippage, yes.

I created a spreadsheet that simulates the grand prize being won - view on Google Sheets

The spreadsheet assumes these things:

  1. TVL and yield is approximately our current values
  2. All yield is dumped through an AMM
  3. Total PoL is $1m (500k usdc and 500k pool)

On row 41 you can see a POOL dump of $30k. This is roughly inline with what the V5 grand prize will be. V5 Prize Distribution Spreadsheet

On row 41 the grand prize dump results in:

  • Grand prize of $30k USD of POOL would be redeemed for $29414 USDC
  • POOL price goes from $1.08 to $0.96, then continues to climb

My assumption is that with higher volume we’ll see more LPing in tighter ranges, so the capital efficiency will increase and price impact will be less.

I also believe winners may want to hold POOL or stake their POOL for other utilities.

I’d also love to have a mechanism similar to @underthesea’s streaming prizes idea. I imagine that users could either:

  1. Stake POOL
  2. Dump their POOL for something else
  3. get higher APR over X number of days (POOL is liquidated over time for their deposit tokens)

Yes, I think every chain we launch on should have PoL.

POOL will definitely have some exposure to grand prizes! There are plenty of incentives and mechanisms we can build post-launch that will mitigate this, I believe.

3 Likes

It’s all coming together! The Hyperstructure is inspiring.

It’s an exciting time to be a part of the PoolTogether community. This is grand.

For those too lazy to Google, ETHDenver runs from Feb 24 - Mar 5. I can’t wait to see PoolTogether’s final form. Let it loose.

2 Likes

there are numerous improvements to get excited about in this post but i think this is my favorite because it parallels the traditional big prize of a traditional lottery but fuses the immutable, dynamic, and accessible properties of blockchain! hats off to anyone involved in these ideas (and of course the implementations)!

The mechanics of the liquidator elude me but it seems critical for the single token design. forgive my ignorance, but is this single sided amm contract novel or have there been successful protocols that already use this mechanism?

are you referring to yield integrations here? or frontends?

4 Likes

Yes, the liquidator is a novel mechanism. I do not know of other projects employing anything like it.

If you want to dig into the research, you can read about the algorithm and see the simulation results on Github.

If you’d like to see the code, check out the Liquidator contract on Github. (not yet audited).

The algorithm proved robust in the simulation, but it hasn’t seen production use yet. This is why the liquidator will be swappable at launch: so that we can swap out the implementation if it needs to be changed. Once the liquidator is proven, we can abdicate that privilege to make it immutable.

The most similar concept to the liquidator would be TWAMMs, which achieve a very similar goal. There will soon be production TWAMMs. Our is slightly different though, as liquidity accrues on-the-fly.

It would be amazing to have new PoolTogether apps front-ends! That’s our end-game. Imagine if users could access the PT protocol through Rainbow, Argent, or any other wallet directly. PoolTogether would truly be the global infrastructure for prize savings. This is a long-term goal!

Short-term, at launch the hyperstructure will need yield sources and assets. I want us to be able to accept any asset; especially stables like crvUSD, and GHO, USDC, Dai, and Rai.

We’ll also be able to accept any non-stable assets such as Ether and Matic, which will give users the freedom to hold whatever asset they want and win prizes. If it accrues yield then it can be added!

It’ll be important to find partners and enable them to easily integrate their protocols and tokens into PoolTogether using the ERC-4626 standard. Our new V5 prize pools will leverage the standard to make it easy to add yield sources.

5 Likes

Hi there, I was asking myself why didn’t PoolTogether support other assets, and it’s great to know that it’s coming!

I’m excited about this proposal, just a bit disappointed I’m so late to the game. Are the timelines still applicable?

Is there anything that I could help with (I’m a coder)?

6 Likes

If you can achieve cross-chain and bring together the benefits of different blockchains, it will be even more perfect

Amazing post Brendan and would love to hear more about what exactly PT is looking for in Launch Partner’s, as we over at General Magic would love to help out :fire:

3 Likes

GM @Brendan hope you are doing great! Following up to see if you have some time to take this to a DM, as I’d love to continue a conversation about partnering. Please let me know. Thanks!

Hello ser, just DMed you

2 Likes

Hi Tim, I have sent a couple response messages, when you get some time. Thanks!

Erc4626 vaults make interoperability seamless. I have a question. This does give existing users of the system more options to plug in yield.

What is the plan to get other projects involved?

If I make 250% apy at beefy. It is a hard sell to say deposit beefy tokens in pool together and give 240% away to the other users.

it is very possible to get 800% apy with these vaults as we see with timeless or beefy. Capital efficiency becomes exponential, but as a hyper structure pool together is a negative yielding plugin if it provides more yield than the average and is only incentivizing projects below the average.

For another protocol to provide 250% APR (probably not sustainable, but that’s not really the focus of this discussion), they will have a yield source that produces those sort of returns. That same yield source can be wrapped (if not already) into a 4626 vault and aimed at the Prize Pool to generate prizes. If it’s generating a ton of yield, it’ll have a ton of chances for prizes.

The assumption that you’re giving 95%+ of yield to others isn’t accurate. Long term your prizes will match the yield you are receiving. That’s just probability in a nutshell.

The hyperstructure isn’t reducing yields - it’s adding high variance. Those are entirely different.

Yes, the point of the vaults is to be flexible thus moving from yield source to source like yearn checks ever minute or so and to move the funds optimizing rates.

Pool together isn’t the hyper structure. It is a piece of the hyper structure being the greater ecosystem that plugs into each other. If i stack 6 yielding layers from different protocols, then I’m not going to add a 7th to give it all away.

Adding a Yearn yield source to a vault would be awesome!

Again, you are not giving anything away - the more your vault contributes to the prize pool, the more chances it has to win prizes. The more you deposit on a specific vault, the more % of that vault’s contribution adds to your chances to win prizes.

If a vault is providing 10% APR and that 10% yield is being liquidated into the prize pool, then long-term the APR of those deposited in that vault will be approximately ~10%. This is true in V4 and will be true in V5.

1 Like

GM PoolTogether. Is anyone available to chat more about how General Magic can get involved with this? Thanks!

1 Like

Sent you a Discord friend request for messaging purposes. Sorry to drop the ball on this!

1 Like