Synthetixio / SIPs

The Synthetix Improvement Proposal repository
https://sips.synthetix.io/
109 stars 221 forks source link

Draft SIP: SNX Inflationary Rewards Schedule #36

Closed deltatigernz closed 4 years ago

deltatigernz commented 5 years ago

Introduction

Some community members (including me) have argued that the current SNX inflationary rewards schedule introduces some unnecessary risk into the system. There are obviously major pros and cons to changing the inflationary rewards schedule, and although I’ll try provide a balanced opinion, the following proposal mainly focuses on the argument for (which I was given the opportunity to articulate in the last governance call at ~ min 14:30). As a result, the following document will seem bias.

Key arguments for and against

Pros: key argument for changing schedule

When there is a rewards halvening for Bitcoin miners, who own mining hardware, they either like the new return profile for mining and keep mining, or they don’t and go mine something else. They probably don’t dump/sell their mining equipment and if they did, it would not affect the price of BTC (much).

With SNX, when then is a rewards halvening, if mintrs no longer like the rewards profile and decide to stop minting, then the only rational move is to sell your SNX.

And given that we know the exact date this event is happening, from a game theory perspective, all you need to know is that at least 1 whale is going to sell at this point, and a rational decision is to front run them by selling before they sell, and so on. Under these conditions you could end up essentially having a run on the bank around a rewards halvening which could crash the network. For a protocol which is designed to engender trust and stability, this is not ideal, especially if it is relatively trivial to prevent such a shock to the system.

Community member @gmgh’s comments in discord articulate some of the possible effects that such a shock could have:

For example:

  • minters packing up at the same time
  • synth supply shrinking
  • SNX unlocking to be sold down
  • SNX price dropping
  • sETH LPs getting their income halved and also now dropping in value
  • sETH LPs exiting by withdrawing and converting sETH to ETH
  • sETH getting smashed out of peg
  • arb pool being unattractive as SNX drops relative to ETH

Imo a smooth inflation reduction solves this by removing an "event" to trigger this people will just come and go and do all the above actions based on their own accord, rather than being "forced" to take action in response to an obvious future event. A lot of the game theory of what other people will do, and when they do it, will be removed.

The following proposal articulates an alternative approach to reducing the inflationary emissions, that achieves approximately the same total emissions, without the step change functions that exist today.

Ongoing inflation

There has also been some talk of introducing ongoing inflation to the system long term so that the foundation has an additional incentive lever beyond exchange fees, which may ebb and flow somewhat and may not grow as quickly as needed to sufficiently replace inflationary rewards. This proposal also includes a proposal for how to introduce ongoing emissions.

Cons: key arguments against changing

The Synthetix network is built on trust. Community members and investors alike need to know that the inflationary schedule is not a moving target. If the team is out there changing the schedule every year or so, why wouldn’t they continue to change it, and to what. The argument above articulates a worst case scenario and it could be argued it is fairly unlikely to actually materialize, so is it worth the risk of developing a reputation for changing the inflationary schedule on a dime when it suits the network to plan for an event that might not happen?

With the above argument in mind, I think that it is crucially important that if the schedule is changed right now, it is done so thoughtfully and under the assumption that this will be the last major change at least for the foreseeable future. And to the extent that we can, if there are any long term decisions that could be built in (like ongoing inflation for example) that they are considered now.

Proposal

Current Emissions Schedule

The following charts represent the current weekly emissions schedule and total cumulative tokens. You can see on the right that the emissions schedule is essentially a smooth curve, but from the chart on the left, it is obvious that it is not.

Current SNX Inflationary Schedule

Decision framework for new emissions schedule

Assuming you want a new emissions schedule to closely resemble the current, but with a smooth curve vs a set of step changes, there are a few axiomatic decisions to make. Once these decisions have been made, modelling the optimal curve just becomes math and everything basically falls into place.

Those decisions are:

Proposed Schedule

I built a model to help run various different scenarios. After running multiple scenarios the one I ultimately landed on is as follows:

With these inputs, the model outputs the following scenario:

You can see what the emission schedule looks like in terms of total snx minted weekly, plus cumulative over time below.

Proposed SNX Inflation Schedule

Perhaps more interesting is that you can see what the new emissions schedule looks like when overlaid over the old.

Current   Proposed SNX Inflation Schedule

The total weekly emissions closely mirrors the original schedule until the tail emissions schedule kicks in. You can also see that the total tokens almost exactly matches the current schedule until tail emissions kick in at which point it continues.

Next steps

I think that the following decisions need to be debated and made by the community:

  1. Should we change the emissions schedule, if so
  2. Which criteria should be considered in addition to the decision framework articulated above
  3. When to start the new schedule:
    • Before 52 weeks, or
    • Wait until end of first 52 weeks (like current schedule)
  4. Should we have ongoing tail emissions VS drop to zero tail emissions? If ongoing would you have:
    • Fixed annual % increase, if so what % of total pool
    • Fixed absolute, if so what fixed # of snx tokens, or
    • Fixed weekly decline (no decision needed you would simply copy the existing weekly decline)

Once there is general consensus on the above this proposal could then be tightened up and turned into something that the entire community can vote on.

Cheers deltatiger

CryptoToit commented 5 years ago

Good work done on modelling the different emission schedules!

1- I agree that a "smoothed" emission is fundamentally and psychologically the better option to have. In this I fully support this SIP.

Personally I believe we should implement the 'smoothed' schedule as early as possible as there is an exponential impact component on the effected emission the longer we wait.

2- As to the new 'tail emission'... I still don't see the benefit of implementing something like this now. I can see that there might be a need for this, but I think it is far to early to know exactly how it should be structured. We are more than 4 years away in having this kick in - if it was agreed and implemented.

I would say that the 'tail emission' should be held in reserve based on market & data analysis over the next 2-3 years. Everyone should know that there is a good change that this could kick in, but how it is structured and executed should only be defined closer to the time so that we can have proper data backing it.

Cheers.

meanderson commented 5 years ago

Thanks @deltatigernz for putting this all together! Really impressive stuff.

Overall, I think it's important to call out that changing monetary policy for an already launched network is a difficult thing to do smoothly as it's always going to upset at least one network participant. I think the best way to combat this upheaval is to target a single change with multiple facets, and then have a transparent process for any future potential changes, with some threshold that makes it difficult to attain but not impossible if necessary. One idea would be to say that 2/3 of voters, either by people, tokens held or some blend of the two, would be required to approve any future changes.

1 - I agree with this change to the inflation schedule mostly because it aligns everyone for the longer-term. If someone is only looking to the next six months for inflation rewards before moving elsewhere, they're probably not a good fit for this network. I can't seem to find a good counter-argument here, but welcome any other perspectives.

2 - I think a perpetual inflation model makes a lot of sense for a number of reasons, but mostly it becomes a lever that can be used to drive desired user behavior and to (potentially) limit black swan events. We are likely too far from knowing the most desired network characteristics at the end of the scheduled five-year distribution, but a few of them may be % of SNX staked, moving average of exchanges fees, or user growth. I also think its too early to know the 'ideal inflation rate'.

One idea would be to build a model that could dynamically update weekly inflation rate based on a series of factors. A rough model could look like:

Weekly inflation = [target inflation] [X/(SNX staking % target)][a]+[Y/(Δ from sX fees MA50)]*[b]

The idea is that as SNX staking and/or sX fees move up or down this would counterbalance the weekly inflation from the target. Hopefully, this would limit massive downward spirals of SNX sellots or sX volume fluctuations from driving SNX holders away by compensating them with additional SNX. We've seen this model in use by Polkadot and Livepeer and it seems to be working thus far.

Happy to chat about any of this!

deltatigernz commented 5 years ago

@CryptoToit thanks for your thoughts.

I would say that the 'tail emission' should be held in reserve based on market & data analysis over the next 2-3 years. Everyone should know that there is a good change that this could kick in, but how it is structured and executed should only be defined closer to the time so that we can have proper data backing it.

I definitely see this pov. I think the main argument against this approach is that it is relatively easy to take away inflation, but I suspect that in 4 years it is going to get a lot harder to get anything done, so waiting until then it will be a battle to add something back in. So for things like funding the ARB pool, or LP incentives, giving the foundation a way continue funding open source contributions and improvements to the protocol, it could be advantageous to include now vs trying to fight for it later.

deltatigernz commented 5 years ago

@meanderson thanks!

One idea would be to build a model that could dynamically update weekly inflation rate based on a series of factors. A rough model could look like:

Weekly inflation = [target inflation] * [X/(SNX staking % target)][a]+[Y/(Δ from sX fees MA50)][b]

In this model what is X & Y? But I think I get your proposal is essentially to dynamically change rewards based on how many exchange rewards are getting generated. It seems complicated... but if these other projects are having some luck and it is working, then I think we should consider.

One thought be to define target inflation now, but kick the can down the field in terms of how it might be modified based on datapoints we will have at the time...

deltatigernz commented 5 years ago

More broadly on ongoing emissions (and I guess the proposal in general), I would be very interested to hear if @kaiynne, the SNX team, or any of the guardians/phd's have any perspective on this...

jimbobkos commented 5 years ago

Firstly, great work Delt’s!

To supplement the SIP above should be a description of the purpose of the inflationary framework. This framework was implemented to bootstrap the network. Designed to provide SNX tokens for Mintrs that locked up their SNX until sX can generate sufficient fees to maintain the incentivisation of Mintrs to continue locking up their SNX.

Therefore, adjusting the inflationary schedule should be done with consideration to where we believe the growth of the sX will be to have sX fees supplement declining inflationary rewards.

Detailed below are my comments/feedback in response to your ‘next steps’ queries:

  1. Agree – The emission schedule should be changed to avoid the system being gamed and creating a negative feedback loop. The smoothing approach is intuitive.
  2. Discussed in comments below.
  3. The earlier the better so the delta (great name) factor that decreases the amount of rewards each week is less. The longer time goes without changing, that delta increases. However, I think this is where consideration for sX development is important for the fees to begin supplementing the declining rewards. There are likely too many variables to quantify the point of supplementing loss in rewards with sufficient fee revenue, however my solution to try to arrive at that point would be to develop a mini road-map for the sX to effectively ‘go live’ for public use. Granted we are in beta phase, however a ‘go live’ date could likely provide a period where we can begin to better forecast volume/fees and when they could occur. ‘Go live’ would be a targeted reach to grow the individual trader base and enhance the network effect.
  4. I don’t think there should be ongoing inflationary rewards into perpetuity post year 5. This is for the following reasons: a. Having a perpetually increasing supply can prevent natural price appreciation through a fixed supply b. The perpetual inflation adds another layer of complexity to the network, which is something I prefer to avoid to un-complicate the network. The framework was designed to be temporary and I think having a finite point to close the framework after year 5 is clean. c. Without the perpetual inflation it will force the network members (team and community) to focus all attention on the development of sX and creating an organic, sustainable revenue source prior to rewards reaching zero. This is opposed to potentially resting on some morals knowing that we have an artificial revenue source to fall back on (not a dig at the team’s work ethic at all, they’ve been gold standard to date). You’d hope by year 5 that we have sufficient sX fees to incentivise Mintrs into perpetuity.
deltatigernz commented 5 years ago

Thanks @jimbobkos. Great thoughts/comments here. Appreciate it.

To supplement the SIP above should be a description of the purpose of the inflationary framework.

I agree, if this gets to SIP stage I'll make sure to include something on this.

my solution to try to arrive at that point would be to develop a mini road-map for the sX to effectively ‘go live’ for public use

I don't disagree with developing a roadmap and trying to rally the team/community around it, but my view is that this is something that should happen independent of this conversation. I run a 40 person venture backed startup with I think more resources at hand than the SNX team/foundation, and I am constantly shocked at how they actually hit the majority of milestones that they establish, while I'm missing most of mine with all these resources at hand. Also, the milestones that are typically off in my camp, often by a large factor, are traction related metrics. With scale your predictions can become more scientific, but early... good luck with that. The point I'm trying to make is that if you couple/time something like inflationary rewards with a roadmap (or even worse predictions around traction), then the consequences of missing those milestones are compounded (and trust me they will miss some of them unless they are unicorns). In this scenario, not only did you miss your milestones, but your backup plan for how you are going to incentivize the network in absence of the completed milestones is also dead... My view is that the inflationary schedule should be a little over engineered, similar to how bridges and buildings have a factor of safety often in the 4-5x required load range. So sure, you want to establish a roadmap that has significantly more traction in say a year from now, but you have another 2-3 years behind it if things don't go to plan. So best case, you over engineered the system and things are going really well and you have way more inflation than necessary and everyone is happy anyway, and worst case (or probably mid case), you have the right amount of inflation and things took longer than you anticipated. p.s. on this point, I'm pleasantly surprised at how much traction we have right now... but you never know it might be fleeting for whatever reason.

Having a perpetually increasing supply can prevent natural price appreciation through a fixed supply

Yes for sure, this is why I think it is important to pick a reasonably low number if we do include ongoing inflation is a good idea. That is why if you look at the proposed model, year 5 when ongoing inflation starts kicking in, the annual inflation is about 1/10th that of the first year inflation. Another way to think about it is that after 4 years, total supply will be around 240M tokens, and at 3% per year, after a full 7 years, total supply will still be less than 300M tokens... which doesn't seem like a lot of dilution. So I don't think it will prevent natural price appreciation much, and for those that it does prevent natural price appreciation for even just a little, are those who are not actively supporting the project (so I'm not too worried about those folks either). For those who are actively participating in the network (through staking, being an LP or whatever) should in theory see zero effect from the inflation because the assumed depreciation from inflation should be made up from the rewards gained anyway.

The perpetual inflation adds another layer of complexity to the network, which is something I prefer to avoid to un-complicate the network. The framework was designed to be temporary and I think having a finite point to close the framework after year 5 is clean.

I agree it would be less complex and cleaner to tend to zero inflation, the question is, at what cost. It could be argued that ongoing inflationary rewards is an incredibly powerful incentives lever to be left in the hands of the foundation/community. So it is a tradeoff... Having seen how the team can beat mkr as largest LP on uniswap in I think, what 8 weeks, with this lever makes me think, wow, that tool shouldn't go away.

Without the perpetual inflation it will force the network members (team and community) to focus all attention on the development of sX and creating an organic, sustainable revenue source prior to rewards reaching zero.

This is just my opinion and may not be shared by other community members, but if we have ongoing inflation, I actually don't think it should be used to incentive staking the network (the way it is now for 95% of the rewards). You are right, sX should be throwing off a massive amount of fees, and technically the price of SNX should reach some kind of equilibrium such that a new investor coming in can determine the APR they want and if the fees generated is below their desired APR, they sell their tokens (thus lowering the price of SNX, and thus raising APR for the next investor), and if it is above, they buy (thus raising the price of SNX, and lowering the APR). Eventually it should reach equilibrium.

My view is that ongoing inflation could be used for things like LP pools, Arb pools, developer bounties, possibly paying new engineers or team, ect... without ongoing inflation, you would need to divert sX fees to do this which I think would be something that needs a lot of consideration.

peterjmarko commented 5 years ago

That's a great proposal @deltatigernz! When I first learned about Bitcoin's reward halving, I was baffled by how such a great concept could have a so poorly thought out reward schedule (i.e. a scheme that assures price volatility by design).

  1. Change emissions schedule: Yes. A smoothly changing rewards schedule is much better from many perspectives (as you already articulated).

  2. Additional criteria: None that I can think of.

  3. When to start new schedule: End of first 52 weeks. Changing the initial schedule when no change was anticipated by ecosystem participants is not a good idea. Being surprised by an authority in a trustless system (Synthetix governance in this case) leads to erosion of trust. Therefore, changing it exactly when a change was scheduled gives the optimum timing.

  4. Ongoing tail emissions: This is only needed if there are ongoing activities (e.g., development) that need to be supported. The schedule should be driven by this need. Without knowing plans in this regard, a fixed annual percentage increase seems like a reasonable approach (if needed). The value can be adjusted to the ongoing need.

boymartian commented 5 years ago

Thanks for putting lots of thought into this... Three thoughts:

  1. I think this should be two different proposals. Altering the emissions schedule is a very different question than introducing perpetual inflation. Someone may support changing the emissions schedule but hate perpetual inflation. In that case, they'd be forced to vote against this proposal.

  2. I like flipping from stepped emissions to smooth emissions.

  3. My knee-jerk reaction is to reject perpetual inflation. I would want to see concrete reasons how/why that would benefit the network and SNX holders.

peterjmarko commented 5 years ago

Yes, @boymartian is right: splitting this into two different proposals is the way to go.

deltatigernz commented 5 years ago

@peterjmarko @boymartian thanks for your comments. Some thoughts below (not addressing the positives/agreement;)

When to start new schedule: End of first 52 weeks.

Yeah I don't have a super strong feeling on this either way. The argument you make ("Keeping it as similar to current model as possible so you don't surprise ecosystem participants") is certainly valid. The main counterargument to doing it sooner is that you end up with a less steep curve, and also, because of this, you actually end up more closely mirroring the current emissions schedule from a total emissions perspective. Your proposal will actually have total inflation higher, while moving over earlier, will have total inflation closer to what the current schedule dictates (just delivered differently). As a result of that I think I lean slightly towards changing earlier rather than waiting, but I don't have a very strong view on this.

I think this should be two different proposals.

I actually don't disagree with this. Wouldn't be that hard to break into two proposals, but if they both get voted in, I think they should be implemented together. Will be too complicated to model otherwise as there is some dependency in terms of what is optimal based on what is passed.

grantferowich commented 5 years ago
  1. A,(Years 1-5): Strongly agree with smoothening the inflation schedule to avoid risks, some of which could potentially lead to vicious cycles degrading the value of SNX collateral and the bandwidth sETH:ETH on/off ramp alike. B,(Years 5+): Tweaking the emissions schedule is beneficial and proper. Mintr, sETH LP, and peg arbitrageur activity are at the heart of the SNX network. Without coordinated activity among these groups incentivized by earning SNX, the value proposition of SNX is weaker in a more significant way than supply expansion/apparent SNX value dilution. I adamantly support perpetual emissions on the grounds that it can be removed within the next four to five years, but it’s far less pragmatic to decide such an expansionary policy is necessary during a later year. The SNX community has enough wits to scrap perpetual emissions if it does become strictly necessary. It’s best to bake perpetual emissions into the expectation.

  2. Insofar as the inflation is a beneficial factor for coordinating complex moving parts, it is worth keeping; insofar as inflation could be used as a way for one segment of the SNX ecosystem to pursue beggar-thy-neighbor policy towards another segment, it is not worth keeping. So far, there is plenty of evidence for the former and little to none for the latter.

  3. I am in favor of accelerating the new schedule prior to the 52-week point, perhaps at week 30, primarily on the basis that if we do have consensus about switching off from the step schedule, let’s be all-in about it instead of one-foot-in, one-foot-out.

  4. Fixed annual # of SNX tokens with a community option to ditch the perpetual emissions schedule altogether. It’s more important network participants are incentivized to do certainly things in a continuous manner than having an ideal-driven target absolute # of tokens for the sake of a scarcity meme. Scarcity is important for SNX pricing, yet SNX is primarily a work instrument and not a monetary unit whose intention is to protect a certain amount of consumer goods purchasing power.

Thank you for writing this Draft SIP, Deltatiger, and thank you for the excellent presentation during the last governance call!

boymartian commented 5 years ago

@deltatigernz Thanks for doing this. Separating them into two proposals but implementing them simultaneously sounds great.

RE: perpetual inflation/emissions. If you're receiving fee income, I'm not sure I see point of perpetual inflation.

If income from fees is high, there will be demand for SNX. Assuming those fees are in an uptrend, the price of SNX should rise. If income from fees is low, SNX's price will fall, and inflation will only make that decline worse.

Either way, income from fees MUST exceed the inflation rate or SNX prices will always fall and users will be disincentivized to hold it. That would be disastrous.

With all that in mind, I believe the final option you proposed for perpetual inflation is the only one that wouldn't damage the project during periods of low fee income: "Fixed weekly decline (no decision needed you would simply copy the existing weekly decline)". SNX would eventually reach negligible levels of inflation.

And I'm still not even sold on that...

@Clariti23, you wrote: "Scarcity is important for SNX pricing, yet SNX is primarily a work instrument and not a monetary unit whose intention is to protect a certain amount of consumer goods purchasing power."

I see your point, SNX really is a tool... but in order for it to be an effective tool, it must have stable to rising prices. Otherwise, no one will want to hold that work instrument for any significant amount of time. In fact, they'd be encouraged to sell it.

It really comes down to whether the fee income exceeds the inflation rate and that's an unknown right now, so it seems hasty to me to make the decision years in advance.

Anyway, thanks to all for letting me weigh in!

degenspartan commented 5 years ago

Dear SNX community,

Apologies for the late comments. Thank you Delta for bringing our discussions up during the last governance call and also for formalizing it into an SIP proposal.

Question 1a: Should we smooth out inflation? As @deltatigernz initially presented, smoothing removes "event-triggered" actions that will culminate around the rewards halving. Having a smooth and continuously reducing rewards curve will eliminate shocks to the system by removing those events itself.

The example @meanderson has given of short term stakers only participating in the initial phases due to the high rewards is a very real situation. Rather than have this group disappear and trigger events post-rewards halving, a smooth curve will make it such that there is no fixed event to trigger action. Participants will behave rationally and enter and exit the system based on their own personal factors and views, rather than a system triggered event.

I see no advantage to keeping the current chunky rewards halving schedule other than inertia and to keep up the appearances that the team had great and unmatched wisdom at the point when it to decided that the current schedule is the best and most optimal supply policy for all of eternity. Things change, and so can the community's view of the most appropriate supply schedule can change as well.

Question 1b: When should we smooth out inflation? Personally, I am indifferent to when we can begin, although I find that (a) starting as soon as technically possible or (b) at the end of year 1, both to be perfectly suitable. The strongest factor here is actually the Foundation's technical ability to get this upgrade ready for mainnet deployment.


Based on @boymartian and @peterjmarko comments, I have split the ongoing inflation to a separate portion. However, I do think that it is best if we can include that decision in the same upgrade as the smoothing, so as to not give opportunity for the broader crypto community to misunderstand our actions and misconstrue them as the SNX community being willy-nilly and changing the supply schedule whenever they feel like it.

Question 2: How should we structure tail end emission? Essentially, there are 4 options.

a) ZERO - being that there will be no ongoing inflation at the end of the inflation schedule. I find this to be unnecessarily harsh to ourselves, giving us a hard and extremely arbitrary deadline on when our network must mature and sX fees must be the main contributor that drives staking incentives.

b) fixed percentage - being a fixed percentage of the total supply to continue. @jimbobkos made good points on this, specifically with regards to preventing price appreciation.

c) fixed amount - being a fixed (integer value) of SNX to continue. this would in effect be disinflation - inflation that is slowly decreasing over time percentage-wise relative to the total supply. My personal lean is actually towards this tail end emission structure. This is similar to Monero's supply policy (just replace Miners with Minters). I think that having some inflation to work around with is very important, especially if it takes longer than expected for sX to reach product-market fit and sX fees to drive the bulk of staking incentives. However, the scare issue of a fixed amount of SNX being perpetually inflated to minor value would become moot, since the ongoing inflation will progressively become less meaningful over time. Finally, a fixed amount like eg. 10,000 SNX a week is also a very straightforward number to reference and talk about.

d) algorithmic - something akin to what @meanderson has proposed, where the supply changes based on certain factors. I find this a bit too complex for my liking, but if we can all agree on a model, I think that this might end up being the most effective.

Regarding the ongoing inflation, I feel very much on the same page as @Clariti23 about not having scarcity simply for the sake of the scarcity meme, but also not absuing inflationary rewards if we do not need it.

I feel that some form of ongoing inflation is necessary so as to not set ourselves up for failure with arbitrary deadlines and self-restricted little maneuver space. On the flip side, I am not certain that ongoing inflation is actually a necessary protocol upgrade. If sX gains heavy usage and fees reach the point where inflationary rewards are no longer necessary, we should be open to the view that perhaps this ongoing inflation is just mainly a backup lifeline to keep us going along if we fail to hit our goals within the current 5 years of inflationary rewards.

This means that we should be more than ready and willing to vote to remove ongoing inflation when it becomes obvious that it is no longer necessary.

To summarize: I am FOR smoothening I am FOR this transition ASAP, or at the end of the 1st year of rewards I am FOR ongoing inflation, specifically c) fixed amount inflation I am FOR removing that ongoing inflation eventually if we can prove that we do not actually need it

Arthur0x commented 5 years ago

Great work @deltatigernz , this is a very detailed and well-thought-out SIP.

At this point I think there's almost no strong case to be made to against smoothing out the SNX inflationary schedule as the benefit clearly outweigh the cost. The argument of constant changing of monetary policy doesn’t really hold its ground well as the we are going through a well-researched and debated governance process before changing it. And it will be made clear that this is a major change that are unlikely to be altered except for some major reason.

For reasons above, I support smoothing out the inflationary schedule and agree with most that the end of year 1 inflationary schedule would be a good time to start and also give time for the foundation to get the upgrade ready.

I also support implementing tail emission together with this change. Part of the reason Synthetix managed to take off this year is due to the new staking reward policy implemented to encourage participation and we can see how successful this change has been. Our network staking rate is the highest among all crypto networks with staking mechanism standing at 70-80%. We have also managed to fix the peg of synthetic assets by diverting 5% of the staking reward pool to incentivize contributing liquidity to the sETH/ETH Uniswap pool. Given the empirical success of such mechanism, why should we completely remove it? Plus SNX have a very clear way of token value capture due to the exchange fee sharing so having more token don’t really dilute the value as long as the SNX holders is staking in the network.

I think fixed amount tail emission provide the most optimal trade-off since it is dis-inflationary as pointed out by @degenspartan yet still give us a good enough number of rewards to incentivize certain behaviour that will help the network. I think an emission rate representing 1-2% inflation at year seven seems to be the right number now. And I think we shouldn’t remove it entirely since there’s always some further improvement that can be made to the system and that extra emission will be very helpful in incentivizing Synthetix to move in the right and desired direction.

To summarize: I am FOR smoothing the SNX staking reward schedule I am FOR this transition ASAP, or at the end of the 1st year of rewards I am FOR ongoing inflation, specifically c) fixed amount inflation

deltatigernz commented 5 years ago

Thanks for the various comments @Clariti23 / Farmwell. No comments on your comments!! Much appreciated.

deltatigernz commented 5 years ago

@boymartian thanks for your comments! Some thoughts below:

perpetual inflation/emissions. If you're receiving fee income, I'm not sure I see point of perpetual inflation.

I actually think that in the tail years, the inflation would likely not be used for incentivizing staking the network. You are right that fee income should be sufficient to do that (and if it is not, we might have bigger problems on our hands than emissions schedule). However, fee income is likely not going to be used for other things so having some rewards ongoing could be useful. For example, incentives for the LP pool, or the Arb contract, or even just funding development if the foundation runs out of money, or other ideas we have yet to have come up with. The ability for the project to have this incentives lever ongoing is very powerful in my mind, and it far outweighs the risk of dilution to the project.

deltatigernz commented 5 years ago

Thanks for the comments @Arthur0x @degenspartan. Great stuff. I don't have a lot to add to your comments other than a couple below.

The strongest factor here is actually the Foundation's technical ability to get this upgrade ready for mainnet deployment

I agree. Basically the team could just let me know which week they wanted the changes to go live, and it would not be difficult to model the schedule accordingly from there so when it is voted for, the new proposed schedule could reflect this timing. Would just need to be given the week that new schedule would go into effect assuming the first week of rewards is week 0. Aside from that, I'm in favor of switching sooner rather than later mostly to at least attempt to preserve the initial schedule as much as possible.

I am FOR ongoing inflation, specifically c) fixed amount inflation

I took the liberty to do some additional modeling here to see how this looked. I updated the model to include a selector that allows you to select percentage (%) ongoing, or absolute (#) ongoing inflation. And I took queue from @Arthur0x around 2% ongoing inflation at year 7. It turns out that that is about 100k SNX per week (which is a nice round number). So I had a shot at modeling this out with the following parameters:

This is what the schedule looks like under those conditions.

Screen Shot 2019-10-21 at 10 29 44 PM Screen Shot 2019-10-21 at 10 29 52 PM

Happy to model a few other scenarios if folks have suggestions/thoughts.

boymartian commented 5 years ago

@boymartian thanks for your comments! Some thoughts below:

perpetual inflation/emissions. If you're receiving fee income, I'm not sure I see point of perpetual inflation.

I actually think that in the tail years, the inflation would likely not be used for incentivizing staking the network. You are right that fee income should be sufficient to do that (and if it is not, we might have bigger problems on our hands than emissions schedule). However, fee income is likely not going to be used for other things so having some rewards ongoing could be useful. For example, incentives for the LP pool, or the Arb contract, or even just funding development if the foundation runs out of money, or other ideas we have yet to have come up with. The ability for the project to have this incentives lever ongoing is very powerful in my mind, and it far outweighs the risk of dilution to the project.

Thanks, @deltatigernz! Your replies and the comments of others have changed my mind on perpetual inflation. I particularly like emitting a fixed number of SNX (i.e. 100k/weekly) as you modeled.

CryptoToit commented 5 years ago

Originally I was completely against a continual 'tail emission'. Now I think if it is relatively 'small', it can be useful to incentivise participation in sUSD & sETH Liquidity Pools and possibly the Arb contract to stabilise sUSD & sETH price.

I don't think it should be used as a Fee payment for Minters rewards - after the 5 years. That should be covered by the sUSD payments. If it can't then there is a bigger problem to resolve than this.

FrameworkVance commented 5 years ago

Hey guys,

After thinking a bit about on Framework's position on SIP 36, we've written our thoughts below. Look forward to discussing on the governance call tomorrow.

We support smoothing the inflation curve

We support a gradual decrease of inflation starting as soon as technically possible

image

We believe the team should re-allocate portions of inflation to value-add initiatives like what was done for the Uniswap ETH/sETH pool initiative

We support terminal inflation

kaiynne commented 5 years ago

Before putting down my thoughts on the proposal, I really want to say how gratifying it is to see the level of effort and engagement that has gone into proposal from the community, particularly @deltatigernz. I don't think I expected when we launched the SIP process that it would develop into the forum it has so quickly. We are working on a number of fronts to make the system more decentralised, but the change management process is in my view the most critical long term. So as an SNX holder, thank you to everyone who has stepped up and participated so far, and if you are lurking, add your thoughts! We need a wide range of views for this process to have legitimacy within the community.

With that said, I think it is worth mentioning what we tried to optimise for in the initial inflation schedule. We wanted a very high level of incentives early on to bootstrap staking, but without needing to significantly increase the final total supply. We modelled a number of options and ultimately the idea of a halvening seemed viable, we got high initial inflation but only 2.5x increase in total supply. We did not think that there were likely to be significant consequences to the drop in inflation after the first year. In hindsight, we probably got this wrong. But that is why we have opened up this process to the community to make sure in the future we anticipate these kinds of issues before making a change.

I have stepped back to let the process play out, and I'm now convinced that even if the risk of a halvening triggered event is negligible there is no reason not to remove that risk given that we have the opportunity to do so. So I support this change.

I also support the addition of a terminal fixed inflation and I like the idea of 100k SNX a week having reviewed the models proposed. I think that low terminal inflation is extremely valuable as we have already begun to see the emergence of a norm around exchange fees never being diverted. I think this is a good norm, the fees should always go to SNX stakers taking the risk by collateralising the system. Using inflationary rewards from the protocol to encourage other desirable behaviours is a much better approach than needing to divert exchange fees in the future. Which means if we think there will continue to be behaviours outside of staking we want to encourage we need terminal inflation.

I do not have a strong opinion on when we should make this change, however, I do think we need time to implement it and for people to be able to adjust their strategies based on the new information. I tend to think changing the rate of inflation at the close of the first year is ideal, but I think we could do it earlier without too much difficulty. I also think that if we want to reduce the current inflation we could implement the change proposed by Framework to build a pool of SNX for future incentives. This would have the effect of lowering the distributed inflationary rewards without needing to change the inflation schedule immediately. We could very easily divert 10% of the current inflation to a pool for future incentives, and it would not require a code change just an SCCP.

The final point is that I feel we must agree as a community that this is a critical change to make, and that we should also establish a norm that we will not modify the monetary policy of the system in the future unless it is critical to do so based on an event that has happened rather than a potential event in the future. We need to get this as close to right now, and accept that if we miss the mark slightly that confidence in the monetary policy in the future is more valuable than having this change be perfect.

TLDR: We should reduce the risk of a halvening triggered event by smoothing inflation We should add a fixed terminal inflation (~100k SNX p/w) to provide for ongoing incentives We should implement the change at the latest by the end of the first year We should accept that the monetary policy will not be modified again We should make these changes in a single future release It may be prudent to establish a pool for future incentives that are not yet identified.

Thanks again to everyone who has contributed and I look forward to discussing tomorrow!

CryptoToit commented 5 years ago

This is critically important!

"...we will not modify the monetary policy of the system in the future unless it is critical to do so based on an event that has happened rather than a potential event in the future. We need to get this as close to right now, and accept that if we miss the mark slightly that confidence in the monetary policy in the future is more valuable than having this change be perfect."

jjgonecrypto commented 5 years ago

I definitely second @kaiynne in how impressed I am with the detail and thoroughness everyone has put into this thread (especially @deltatigernz with an incredibly useful model). Working on this together with the community feels akin to collaborating on open source - the real promise of web3.

Personally I feel the same as @FrameworkVance and @kaiynne - smoothing with fixed terminal at 100k (@degenspartan - good insight on this, much better than compounding inflation IMO).

deltatigernz commented 5 years ago

Thanks @kaiynne @justinjmoses for the kind words and everyone else who has contributed to evolving this idea to where it is now. Couldn't have done it alone and ultimately think we are at a very good place to turn this into a formal proposal.

FrameworkVance commented 5 years ago

@deltatigernz Linking to the smoothing formal SIP so we can emoji-viote.

https://github.com/Synthetixio/SIPs/blob/master/SIPS/sip-23.md

FrameworkVance commented 5 years ago

@deltatigernz Linking to the terminal inflation SIP so we can emoji-vote.

https://github.com/Synthetixio/SIPs/blob/master/SIPS/sip-24.md

Fiskantes commented 5 years ago

Hello guys, and congratulations on such an active community.

  1. I am pro-smoothening as proposed, because I view that halvening can cause price death spiral, if there will be multiple big entities trying to front-run each other by withdrawing and selling.

  2. Regarding inflation I am not convinced it is necessary for the security of the system. If the project is successful, trading fees should be more than enough to reward stakers and justify value of SNX.

However I also do not have strong arguments against (small-ish) inflation, and intuitively I like @degenspartan 's proposal to introduce fixed amount - Moner like tail emission, with long, flat curve. If the majority would be for simple % inflation, I see no reason to make this bigger than 2% a year.

BTW I represent Sigil - crypto investment fund, and we have mid sized holdings staked in SNX tokens with the plan to be long term staker. I recently wrote this article on SNX: https://sigilfund.com/research/synthetix-io-sigil-research/. Once these proposals are decided, I will provide updated article and financial model.

RewKang commented 4 years ago

First of all, I am pro smoothening and pro-terminal inflation for the reasons discussed in the SIPs. However, I am against implementing the SIP based on the current numbers as I feel we haven't done a thorough enough analysis to justify the numbers and rates we are finalizing. I don't believe that we should be making serious/large monetary policy & mechanism design changes very often - so that when we do do it, we should have high conviction and strong empirical evidence/analysis to back the changes. It would be great if the community would be able to put a report like this together, but I think it maybe smart to look towards commissioning an economic consulting project with some outside experts. Our community is one of the most impressive in the space with top IQ, but we should recognize the constraints in both time and markets/economics experience.

To start, it would be prudent to think through what the key questions pertinent to an inflation change that should be answered. Here are my initial thoughts:

Making large economic changes without clear answers to these questions can result in negative outcomes. For example, right now even though we have a deep Uniswap pool, it is near impossible for traders to exit from synth to non-synth in even relatively small volumes ($10-20k) without losing
2-3% after slippage & fees. IMO paying 2-3% for merely exiting the system is too large and should be fixed via larger LP pool and arb incentives. LP Pool is still growing at a fast pace, so it is yet to be seen whether we need stronger incentives there, but the arb contract is consistently drained every week and the peg has problems retaining it's tightness. Currently the arb incentives are set to increase from 2% of total inflation to 5% resulting in 72,000 SNX of rewards being used weekly. Given the current peg situation, this is likely either enough or not enough.

However, if we were to taper total inflation down to only 100,000 SNX per week, this would result in only 5,000 SNX per week being used for the peg - a significant decrease in SNX terms - this is not enough. Even if we assume that SNX will increase in price proportional to usage of the system, we also need to take into account that arb incentives will also need to increase in price in proportion to usage of the system.

A larger base of synths and larger usage of Synthetix Exchange = more usage of entry/exit valves = larger pressures on peg. Without proper pegging incentives, the entire system doesn't work.

At the same time, SNX arb incentives can't be too great. Inflation directed towards those that arb are effectively an indirect tax on SNX holders. If the "tax" is too high then this inhibits minting of synths.

The same problem with 100k Weekly inflation also applies to the LP incentives.

Also, LP incentives can't be too large either - if they are too large, most of the synths are locked up in Uniswap and don't provide any utility to SX users. Would a system with 30%,40%,50%,80% of synths locked up Uniswap result in enough productivity for sustainable economics?

Of course, as Kain has mentioned in discord, there's no way to model the exact values and rates we need with perfect accuracy, but at the very least we should go through the exercise of thoroughly exploring these questions and ensuring that we are directionally correct and within a certain band of confidence when setting our monetary policy.

deltatigernz commented 4 years ago

Thanks for the comments @Fiskantes

If the project is successful, trading fees should be more than enough to reward stakers and justify value of SNX.

My thoughts on this is that trading fees should be enough to support the exchange, but I'm my mind terminal inflation should be aimed at other incentives, such as arb pool, liquidity pools, ect. I don't however think that these SIPs are where we decide what proceeds are. It is about smoothening the current schedule, and introducing terminal Inflation. Determining these should be seperate issues that in themselves are debated and discussed and voted on.

deltatigernz commented 4 years ago

@RewKang thanks for the thoughts here.

Making large economic changes without clear answers to these questions can result in negative outcomes.

I don't disagree that we should figure these things out, however if we try to answer all of these questions now we will not pass these SIPs and for the reasons identified in these proposals, we may end up with some problems.

I think that there is an argument for delaying decisions on terminal inflation, but not for inflation smoothening. The longer we wait on inflation smoothening, the sharper decline will be once we introduce them if we want to mirror current inflation schedule as much as possible.

But if we pass smoothening, then I'm in favor of taking an initial stab at terminal inflation around 2% (which is what it is at 100k per week), because something is better than nothing. And I think if we are to change it again later, for example if we decide it needs to be 150k per week, I think it would be easier to get support for changing it from 100k to 150k vs 0 to 150k.

Summary version, I think both should pass as is asap because we are already close to slipping behind the schedule that was designed into the new schedule.

deltatigernz commented 4 years ago

Hey all, after discussions with a number of community and team members, I would like to propose an update to SIP-23. Right now what is approved is 1.4% weekly decline of inflation starting week 38 of the current inflation schedule, however I've modified it to reduce the weekly decline to 1.25% so that the slope is not as steep and it gives the project a little more time to mature.

Here is what the new proposed emissions schedule looks like (without terminal inflation which I will address soon in a separate comment).

1 25% Weekly Decilne
deltatigernz commented 4 years ago

We would like to finalize SIP-24 so the team can implement terminal inflation.

After the last governance call, the consensus was that we should go with % based inflation vs a fixed absolute amount of terminal inflation, and that the range should be somewhere between 2-3% annual, given the information that we have on hand right now. Anything below is likely not going to be adequate to sustain the various incentive schemes that will exist, and anything above is likely to start seeming like a tax on the system.

So the only thing to decide right now is how much inflation is the right amount. There are 3 sets of V4 tabs in the model, modeled against the 1.25% weekly decline that was just approved above:

Please review the models and emoji vote with your preference.

deltatigernz commented 4 years ago

Final new inflation schedule.

New Inflation Schedule

Final new inflation schedule cumulative token issuance.

New Inflation Schedule Cumulative Token Issuance
deltatigernz commented 4 years ago

Final community approved versions of SIP-23 and SIP-24. Thanks everyone for the awesome input and collaboration on this.