livepeer / grants

⚠️ DEPRECATED ⚠️ Please visit the new homepage at https://livepeer.notion.site/Livepeer-Grants-Program-f91071b5030d4c31ad4dd08e7c026526
44 stars 7 forks source link

Wish List: Wrapped Staked LPT (sLPT) #8

Closed adamsoffer closed 4 years ago

adamsoffer commented 4 years ago

The Problem LPT liquidity on decentralized exchanges such as Uniswap and 0x is considerably constrained by the high opportunity cost of staking LPT. This significantly reduces the amount of LPT liquidity available, making it difficult for prospective tokenholders to participate in the network.

Potential Solutions Similar to the cTokens concept someone could stake LPT in a smart contract and then issue a token to represent the staked LPT.

This new sLPT token could then be added to Uniswap, allowing tokenholders to add liquidity for sLPT without foregoing staking inflation rewards.

Challenges

Summary Creating an sLPT token would be a significant asset for the Livepeer tokenholder community and we would be happy to support something like this with a grant.

kyriediculous commented 4 years ago

I actually do not support this grant and I think it should be closed for the time being. Such DeFi integrations can only open the protocol and its safeguard of unbonding locks to vulnerabilities or obstacles for future protocol features we did not account for so far. Please allow me to elaborate on this point:

I think there are way more valuable grants to spend resources on in this department such as

yondonfu commented 4 years ago

which could include tokenholder voting which can or can not be restricted to bonded tokenholders. The possibility of circumventing unbonding locks removes the implication of bonded token holders having skin in the game.

The implication of sLPT is that the rights to the underlying staked LPT could be transferred to another entity and the current holder of sLPT takes on the risk associated with the underlying staked LPT. sLPT wouldn't eliminate risk, it would be an instrument for transferring risk. So, while the original party that staked may no longer have skin in the game after transferring the sLPT, someone still has skin in the game (i.e. whoever the sLPT is transferred to).

The point about tokenholder voting brings up a worthwhile consideration: if tokenholder voting requires generating signatures (as opposed to submitting transactions), then sLPT holders would not be able to participate because the actual owner of the underlying staked LPT would be a contract. A possible solution could be for sLPT contract to implement something like ERC-1271 - when validating a signature for a sLPT holder, you would check if the signature creator actually holds staked LPT in the sLPT contract.

Another interesting implication for tokenholder voting that requires stake of being able to buy staked LPT positions is that it is easier to accumulate voting power in a short period of time. The holder would still need to take on the risk of being stuck with the position after the vote if they are unable to find a buyer (which might be the case if something malicious was passed). Need to think about this some more!

I think introducing a wrapped token that allows the transfer of bonded LPT, which is completely unnecessary for the protocol to even work at scale, before maturing our token economics more can only hurt the protocol going forward.

You're right that sLPT is unnecessary for the protocol to function. However, it is worth noting that derivatives (such as sLPT) can play an important role in improving the efficiency of a market. Some potential benefits include:

That being said, there can certainly be harmful effects created by derivative markets as well [1].

I don't know if an sLPT market will ultimately be a net positive for the protocol. However, the creation of such a market not only seems inevitable (due to the natural trend of markets to repackage and market risk in different ways), but it also seems important in order to develop a better understanding of long term LPT economics. For these reasons, I am supportive of early responsible experimentation here. The results of this experimentation may even be a useful input future protocol designs.

[1] There is literature analyzing derivatives market manipulation and its harmful effects on all market participants. And then of course there were the highly publicized issues around derivatives markets in the '08 global economic crisis.

it doesn't reduce friction for tokenholders who are unbonded that want to bond or users holding ETH wanting to acquire LPT

One way that sLPT could reduce friction is that people will be able to purchase already staked LPT instead of purchasing LPT and then needing to go through the staking process.

A market for selling staked LPT might also increase the accessibility of LPT to new entrants. At the moment, there is a large incentive to stake any LPT that you own in order to ensure that you capture the inflationary reward. In order to exit your position (perhaps because you need the capital for other needs), you have to wait through an unbonding period where the still staked LPT does not capture any of the inflationary reward. So, there is a tension there where you might want to exit your position, but the value of that position also decreases in the time period you have to wait before you can sell. If you could sell sLPT then you can more easily exit your position without it losing value which could increase the availability of LPT to buyers on the market that are looking to enter.

the argument that this adds liquidity is completely off-base as it only adds liquidity to the supply side of LPT

I'm not sure I follow. The idea behind sLPT would be to increase accessibility of LPT by making it easier for people to sell their staked LPT positions and making it easier for people to buy staked LPT positions.

it is just practically infeasible to represent all staked LPT by the same wrapped token as it is non-fungible by nature of the protocol and a competitive market

Yeah a sLPT construction would need to take into account the orchestrator that the staked LPT is delegated towards. I see 2 approaches to constructing sLPT:

  1. Create a NFT for each batch of staked LPT. The NFT would be associated with a certain amount of staked LPT and the orchestrator that the staked LPT is delegated towards.

  2. Create an ERC20 for each orchestrator. While staked LPT for different orchestrators is non-fungible, staked LPT for a single orchestrator is fungible.

One suggestion I have regarding this grant is rather than have it be dedicated to solely the creation of sLPT, have it also include an evaluation of sLPT's potential impact on the protocol (there is a similar effort in other projects) and how this might influence protocol design (could also see this being a separate grant). The deliverable could be a report and the creation of sLPT would be an optional complement to the report depending on whether the report has a positive/negative conclusion.

nelsorya commented 4 years ago

Yeah I tend to agree with Yondon on this one, these types of instruments seem inevitable to me. The opportunity cost of providing liquidity is a large barrier which will reduce as the inflation rate decreases, but if orchestrators begin generating meaningful fees it will become a barrier to providing liquidity once again. Where with a solution like the NFT model it largely removes these liquidity benefits for adding liquidity to somewhere like Uniswap.

I also agree that speculation shouldn't be a focus of the grants program, however, I do see a proposal like this creating an incentive for community members to build tools that lower barriers to participation.

One idea we discussed on the community grants call yesterday was sLPT being more like an Index which stacked proportionally to the top 10-20 orchestrators automatically rebalancing delegations overtime. This would lower barriers to participation, create an instrument which should represent a diversified basket of orchestrator returns and could be used as a hedging tool or orchestrators. This would add complexity and it's unclear to me what the governance implications of something like that would be, but it does seem like an interesting tool for the community.

kyriediculous commented 4 years ago

The implication of sLPT is that the rights to the underlying staked LPT could be transferred to another entity and the current holder of sLPT takes on the risk associated with the underlying staked LPT. sLPT wouldn't eliminate risk, it would be an instrument for transferring risk.

It does eliminate the exposure of the seller immediately instead of having to unbond and wait. The point is that this reduces the friction to offload my risk to another party. Risk pertains to the entity holding the asset in this case, not the asset itself.

However, it is worth noting that derivatives (such as sLPT) can play an important role in improving the efficiency of a market.

I think that's the wrong causality here. What increases the efficiency of a market is the number of educated market participants. Creating a derivative will not magically increase market efficiency it will only split your existing liquidity across two markets. Once there are sufficient educated market participants derivates could increase the efficiency of a market but it could also have averse affects for uneducated market participants and expose them to more risk.

Derivatives trading reflects traders' outlook on the future which then can then be factored into the prices of the underlying asset.

sLPT would be a swap derivative (cash flow exchange), not a future contract.

However, it is worth noting that derivatives (such as sLPT) can play an important role in improving the efficiency of a market.

It can if the underlying asset/market is liquid. It isn't as of right now.

There is literature analyzing derivatives market manipulation and its harmful effects on all market participants. And then of course there were the highly publicised issues around derivatives markets in the '08 global economic crisis.

Warren Buffet calls them financial weapons of mass destruction. They can be beneficial however in the hands of rational people, your regular fixed interest mortgage is merely a derivative based on interest rate swaps. However how much rationality is really expected during periods of market exuberance in an unregulated market.

have it also include an evaluation of sLPT's potential impact on the protocol (there is a similar effort in other projects) and how this might influence protocol design

Derivatives influencing protocol design seems like a very slippery slope to go down to.

A market for selling staked LPT might also increase the accessibility of LPT to new entrants. At the moment, there is a large incentive to stake any LPT that you own in order to ensure that you capture the inflationary reward. In order to exit your position (perhaps because you need the capital for other needs), you have to wait through an unbonding period where the still staked LPT does not capture any of the inflationary reward. So, there is a tension there where you might want to exit your position, but the value of that position also decreases in the time period you have to wait before you can sell. If you could sell sLPT then you can more easily exit your position without it losing value which could increase the availability of LPT to buyers on the market that are looking to enter.

That tension was a design decision for the protocol. Why try and circumvent it? If this is about hedging the future value of LPT while in an unbonding period then the derivate should be a future or an option and not a swap.

I also disagree that this increases the accessibility of LPT to new entrants, the bonding process was created to be as frictionless as possible in the new explorer. The difference is marginal (1 bonding transaction saved, that's it I'd still have to go to uniswap and gauge the risk of sLPT (or the different sLPTs) vs LPT and picking an O myself). As you mentioned the tension is the unbonding period which was made by design.

I'm not sure I follow. The idea behind sLPT would be to increase accessibility of LPT by making it easier for people to sell their staked LPT positions and making it easier for people to buy staked LPT positions.

The point here was that this only adds liquidity to the sell side. This comes back to market participants and tension. -The tension to acquire LPT was already minimal , creating a derivative barely changes this -Creating a derivative doesnt magically create more market participants.

=> seller has all the incentive to use sLPT , buyer has little to no incentive to use sLPT over LPT.

Mind you that that same buyer now has to choose between markets, the money he's about to put into it doesn't magically double.

One idea we discussed on the community grants call yesterday was sLPT being more like an Index which stacked proportionally to the top 10-20 orchestrators automatically rebalancing delegations overtime.

Might as well not have a list of 100 or more orchestrators then in my opinion.You either reduce friction for every participant or none and not a select group of already privileged participants, that goes against the entire philosophy of an open protocol.

The idea itself is furthermore infeasible as one can only have a single delegator & someone would have to rebalance manually.

if orchestrators begin generating meaningful fees it will become a barrier to providing liquidity once again

That's very speculative at best. One can argue the opposite too. Where demand for LPT grows and holders that now have illiquid LPT might want to liquidate some of their holdings.

One thought exercise to make is what would have happened to the price of LPT during these last few days of market downturn and panic. Very likely a race to the bottom caused by a derivative that goes against the protocol design by its very nature.

nelsorya commented 4 years ago

I hear your points and I agree that it could create some new risks to the protocol and create additional risks such as orchestrators defaulting on their sLPT.

I think the key point is that there is an opportunity cost in unstaking LPT to provide liquidity on Uniswap given current volumes. If the staking yield is significantly higher than the Uniswap liquidity yield, that will act as a barrier to providing liquidity. As of right now, there is $5,462 of provided liquidity on Uniswap and $4,567 in 24 hr volume. Low levels of provided liquidity make slippage a massive problem for both buyers and sellers. It's really a chicken or the egg problem, high slippage makes participants less likely to participate which makes liquidity providers less likely to provide liquidity.

This is the problem we are trying to solve for, obviously doing what we can to improve demand for Livepeer will help support this as well, but we are trying to incentivise the community to build tools which could help remove the friction of providing liquidity. An alternative approach would be to build liquidity incentives into network rewards like Synthetix have done (https://blog.synthetix.io/uniswap-seth-pool-incentives/).

adamsoffer commented 4 years ago

Some good discussion here. It seems there's still a lot of open questions and challenges with this approach to increasing liquidity. The committee met on Friday and we decided to close this issue in favor of a more generalized "liquidity incentivization" discussion issue.