From 8969b469c724e89f64ac42540d5f99948f6dc3b5 Mon Sep 17 00:00:00 2001 From: tjain-mcc <62672378+tjain-mcc@users.noreply.github.com> Date: Thu, 16 Jan 2025 09:34:16 -0600 Subject: [PATCH 1/8] Create simd0221 --- proposals/simd0221 | 132 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 132 insertions(+) create mode 100644 proposals/simd0221 diff --git a/proposals/simd0221 b/proposals/simd0221 new file mode 100644 index 000000000..eda453a05 --- /dev/null +++ b/proposals/simd0221 @@ -0,0 +1,132 @@ +SIMD ###: Introducing a Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate + +Authors: Tushar Jain, Vishal Kankani + +#Summary + +This is the first of two SIMDs intended to make Solana emissions more market oriented. This SIMD proposes a market-based mechanism to dynamically determine Solana emissions. + +#Motivation + +As Solana matures, stakers increasingly earn SOL through mechanisms like MEV. This income stream reduces the network's historical exclusive reliance on token emissions to attract stake and security. According to Blockworks (https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito Tips, was approximately $430M (2.1M SOL),representing massive quarter-over-quarter growth. In Q3 Jito Tips were approximately $86M (562k SOL), Q2 was approximately $117M (747k SOL), and Q1 was approximately $42M (300k SOL). + +Given the level of economic activity the network has achieved and the subsequent revenue earned by stakers from MEV, now is a good time to revisit the network’s emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. + +The purpose of token emissions in Proof of Stake (PoS) networks is to attract stakers and validators to secure the network. Therefore, the most efficient amount of token issuance is the lowest rate possible necessary to secure the network. + +Solana’s current emission mechanism is a fixed, time-based formula that was activated on epoch 150, a year after genesis on February 10, 2021. The mechanism is not aware of network activity, nor does it incorporate that to determine the emission rate. Simply put, it’s “dumb emissions.” Given Solana’s thriving economic activity, it makes sense to evolve the network’s monetary policy with “smart emissions.” + +There are two major implications of Smart Emissions: + +Smart Emissions dynamically incentivizes participation when stake drops to secure the network. +Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to secure the network. + +This is good for the Solana network and network stakers for four reasons: + +High inflation can lead to more centralized ownership. To illustrate the point, imagine a network with an exceedingly high inflation rate of 10,000%. People who do not stake are diluted and lose ~99% of their network ownership every year to stakers. The higher the inflation rate, the more network ownership is concentrated in stakers’ hands after compounding for years. + +Reducing inflation spurs SOL usage in DeFi, which is ultimately good for the applications and stimulates new protocol development. Additionally, a high staking rate can be viewed as unhealthy for new DeFi protocols, since it means the implied hurdle rate is the inflation cost. Lowering the “risk free” inflation rate creates stimulative conditions and allows new protocols to grow. + +If Smart Emissions function as designed, they will systematically reduce selling pressure as long as staking participation remains adequate. The inevitable side effect and primary downside to high token inflation is increased selling pressure. This is because some stakers in different jurisdictions have taken the interpretation that staking creates ordinary income, and therefore they must sell a portion of their staking rewards to pay taxes. This selling is a significant detriment to the network and does not benefit the network in any way. + + +In markets, sometimes perception is as important as reality. While SOL inflation is technically not cost to the network, others think it is, and that belief overall has a negative impact on the network. Inflation causes long-term, continual downward price pressure that negatively distorts the market’s price signal and hinders fair price comparison. To use an analogy from traditional financial markets, PoS inflation is equivalent to a publicly listed company doing a small share split every two days. + + +Historically, issuance curves have remained static due to Bitcoin’s immutability ethos—a “Bitcoin Hangover” so to speak. While immutability suits Bitcoin’s mission to become digital gold, it doesn’t map to Solana’s mission to synchronize the world’s state at light speed. + +In summary, the current Solana emissions schedule is suboptimal given the current level of activity and fees on the network because it emits more SOL than is necessary to secure the network. An issuance curve set by diktat is not the right long-term approach for Solana. Markets are the best mechanism in the world to determine prices, and therefore, they should be used to determine Solana’s emissions. + + +#Detailed Design + +###Five variables drive Solana’s staking market: +Yield for stakers (y) +Issuance Rate (i) - SOL emitted +SOL staked (N) +MEV in SOL terms (MEV) +Validator commissions (c) + +These variables are mathematically related: + + +y = ((i+MEV)/N)*(1-c) + +Currently, the network has a fixed issuance rate (i) while the number of SOL staked (N) fluctuates based on market conditions. MEV also fluctuates based on market conditions. + +When considering new models for issuance, this relationship is critical. + +##Proposed Design: +Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate + +A dynamic, market-based rate can be determined using the following factors: + +The Staking Participation Rate (s = SOL staked / Total SOL in existence) should be based on what is needed for consensus safety. +The network should reduce issuance if the staking participation rate is higher than the target rate and increase issuance if it is lower. +There should be a ceiling on the inflation rate as a protection mechanism. + +We imagine the Target Staking Participation Rate (T) as a governable variable and recommend a target staking participation rate of 50% for the following reasons: +Beyond 67% incremental staked SOL does not add any incremental security guarantees because a supermajority of all SOL has voted on any given block and a long range attack is impossible. This “excess stake” explicitly inhibits network economic activity and hampers growth. +Below 33%, we potentially risk network safety because a supermajority of all SOL has explicitly not voted on any given block and this opens the edge case possibility of long range attacks. + +It also proposes the following bounds for the issuance rate: +Upper Bound: The current Solana issuance curve (decreasing at a rate of 15% per year and will stop decreasing once nominal inflation is 1.5%). +Lower Bound: 0% + +Increases or decreases in inflation should be proportional to the magnitude of the difference between the actual staking participation rate and the target rate (for example, 50% as per this proposal). + +This approach would allow for a more dynamic response to fluctuations in staking participation. By aligning inflation adjustments with the actual deviation, network issuance better reflects the network’s real-time economic and security conditions. + +Inflation adjustment function: + +Δi= k * Δs + +Δi = Inflation change for the new epoch +k = Speed Co-efficient +Δs = Staking Participation Rate (s) at the start of epoch – Target Staking Participation Rate (T) + +inew = max (0%, min (current issuance curve, ilast + Δi) + +ilast = Inflation in the last epoch +inew = Inflation in the new epoch +current issuance curve = inflation defined by current Solana issuance curve + +This proposal sets k = 0.05 per annum. So, for each extra percentage point higher/lower in staking participation rate, inflation would come down/go up by 0.05% p.a. in the next epoch. With the current staking participation rate of ~70%, the network would see a reduction of inflation of 1% p.a. in the next epoch. On the other hand, with a hypothetical staking participation rate of say 40%, the network would see an increase of inflation of 0.5% p.a. in the next epoch. + +The max function ensures that inflation is at least zero, and the min function ensures that the inflation does not rise above the current issuance curve. +This design offers several key benefits: +Consensus Safety: Adjusting inflation based on staking participation ensures sufficient validator incentives to maintain network security, prioritizing consensus safety. +Market-Based Flexibility: The model adapts to the network's economic activity, making it more responsive to changing market conditions. It’s possible to imagine a future where stakers are earning enough from MEV that no SOL emissions are necessary. +Validator Retention: It accommodates Solana-aligned validators who are willing to stake even with lower emissions, recognizing that they can earn more through MEV in higher economic activity ecosystems. +This dynamic approach balances the need for a secure, decentralized network with the flexibility to thrive in a competitive market. +##Alternatives Considered + +###Alternative Design 1: Pick another fixed curve +A simple alternative would be to adjust the issuance rate to a fixed number, determined by community inputs. However, this approach presents several risks: +Lack of Market Mechanisms: Setting a fixed rate ignores the dynamics of free markets and the network’s real-time economic conditions. +Arbitrary Adjustments: Using another arbitrary number risks undermining the integrity of the system and may lead to decisions that are disconnected from the network’s needs. +Erosion of Trust: Relying on fixed adjustments could erode trust in the community’s decision-making process, especially if future changes seem disconnected from market realities. +Compromised Consensus Safety: A fixed issuance rate, especially in uncharted territory, could undermine consensus safety, as it would not be dynamically tied to staking participation or broader network health. +###Alternative Design 2: Fix Target Staking Yield +MEV has become a significant revenue source for stakers. One can consider changing the issuance rate by factoring in MEV tips, maintaining the same target yield as the original curve but offsetting it by the 30-day moving average of MEV tips. +New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips +MEV tips reflect real revenue for validators and stakers, allowing the system to adjust to market conditions: +Hot Markets: Higher MEV tips allow for lower emissions. +Cold Markets: Increased emissions compensate validators, maintaining network security. +This approach is inspired by central bank monetary policy, adjusting inflation based on economic conditions. +But the big challenge with this design is that it incentivizes MEV payments to move out of sight of the tracking mechanism, thereby rendering the design completely ineffective. +For an abundance of clarity, we are not proposing any design which requires measuring MEV payments. + +##Impact + +Implemented thoughtfully, this design could have a major positive economic impact on the overall health of the Solana economy. + +##Security Considerations + +Targeting a staking participation rate of 50% ensures sufficient stake for consensus safety while maintaining the network’s security and decentralization. + +Below 33%, we potentially risk network safety because a supermajority of all SOL has explicitly not voted on any given block and this opens the edge case possibility of long range attacks. It is important to note that these long range attacks are entirely theoretical and we have not seen one in practice. There are other mechanisms in Solana to protect against long range attacks. + +This proposal is the first in a series of steps to make Solana’s consensus more secure and economics more market driven. The successor to this proposal is another SIMD that introduces the concept of long-term staking, which seeks to improve network security. The option to unstake SOL on a relatively short notice (i.e., a short cool down period) poses a potential risk to networks’ stability and safety, particularly in extreme circumstances where a significant amount of SOL is unstaked within a brief timeframe. The combination of these two SIMDs address these concerns while improving network security and economic activity. + + From d27fd7c96f48ebf07554c172ecc6eb19855c1e2b Mon Sep 17 00:00:00 2001 From: tjain-mcc <62672378+tjain-mcc@users.noreply.github.com> Date: Thu, 16 Jan 2025 11:14:55 -0600 Subject: [PATCH 2/8] Update and rename simd0221 to 0228-market-based-emission-mechanism --- ...simd0221 => 0228-market-based-emission-mechanism} | 12 ++++++++++++ 1 file changed, 12 insertions(+) rename proposals/{simd0221 => 0228-market-based-emission-mechanism} (98%) diff --git a/proposals/simd0221 b/proposals/0228-market-based-emission-mechanism similarity index 98% rename from proposals/simd0221 rename to proposals/0228-market-based-emission-mechanism index eda453a05..43e64dce3 100644 --- a/proposals/simd0221 +++ b/proposals/0228-market-based-emission-mechanism @@ -1,3 +1,15 @@ +--- +simd: '0228' +title: Introducing a Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate +authors: + - Tushar Jain + - Vishal Kankani +category: Meta +type: Meta +status: Draft +created: 2025-01-16 +--- + SIMD ###: Introducing a Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate Authors: Tushar Jain, Vishal Kankani From d3edf6d0e99358ca1978a99e5876926491ecce02 Mon Sep 17 00:00:00 2001 From: Ben Hawkins Date: Thu, 16 Jan 2025 11:22:00 -0700 Subject: [PATCH 3/8] fix linting and formmating errors --- .../0228-market-based-emission-mechanism.md | 309 ++++++++++++++++++ 1 file changed, 309 insertions(+) create mode 100644 proposals/0228-market-based-emission-mechanism.md diff --git a/proposals/0228-market-based-emission-mechanism.md b/proposals/0228-market-based-emission-mechanism.md new file mode 100644 index 000000000..79bfc7a75 --- /dev/null +++ b/proposals/0228-market-based-emission-mechanism.md @@ -0,0 +1,309 @@ +--- +simd: '0228' +title: Introducing a Programmatic, Market-Based Emission Mechanism Based on +Staking Participation Rate +authors: + - Tushar Jain + - Vishal Kankani +category: Standard +type: Core +status: Review +created: 2025-01-16 +--- + + +## Summary + + +SIMD-0228 Introduces a Market-Based emission mechanism based on staking +participation rates. This is the first of two SIMDs intended to make Solana +emissions more market oriented. This SIMD proposes a market-based mechanism to +dynamically determine Solana emissions. + + +## Motivation + + +As Solana matures, stakers increasingly earn SOL through mechanisms like MEV. +This income stream reduces the network's historical exclusive reliance on token +emissions to attract stake and security. According to Blockworks +(https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito +Tips, was approximately $430M (2.1M SOL),representing massive quarter-over- +quarter growth. In Q3 Jito Tips were approximately $86M (562k SOL), Q2 was +approximately $117M (747k SOL), and Q1 was approximately $42M (300k SOL). + + +Given the level of economic activity the network has achieved and the subsequent +revenue earned by stakers from MEV, now is a good time to revisit the network’s +emission mechanism and evolve it from a fixed-schedule mechanism to a +programmatic, market-driven mechanism. + + +The purpose of token emissions in Proof of Stake (PoS) networks is to attract +stakers and validators to secure the network. Therefore, the most efficient +amount of token issuance is the lowest rate possible necessary to secure the +network. + + +Solana’s current emission mechanism is a fixed, time-based formula that was +activated on epoch 150, a year after genesis on February 10, 2021. The mechanism +is not aware of network activity, nor does it incorporate that to determine the +emission rate. Simply put, it’s “dumb emissions.” Given Solana’s thriving +economic activity, it makes sense to evolve the network’s monetary policy with +“smart emissions.” + + +There are two major implications of Smart Emissions: + + +Smart Emissions dynamically incentivizes participation when stake drops to +secure the network. +Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to +secure the network. + + +This is good for the Solana network and network stakers for four reasons: + + +High inflation can lead to more centralized ownership. To illustrate the point, +imagine a network with an exceedingly high inflation rate of 10,000%. People who +do not stake are diluted and lose ~99% of their network ownership every year to +stakers. The higher the inflation rate, the more network ownership is +concentrated in stakers’ hands after compounding for years. + + +Reducing inflation spurs SOL usage in DeFi, which is ultimately good for the +applications and stimulates new protocol development. Additionally, a high +staking rate can be viewed as unhealthy for new DeFi protocols, since it means +the implied hurdle rate is the inflation cost. Lowering the “risk free” +inflation rate creates stimulative conditions and allows new protocols to grow. + + +If Smart Emissions function as designed, they will systematically reduce selling +pressure as long as staking participation remains adequate. The inevitable side +effect and primary downside to high token inflation is increased selling +pressure. This is because some stakers in different jurisdictions have taken the +interpretation that staking creates ordinary income, and therefore they must +sell a portion of their staking rewards to pay taxes. This selling is a +significant detriment to the network and does not benefit the network in any +way. + + + + +In markets, sometimes perception is as important as reality. While SOL inflation +is technically not cost to the network, others think it is, and that belief +overall has a negative impact on the network. Inflation causes long-term, +continual downward price pressure that negatively distorts the market’s price +signal and hinders fair price comparison. To use an analogy from traditional +financial markets, PoS inflation is equivalent to a publicly listed company +doing a small share split every two days. + + + + +Historically, issuance curves have remained static due to Bitcoin’s immutability +ethos—a “Bitcoin Hangover” so to speak. While immutability suits Bitcoin’s +mission to become digital gold, it doesn’t map to Solana’s mission to +synchronize the world’s state at light speed. + + +In summary, the current Solana emissions schedule is suboptimal given the +current level of activity and fees on the network because it emits more SOL than +is necessary to secure the network. An issuance curve set by diktat is not the +right long-term approach for Solana. Markets are the best mechanism in the world +to determine prices, and therefore, they should be used to determine Solana’s +emissions. + + + + +## Detailed Design + + +### Five variables drive Solana’s staking market: +Yield for stakers (y) +Issuance Rate (i) - SOL emitted +SOL staked (N) +MEV in SOL terms (MEV) +Validator commissions (c) + + +These variables are mathematically related: + + + + +y = ((i+MEV)/N)*(1-c) + + +Currently, the network has a fixed issuance rate (i) while the number of SOL +staked (N) fluctuates based on market conditions. MEV also fluctuates based on +market conditions. + + +When considering new models for issuance, this relationship is critical. + +Programmatic, Market-Based Emission Mechanism Based on Staking Participation +Rate + + +A dynamic, market-based rate can be determined using the following factors: + + +The Staking Participation Rate (s = SOL staked / Total SOL in existence) should +be based on what is needed for consensus safety. +The network should reduce issuance if the staking participation rate is higher +than the target rate and increase issuance if it is lower. +There should be a ceiling on the inflation rate as a protection mechanism. + + +We imagine the Target Staking Participation Rate (T) as a governable variable +and recommend a target staking participation rate of 50% for the following +reasons: +Beyond 67% incremental staked SOL does not add any incremental security +guarantees because a supermajority of all SOL has voted on any given block and a +long range attack is impossible. This “excess stake” explicitly inhibits network +economic activity and hampers growth. +Below 33%, we potentially risk network safety because a supermajority of all SOL +has explicitly not voted on any given block and this opens the edge case +possibility of long range attacks. + + +It also proposes the following bounds for the issuance rate: +Upper Bound: The current Solana issuance curve (decreasing at a rate of 15% per +year and will stop decreasing once nominal inflation is 1.5%). +Lower Bound: 0% + + +Increases or decreases in inflation should be proportional to the magnitude of +the difference between the actual staking participation rate and the target rate +(for example, 50% as per this proposal). + + +This approach would allow for a more dynamic response to fluctuations in staking +participation. By aligning inflation adjustments with the actual deviation, +network issuance better reflects the network’s real-time economic and security +conditions. + + +Inflation adjustment function: + + +Δi= k * Δs + + +Δi = Inflation change for the new epoch +k = Speed Co-efficient +Δs = Staking Participation Rate (s) at the start of epoch – Target Staking +Participation Rate (T) + + +inew = max (0%, min (current issuance curve, ilast + Δi) + + +ilast = Inflation in the last epoch +inew = Inflation in the new epoch +current issuance curve = inflation defined by current Solana issuance curve + + +This proposal sets k = 0.05 per annum. So, for each extra percentage point +higher/lower in staking participation rate, inflation would come down/go up by +0.05% p.a. in the next epoch. With the current staking participation rate of +~70%, the network would see a reduction of inflation of 1% p.a. in the next +epoch. On the other hand, with a hypothetical staking participation rate of say +40%, the network would see an increase of inflation of 0.5% p.a. in the next +epoch. + + +The max function ensures that inflation is at least zero, and the min function +ensures that the inflation does not rise above the current issuance curve. +This design offers several key benefits: +Consensus Safety: Adjusting inflation based on staking participation ensures +sufficient validator incentives to maintain network security, prioritizing +consensus safety. +Market-Based Flexibility: The model adapts to the network's economic activity, +making it more responsive to changing market conditions. It’s possible to +imagine a future where stakers are earning enough from MEV that no SOL emissions +are necessary. +Validator Retention: It accommodates Solana-aligned validators who are willing +to stake even with lower emissions, recognizing that they can earn more through +MEV in higher economic activity ecosystems. +This dynamic approach balances the need for a secure, decentralized network with +the flexibility to thrive in a competitive market. + + + + +## Alternatives Considered + + +### Alternative Design 1: Pick another fixed curve +A simple alternative would be to adjust the issuance rate to a fixed number, +determined by community inputs. However, this approach presents several risks: +Lack of Market Mechanisms: Setting a fixed rate ignores the dynamics of free +markets and the network’s real-time economic conditions. +Arbitrary Adjustments: Using another arbitrary number risks undermining the +integrity of the system and may lead to decisions that are disconnected from the +network’s needs. +Erosion of Trust: Relying on fixed adjustments could erode trust in the +community’s decision-making process, especially if future changes seem +disconnected from market realities. +Compromised Consensus Safety: A fixed issuance rate, especially in uncharted +territory, could undermine consensus safety, as it would not be dynamically tied +to staking participation or broader network health. + + +### Alternative Design 2: Fix Target Staking Yield +MEV has become a significant revenue source for stakers. One can consider +changing the issuance rate by factoring in MEV tips, maintaining the same +target yield as the original curve but offsetting it by the 30-day moving +average of MEV tips. +New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips +MEV tips reflect real revenue for validators and stakers, allowing the system to +adjust to market conditions: +Hot Markets: Higher MEV tips allow for lower emissions. +Cold Markets: Increased emissions compensate validators, maintaining network +security. +This approach is inspired by central bank monetary policy, adjusting inflation +based on economic conditions. +But the big challenge with this design is that it incentivizes MEV payments to +move out of sight of the tracking mechanism, thereby rendering the design +completely ineffective. +For an abundance of clarity, we are not proposing any design which requires +measuring MEV payments. + + +## Impact + + +Implemented thoughtfully, this design could have a major positive economic +impact on the overall health of the Solana economy. + + +## Security Considerations + + +Targeting a staking participation rate of 50% ensures sufficient stake for +consensus safety while maintaining the network’s security and decentralization. + + +Below 33%, we potentially risk network safety because a supermajority of all SOL +has explicitly not voted on any given block and this opens the edge case +possibility of long range attacks. It is important to note that these long range +attacks are entirely theoretical and we have not seen one in practice. There are +other mechanisms in Solana to protect against long range attacks. + + +This proposal is the first in a series of steps to make Solana’s consensus more +secure and economics more market driven. The successor to this proposal is +another SIMD that introduces the concept of long-term staking, which seeks to +improve network security. The option to unstake SOL on a relatively short notice +(i.e., a short cool down period) poses a potential risk to networks’ stability +and safety, particularly in extreme circumstances where a significant amount of +SOL is unstaked within a brief timeframe. The combination of these two SIMDs +address these concerns while improving network security and economic activity. + + + + From 1269d695717a810faa91d6b4fb697eb161aadb25 Mon Sep 17 00:00:00 2001 From: Ben Hawkins Date: Thu, 16 Jan 2025 11:23:10 -0700 Subject: [PATCH 4/8] delete old file --- .../0228-market-based-emission-mechanism | 144 ------------------ 1 file changed, 144 deletions(-) delete mode 100644 proposals/0228-market-based-emission-mechanism diff --git a/proposals/0228-market-based-emission-mechanism b/proposals/0228-market-based-emission-mechanism deleted file mode 100644 index 43e64dce3..000000000 --- a/proposals/0228-market-based-emission-mechanism +++ /dev/null @@ -1,144 +0,0 @@ ---- -simd: '0228' -title: Introducing a Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate -authors: - - Tushar Jain - - Vishal Kankani -category: Meta -type: Meta -status: Draft -created: 2025-01-16 ---- - -SIMD ###: Introducing a Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate - -Authors: Tushar Jain, Vishal Kankani - -#Summary - -This is the first of two SIMDs intended to make Solana emissions more market oriented. This SIMD proposes a market-based mechanism to dynamically determine Solana emissions. - -#Motivation - -As Solana matures, stakers increasingly earn SOL through mechanisms like MEV. This income stream reduces the network's historical exclusive reliance on token emissions to attract stake and security. According to Blockworks (https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito Tips, was approximately $430M (2.1M SOL),representing massive quarter-over-quarter growth. In Q3 Jito Tips were approximately $86M (562k SOL), Q2 was approximately $117M (747k SOL), and Q1 was approximately $42M (300k SOL). - -Given the level of economic activity the network has achieved and the subsequent revenue earned by stakers from MEV, now is a good time to revisit the network’s emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. - -The purpose of token emissions in Proof of Stake (PoS) networks is to attract stakers and validators to secure the network. Therefore, the most efficient amount of token issuance is the lowest rate possible necessary to secure the network. - -Solana’s current emission mechanism is a fixed, time-based formula that was activated on epoch 150, a year after genesis on February 10, 2021. The mechanism is not aware of network activity, nor does it incorporate that to determine the emission rate. Simply put, it’s “dumb emissions.” Given Solana’s thriving economic activity, it makes sense to evolve the network’s monetary policy with “smart emissions.” - -There are two major implications of Smart Emissions: - -Smart Emissions dynamically incentivizes participation when stake drops to secure the network. -Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to secure the network. - -This is good for the Solana network and network stakers for four reasons: - -High inflation can lead to more centralized ownership. To illustrate the point, imagine a network with an exceedingly high inflation rate of 10,000%. People who do not stake are diluted and lose ~99% of their network ownership every year to stakers. The higher the inflation rate, the more network ownership is concentrated in stakers’ hands after compounding for years. - -Reducing inflation spurs SOL usage in DeFi, which is ultimately good for the applications and stimulates new protocol development. Additionally, a high staking rate can be viewed as unhealthy for new DeFi protocols, since it means the implied hurdle rate is the inflation cost. Lowering the “risk free” inflation rate creates stimulative conditions and allows new protocols to grow. - -If Smart Emissions function as designed, they will systematically reduce selling pressure as long as staking participation remains adequate. The inevitable side effect and primary downside to high token inflation is increased selling pressure. This is because some stakers in different jurisdictions have taken the interpretation that staking creates ordinary income, and therefore they must sell a portion of their staking rewards to pay taxes. This selling is a significant detriment to the network and does not benefit the network in any way. - - -In markets, sometimes perception is as important as reality. While SOL inflation is technically not cost to the network, others think it is, and that belief overall has a negative impact on the network. Inflation causes long-term, continual downward price pressure that negatively distorts the market’s price signal and hinders fair price comparison. To use an analogy from traditional financial markets, PoS inflation is equivalent to a publicly listed company doing a small share split every two days. - - -Historically, issuance curves have remained static due to Bitcoin’s immutability ethos—a “Bitcoin Hangover” so to speak. While immutability suits Bitcoin’s mission to become digital gold, it doesn’t map to Solana’s mission to synchronize the world’s state at light speed. - -In summary, the current Solana emissions schedule is suboptimal given the current level of activity and fees on the network because it emits more SOL than is necessary to secure the network. An issuance curve set by diktat is not the right long-term approach for Solana. Markets are the best mechanism in the world to determine prices, and therefore, they should be used to determine Solana’s emissions. - - -#Detailed Design - -###Five variables drive Solana’s staking market: -Yield for stakers (y) -Issuance Rate (i) - SOL emitted -SOL staked (N) -MEV in SOL terms (MEV) -Validator commissions (c) - -These variables are mathematically related: - - -y = ((i+MEV)/N)*(1-c) - -Currently, the network has a fixed issuance rate (i) while the number of SOL staked (N) fluctuates based on market conditions. MEV also fluctuates based on market conditions. - -When considering new models for issuance, this relationship is critical. - -##Proposed Design: -Programmatic, Market-Based Emission Mechanism Based on Staking Participation Rate - -A dynamic, market-based rate can be determined using the following factors: - -The Staking Participation Rate (s = SOL staked / Total SOL in existence) should be based on what is needed for consensus safety. -The network should reduce issuance if the staking participation rate is higher than the target rate and increase issuance if it is lower. -There should be a ceiling on the inflation rate as a protection mechanism. - -We imagine the Target Staking Participation Rate (T) as a governable variable and recommend a target staking participation rate of 50% for the following reasons: -Beyond 67% incremental staked SOL does not add any incremental security guarantees because a supermajority of all SOL has voted on any given block and a long range attack is impossible. This “excess stake” explicitly inhibits network economic activity and hampers growth. -Below 33%, we potentially risk network safety because a supermajority of all SOL has explicitly not voted on any given block and this opens the edge case possibility of long range attacks. - -It also proposes the following bounds for the issuance rate: -Upper Bound: The current Solana issuance curve (decreasing at a rate of 15% per year and will stop decreasing once nominal inflation is 1.5%). -Lower Bound: 0% - -Increases or decreases in inflation should be proportional to the magnitude of the difference between the actual staking participation rate and the target rate (for example, 50% as per this proposal). - -This approach would allow for a more dynamic response to fluctuations in staking participation. By aligning inflation adjustments with the actual deviation, network issuance better reflects the network’s real-time economic and security conditions. - -Inflation adjustment function: - -Δi= k * Δs - -Δi = Inflation change for the new epoch -k = Speed Co-efficient -Δs = Staking Participation Rate (s) at the start of epoch – Target Staking Participation Rate (T) - -inew = max (0%, min (current issuance curve, ilast + Δi) - -ilast = Inflation in the last epoch -inew = Inflation in the new epoch -current issuance curve = inflation defined by current Solana issuance curve - -This proposal sets k = 0.05 per annum. So, for each extra percentage point higher/lower in staking participation rate, inflation would come down/go up by 0.05% p.a. in the next epoch. With the current staking participation rate of ~70%, the network would see a reduction of inflation of 1% p.a. in the next epoch. On the other hand, with a hypothetical staking participation rate of say 40%, the network would see an increase of inflation of 0.5% p.a. in the next epoch. - -The max function ensures that inflation is at least zero, and the min function ensures that the inflation does not rise above the current issuance curve. -This design offers several key benefits: -Consensus Safety: Adjusting inflation based on staking participation ensures sufficient validator incentives to maintain network security, prioritizing consensus safety. -Market-Based Flexibility: The model adapts to the network's economic activity, making it more responsive to changing market conditions. It’s possible to imagine a future where stakers are earning enough from MEV that no SOL emissions are necessary. -Validator Retention: It accommodates Solana-aligned validators who are willing to stake even with lower emissions, recognizing that they can earn more through MEV in higher economic activity ecosystems. -This dynamic approach balances the need for a secure, decentralized network with the flexibility to thrive in a competitive market. -##Alternatives Considered - -###Alternative Design 1: Pick another fixed curve -A simple alternative would be to adjust the issuance rate to a fixed number, determined by community inputs. However, this approach presents several risks: -Lack of Market Mechanisms: Setting a fixed rate ignores the dynamics of free markets and the network’s real-time economic conditions. -Arbitrary Adjustments: Using another arbitrary number risks undermining the integrity of the system and may lead to decisions that are disconnected from the network’s needs. -Erosion of Trust: Relying on fixed adjustments could erode trust in the community’s decision-making process, especially if future changes seem disconnected from market realities. -Compromised Consensus Safety: A fixed issuance rate, especially in uncharted territory, could undermine consensus safety, as it would not be dynamically tied to staking participation or broader network health. -###Alternative Design 2: Fix Target Staking Yield -MEV has become a significant revenue source for stakers. One can consider changing the issuance rate by factoring in MEV tips, maintaining the same target yield as the original curve but offsetting it by the 30-day moving average of MEV tips. -New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips -MEV tips reflect real revenue for validators and stakers, allowing the system to adjust to market conditions: -Hot Markets: Higher MEV tips allow for lower emissions. -Cold Markets: Increased emissions compensate validators, maintaining network security. -This approach is inspired by central bank monetary policy, adjusting inflation based on economic conditions. -But the big challenge with this design is that it incentivizes MEV payments to move out of sight of the tracking mechanism, thereby rendering the design completely ineffective. -For an abundance of clarity, we are not proposing any design which requires measuring MEV payments. - -##Impact - -Implemented thoughtfully, this design could have a major positive economic impact on the overall health of the Solana economy. - -##Security Considerations - -Targeting a staking participation rate of 50% ensures sufficient stake for consensus safety while maintaining the network’s security and decentralization. - -Below 33%, we potentially risk network safety because a supermajority of all SOL has explicitly not voted on any given block and this opens the edge case possibility of long range attacks. It is important to note that these long range attacks are entirely theoretical and we have not seen one in practice. There are other mechanisms in Solana to protect against long range attacks. - -This proposal is the first in a series of steps to make Solana’s consensus more secure and economics more market driven. The successor to this proposal is another SIMD that introduces the concept of long-term staking, which seeks to improve network security. The option to unstake SOL on a relatively short notice (i.e., a short cool down period) poses a potential risk to networks’ stability and safety, particularly in extreme circumstances where a significant amount of SOL is unstaked within a brief timeframe. The combination of these two SIMDs address these concerns while improving network security and economic activity. - - From 24b1b71062b3521c37ac2c64306312bfcc7aff25 Mon Sep 17 00:00:00 2001 From: Max Resnick Date: Tue, 28 Jan 2025 20:14:48 -0500 Subject: [PATCH 5/8] replaced the old mechanism with a static curve --- .../0228-market-based-emission-mechanism.md | 250 ++++-------------- .../issuance_rate.png | Bin 0 -> 39811 bytes .../validator_returns.png | Bin 0 -> 62937 bytes 3 files changed, 57 insertions(+), 193 deletions(-) create mode 100644 suporting_images/0228-market-based-emission-mechanism/issuance_rate.png create mode 100644 suporting_images/0228-market-based-emission-mechanism/validator_returns.png diff --git a/proposals/0228-market-based-emission-mechanism.md b/proposals/0228-market-based-emission-mechanism.md index 79bfc7a75..dc12d67cb 100644 --- a/proposals/0228-market-based-emission-mechanism.md +++ b/proposals/0228-market-based-emission-mechanism.md @@ -1,10 +1,10 @@ --- simd: '0228' -title: Introducing a Programmatic, Market-Based Emission Mechanism Based on -Staking Participation Rate +title: Market-Based Emission Mechanism Based on staking Participation Rate authors: - Tushar Jain - Vishal Kankani + - Max Resnick category: Standard type: Core status: Review @@ -14,71 +14,60 @@ created: 2025-01-16 ## Summary - SIMD-0228 Introduces a Market-Based emission mechanism based on staking -participation rates. This is the first of two SIMDs intended to make Solana -emissions more market oriented. This SIMD proposes a market-based mechanism to -dynamically determine Solana emissions. +participation rates. The mechanism is a static curve that reduces the total issuance +rate by a factor of the square root of the staking participation rate. ## Motivation - -As Solana matures, stakers increasingly earn SOL through mechanisms like MEV. -This income stream reduces the network's historical exclusive reliance on token -emissions to attract stake and security. According to Blockworks -(https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito -Tips, was approximately $430M (2.1M SOL),representing massive quarter-over- -quarter growth. In Q3 Jito Tips were approximately $86M (562k SOL), Q2 was -approximately $117M (747k SOL), and Q1 was approximately $42M (300k SOL). - +Solana has historically relied on token emissions to attract stake and guarantee security. +As Solana matures, stakers are increasingly earning SOL from other sources (e.g. MEV). +These developments have resulted in an increasing fraction of the Solana supply staked, +meaning the network is now overpaying security since emissions haven't adjusted to the elevated demand for staking. +According to Blockworks (https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito +Tips, was approximately \$430M (2.1M SOL), representing massive quarter-over- +quarter growth. In Q3 Jito Tips were approximately \$86M (562k SOL), Q2 was +approximately \$117M (747k SOL), and Q1 was approximately \$42M (300k SOL). Given the level of economic activity the network has achieved and the subsequent -revenue earned by stakers from MEV, now is a good time to revisit the network’s +revenue earned by stakers from MEV, now is a good time to revisit the network's emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. - The purpose of token emissions in Proof of Stake (PoS) networks is to attract -stakers and validators to secure the network. Therefore, the most efficient +stakers and validators to secure the network. But issuance should never by higher than needed because Therefore, the most efficient amount of token issuance is the lowest rate possible necessary to secure the network. - -Solana’s current emission mechanism is a fixed, time-based formula that was +Solana's current emission mechanism is a fixed, time-based formula that was activated on epoch 150, a year after genesis on February 10, 2021. The mechanism is not aware of network activity, nor does it incorporate that to determine the -emission rate. Simply put, it’s “dumb emissions.” Given Solana’s thriving -economic activity, it makes sense to evolve the network’s monetary policy with -“smart emissions.” - +emission rate. Simply put, it's "dumb emissions." Given Solana's thriving +economic activity, it makes sense to evolve the network's monetary policy with +"smart emissions." There are two major implications of Smart Emissions: - Smart Emissions dynamically incentivizes participation when stake drops to secure the network. Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to secure the network. - This is good for the Solana network and network stakers for four reasons: - High inflation can lead to more centralized ownership. To illustrate the point, imagine a network with an exceedingly high inflation rate of 10,000%. People who do not stake are diluted and lose ~99% of their network ownership every year to stakers. The higher the inflation rate, the more network ownership is -concentrated in stakers’ hands after compounding for years. - +concentrated in stakers' hands after compounding for years. Reducing inflation spurs SOL usage in DeFi, which is ultimately good for the applications and stimulates new protocol development. Additionally, a high staking rate can be viewed as unhealthy for new DeFi protocols, since it means -the implied hurdle rate is the inflation cost. Lowering the “risk free” +the implied hurdle rate is the inflation cost. Lowering the "risk free" inflation rate creates stimulative conditions and allows new protocols to grow. - If Smart Emissions function as designed, they will systematically reduce selling pressure as long as staking participation remains adequate. The inevitable side effect and primary downside to high token inflation is increased selling @@ -88,205 +77,84 @@ sell a portion of their staking rewards to pay taxes. This selling is a significant detriment to the network and does not benefit the network in any way. - - - In markets, sometimes perception is as important as reality. While SOL inflation is technically not cost to the network, others think it is, and that belief overall has a negative impact on the network. Inflation causes long-term, -continual downward price pressure that negatively distorts the market’s price +continual downward price pressure that negatively distorts the market's price signal and hinders fair price comparison. To use an analogy from traditional financial markets, PoS inflation is equivalent to a publicly listed company doing a small share split every two days. - - - -Historically, issuance curves have remained static due to Bitcoin’s immutability -ethos—a “Bitcoin Hangover” so to speak. While immutability suits Bitcoin’s -mission to become digital gold, it doesn’t map to Solana’s mission to -synchronize the world’s state at light speed. - +Historically, issuance curves have remained static due to Bitcoin's immutability +ethos—a "Bitcoin Hangover" so to speak. While immutability suits Bitcoin's +mission to become digital gold, it doesn't map to Solana's mission to +synchronize the world's state at light speed. In summary, the current Solana emissions schedule is suboptimal given the current level of activity and fees on the network because it emits more SOL than is necessary to secure the network. An issuance curve set by diktat is not the right long-term approach for Solana. Markets are the best mechanism in the world -to determine prices, and therefore, they should be used to determine Solana’s +to determine prices, and therefore, they should be used to determine Solana's emissions. - - - ## Detailed Design +### The Variables: -### Five variables drive Solana’s staking market: -Yield for stakers (y) -Issuance Rate (i) - SOL emitted -SOL staked (N) -MEV in SOL terms (MEV) -Validator commissions (c) - - -These variables are mathematically related: - - - - -y = ((i+MEV)/N)*(1-c) - - -Currently, the network has a fixed issuance rate (i) while the number of SOL -staked (N) fluctuates based on market conditions. MEV also fluctuates based on -market conditions. - - -When considering new models for issuance, this relationship is critical. - -Programmatic, Market-Based Emission Mechanism Based on Staking Participation -Rate +- Fraction of total supply staked: $s$ +- Issuance Rate $i$ +- Validator returns $v(s) = \frac{i}{s} + MEV$ +- r is the current inflation rate which is a constant (currently 4.5%) that automatically goes down by 15% every year until it reaches 1.5% where it stops changing. +### New Emission Rate Formula -A dynamic, market-based rate can be determined using the following factors: +The issuance rate formula is: +$i(s) = r(1 - \sqrt{s})$ -The Staking Participation Rate (s = SOL staked / Total SOL in existence) should -be based on what is needed for consensus safety. -The network should reduce issuance if the staking participation rate is higher -than the target rate and increase issuance if it is lower. -There should be a ceiling on the inflation rate as a protection mechanism. +![Issuance Rate](../suporting_images/0228-market-based-emission-mechanism/issuance_rate.png) +This yields a vote reward rate for validators with good performance of: -We imagine the Target Staking Participation Rate (T) as a governable variable -and recommend a target staking participation rate of 50% for the following -reasons: -Beyond 67% incremental staked SOL does not add any incremental security -guarantees because a supermajority of all SOL has voted on any given block and a -long range attack is impossible. This “excess stake” explicitly inhibits network -economic activity and hampers growth. -Below 33%, we potentially risk network safety because a supermajority of all SOL -has explicitly not voted on any given block and this opens the edge case -possibility of long range attacks. - - -It also proposes the following bounds for the issuance rate: -Upper Bound: The current Solana issuance curve (decreasing at a rate of 15% per -year and will stop decreasing once nominal inflation is 1.5%). -Lower Bound: 0% - - -Increases or decreases in inflation should be proportional to the magnitude of -the difference between the actual staking participation rate and the target rate -(for example, 50% as per this proposal). - - -This approach would allow for a more dynamic response to fluctuations in staking -participation. By aligning inflation adjustments with the actual deviation, -network issuance better reflects the network’s real-time economic and security -conditions. - - -Inflation adjustment function: - - -Δi= k * Δs - - -Δi = Inflation change for the new epoch -k = Speed Co-efficient -Δs = Staking Participation Rate (s) at the start of epoch – Target Staking -Participation Rate (T) - - -inew = max (0%, min (current issuance curve, ilast + Δi) - - -ilast = Inflation in the last epoch -inew = Inflation in the new epoch -current issuance curve = inflation defined by current Solana issuance curve - - -This proposal sets k = 0.05 per annum. So, for each extra percentage point -higher/lower in staking participation rate, inflation would come down/go up by -0.05% p.a. in the next epoch. With the current staking participation rate of -~70%, the network would see a reduction of inflation of 1% p.a. in the next -epoch. On the other hand, with a hypothetical staking participation rate of say -40%, the network would see an increase of inflation of 0.5% p.a. in the next -epoch. - - -The max function ensures that inflation is at least zero, and the min function -ensures that the inflation does not rise above the current issuance curve. -This design offers several key benefits: -Consensus Safety: Adjusting inflation based on staking participation ensures -sufficient validator incentives to maintain network security, prioritizing -consensus safety. -Market-Based Flexibility: The model adapts to the network's economic activity, -making it more responsive to changing market conditions. It’s possible to -imagine a future where stakers are earning enough from MEV that no SOL emissions -are necessary. -Validator Retention: It accommodates Solana-aligned validators who are willing -to stake even with lower emissions, recognizing that they can earn more through -MEV in higher economic activity ecosystems. -This dynamic approach balances the need for a secure, decentralized network with -the flexibility to thrive in a competitive market. - +$v(s) = \frac{i(s)}{s} = \frac{r(1 - \sqrt{s})}{s}$ +![Issuance Rate](../suporting_images/0228-market-based-emission-mechanism/validator_returns.png) ## Alternatives Considered +### Alternative Design 1: Pick another fixed rate -### Alternative Design 1: Pick another fixed curve -A simple alternative would be to adjust the issuance rate to a fixed number, +A simple alternative would be to adjust the issuance rate to a fixed number, $r$ determined by community inputs. However, this approach presents several risks: Lack of Market Mechanisms: Setting a fixed rate ignores the dynamics of free -markets and the network’s real-time economic conditions. -Arbitrary Adjustments: Using another arbitrary number risks undermining the -integrity of the system and may lead to decisions that are disconnected from the -network’s needs. -Erosion of Trust: Relying on fixed adjustments could erode trust in the -community’s decision-making process, especially if future changes seem -disconnected from market realities. -Compromised Consensus Safety: A fixed issuance rate, especially in uncharted -territory, could undermine consensus safety, as it would not be dynamically tied -to staking participation or broader network health. - +markets and the network's real-time economic conditions: +- **Lack of Market Mechanisms**: Setting a fixed rate ignores the dynamics of free markets and the network's real-time economic conditions +- **Arbitrary Adjustments**: Using another arbitrary number risks undermining the integrity of the system and may lead to decisions that are disconnected from the network's needs +- **Erosion of Trust**: Relying on fixed adjustments could erode trust in the community's decision-making process, especially if future changes seem disconnected from market realities +- **Compromised Consensus Safety**: A fixed issuance rate, especially in uncharted territory, could undermine consensus safety, as it would not be dynamically tied to staking participation or broader network health ### Alternative Design 2: Fix Target Staking Yield -MEV has become a significant revenue source for stakers. One can consider -changing the issuance rate by factoring in MEV tips, maintaining the same -target yield as the original curve but offsetting it by the 30-day moving -average of MEV tips. -New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips -MEV tips reflect real revenue for validators and stakers, allowing the system to -adjust to market conditions: -Hot Markets: Higher MEV tips allow for lower emissions. -Cold Markets: Increased emissions compensate validators, maintaining network -security. -This approach is inspired by central bank monetary policy, adjusting inflation -based on economic conditions. -But the big challenge with this design is that it incentivizes MEV payments to -move out of sight of the tracking mechanism, thereby rendering the design -completely ineffective. -For an abundance of clarity, we are not proposing any design which requires -measuring MEV payments. +- **Revenue Source**: MEV has become a significant revenue source for stakers. +- **Proposed Change**: One can consider changing the issuance rate by factoring in MEV tips, maintaining the same target yield as the original curve but offsetting it by the 30-day moving average of MEV tips. +- **Formula**: New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips +- **Market Impact**: MEV tips reflect real revenue for validators and stakers, allowing the system to adjust to market conditions: + - **Hot Markets**: Higher MEV tips allow for lower emissions. + - **Cold Markets**: Increased emissions compensate validators, maintaining network security. +- **Inspiration**: This approach is inspired by central bank monetary policy, adjusting inflation based on economic conditions. +- **Key Challenge**: The big challenge with this design is that it incentivizes MEV payments to move out of sight of the tracking mechanism, thereby rendering the design completely ineffective. +- **Important Note**: For an abundance of clarity, we are not proposing any design which requires measuring MEV payments. ## Impact - Implemented thoughtfully, this design could have a major positive economic impact on the overall health of the Solana economy. - ## Security Considerations - Targeting a staking participation rate of 50% ensures sufficient stake for -consensus safety while maintaining the network’s security and decentralization. - +consensus safety while maintaining the network's security and decentralization. Below 33%, we potentially risk network safety because a supermajority of all SOL has explicitly not voted on any given block and this opens the edge case @@ -294,16 +162,12 @@ possibility of long range attacks. It is important to note that these long range attacks are entirely theoretical and we have not seen one in practice. There are other mechanisms in Solana to protect against long range attacks. - -This proposal is the first in a series of steps to make Solana’s consensus more +This proposal is the first in a series of steps to make Solana's consensus more secure and economics more market driven. The successor to this proposal is another SIMD that introduces the concept of long-term staking, which seeks to improve network security. The option to unstake SOL on a relatively short notice -(i.e., a short cool down period) poses a potential risk to networks’ stability +(i.e., a short cool down period) poses a potential risk to networks' stability and safety, particularly in extreme circumstances where a significant amount of SOL is unstaked within a brief timeframe. The combination of these two SIMDs address these concerns while improving network security and economic activity. - - - diff --git a/suporting_images/0228-market-based-emission-mechanism/issuance_rate.png b/suporting_images/0228-market-based-emission-mechanism/issuance_rate.png new file mode 100644 index 0000000000000000000000000000000000000000..b19232de2e3c3dba7bf2a16bc157d6677e5b7739 GIT binary patch literal 39811 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 kTO|LKvH!oST@N`|NLT4(ySMB@E1PmcO73XOV literal 0 HcmV?d00001 diff --git a/suporting_images/0228-market-based-emission-mechanism/validator_returns.png b/suporting_images/0228-market-based-emission-mechanism/validator_returns.png new file mode 100644 index 0000000000000000000000000000000000000000..21daebac7089ddd66deb72b265bec2d33603bef0 GIT binary patch literal 62937 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Ǖ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

`iKAHEA-AG%9w!Cr|H%l`kPO$lmtPI)oU_|r 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 Cv13aB literal 0 HcmV?d00001 From 66c26a90c89ce5049a10ad2b6deafbb70091ad9f Mon Sep 17 00:00:00 2001 From: Max Resnick Date: Wed, 29 Jan 2025 13:45:42 -0500 Subject: [PATCH 6/8] fixing typos --- .../0228-market-based-emission-mechanism.md | 23 ++++--------------- 1 file changed, 4 insertions(+), 19 deletions(-) diff --git a/proposals/0228-market-based-emission-mechanism.md b/proposals/0228-market-based-emission-mechanism.md index dc12d67cb..9aeac0589 100644 --- a/proposals/0228-market-based-emission-mechanism.md +++ b/proposals/0228-market-based-emission-mechanism.md @@ -36,7 +36,7 @@ emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. The purpose of token emissions in Proof of Stake (PoS) networks is to attract -stakers and validators to secure the network. But issuance should never by higher than needed because Therefore, the most efficient +stakers and validators to secure the network. But issuance should never be higher than needed because Therefore, the most efficient amount of token issuance is the lowest rate possible necessary to secure the network. @@ -51,7 +51,7 @@ There are two major implications of Smart Emissions: Smart Emissions dynamically incentivizes participation when stake drops to secure the network. -Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to +Smart Emissions minimize SOL issuance to the Minimum Necessary Amount (MNA) to secure the network. This is good for the Solana network and network stakers for four reasons: @@ -153,21 +153,6 @@ impact on the overall health of the Solana economy. ## Security Considerations -Targeting a staking participation rate of 50% ensures sufficient stake for -consensus safety while maintaining the network's security and decentralization. - -Below 33%, we potentially risk network safety because a supermajority of all SOL -has explicitly not voted on any given block and this opens the edge case -possibility of long range attacks. It is important to note that these long range -attacks are entirely theoretical and we have not seen one in practice. There are -other mechanisms in Solana to protect against long range attacks. - -This proposal is the first in a series of steps to make Solana's consensus more -secure and economics more market driven. The successor to this proposal is -another SIMD that introduces the concept of long-term staking, which seeks to -improve network security. The option to unstake SOL on a relatively short notice -(i.e., a short cool down period) poses a potential risk to networks' stability -and safety, particularly in extreme circumstances where a significant amount of -SOL is unstaked within a brief timeframe. The combination of these two SIMDs -address these concerns while improving network security and economic activity. +The biggest concern for this proposal is that it could reduce the amount of SOL staked more than desired. We can assure ourselves that at least with current market conditions the resulting equilibrium staked amount would be more than 30% with the following reasoning: +Currently the issuance rate is 4.5% and the staked amount is 65% which comes out to around 6.25% validator rewards for performant stakers (not including MEV). If the issuance rate were instead governed by this proposal, we should expect the staked amount to be more than 30% because $v(30\%) \approx 6.25\%$. We know that $D(6.25\%)$ = 65% and therefore the staked amount under the new issuance rate would be more than 30% if demand stays the same. From ff8b657c87573726e696a670820d4ab04c64ad91 Mon Sep 17 00:00:00 2001 From: Max Resnick Date: Wed, 29 Jan 2025 19:17:15 -0500 Subject: [PATCH 7/8] polishing up a few things --- proposals/0228-market-based-emission-mechanism.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/proposals/0228-market-based-emission-mechanism.md b/proposals/0228-market-based-emission-mechanism.md index 9aeac0589..628d1dd06 100644 --- a/proposals/0228-market-based-emission-mechanism.md +++ b/proposals/0228-market-based-emission-mechanism.md @@ -36,8 +36,8 @@ emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. The purpose of token emissions in Proof of Stake (PoS) networks is to attract -stakers and validators to secure the network. But issuance should never be higher than needed because Therefore, the most efficient -amount of token issuance is the lowest rate possible necessary to secure the +stakers and validators to secure the network. But excessive issuance is costly because it imposes frictions on the network and crowds out SOL usage in DeFi. Therefore, the most efficient +amount of token issuance is the lowest rate necessary to secure the network. Solana's current emission mechanism is a fixed, time-based formula that was @@ -110,13 +110,13 @@ emissions. The issuance rate formula is: -$i(s) = r(1 - \sqrt{s})$ +$$i(s) = r(1 - \sqrt{s})$$ ![Issuance Rate](../suporting_images/0228-market-based-emission-mechanism/issuance_rate.png) This yields a vote reward rate for validators with good performance of: -$v(s) = \frac{i(s)}{s} = \frac{r(1 - \sqrt{s})}{s}$ +$$v(s) = \frac{i(s)}{s} = \frac{r(1 - \sqrt{s})}{s}$$ ![Issuance Rate](../suporting_images/0228-market-based-emission-mechanism/validator_returns.png) From 2cf908ff41deca88744a8defb676b2a4c8cbe21b Mon Sep 17 00:00:00 2001 From: Max Resnick Date: Wed, 29 Jan 2025 19:44:58 -0500 Subject: [PATCH 8/8] linter --- .../0228-market-based-emission-mechanism.md | 94 ++++++++++++------- 1 file changed, 62 insertions(+), 32 deletions(-) diff --git a/proposals/0228-market-based-emission-mechanism.md b/proposals/0228-market-based-emission-mechanism.md index 628d1dd06..b3390f56f 100644 --- a/proposals/0228-market-based-emission-mechanism.md +++ b/proposals/0228-market-based-emission-mechanism.md @@ -1,6 +1,6 @@ --- simd: '0228' -title: Market-Based Emission Mechanism Based on staking Participation Rate +title: Market-Based Emission Mechanism authors: - Tushar Jain - Vishal Kankani @@ -18,17 +18,19 @@ SIMD-0228 Introduces a Market-Based emission mechanism based on staking participation rates. The mechanism is a static curve that reduces the total issuance rate by a factor of the square root of the staking participation rate. - ## Motivation -Solana has historically relied on token emissions to attract stake and guarantee security. -As Solana matures, stakers are increasingly earning SOL from other sources (e.g. MEV). -These developments have resulted in an increasing fraction of the Solana supply staked, -meaning the network is now overpaying security since emissions haven't adjusted to the elevated demand for staking. -According to Blockworks (https://solana.blockworksresearch.com/), in Q4 2024 MEV, as measured by Jito -Tips, was approximately \$430M (2.1M SOL), representing massive quarter-over- -quarter growth. In Q3 Jito Tips were approximately \$86M (562k SOL), Q2 was -approximately \$117M (747k SOL), and Q1 was approximately \$42M (300k SOL). +Solana has historically relied on token emissions to attract stake and guarantee +security. As Solana matures, stakers are increasingly earning SOL from other +sources (e.g. MEV). These developments have resulted in an increasing fraction +of the Solana supply staked, meaning the network is now overpaying security +since emissions haven't adjusted to the elevated demand for staking. + +According to Blockworks (), in Q4 2024 +MEV, as measured by Jito Tips, was approximately \$430M (2.1M SOL), representing +massive quarter-over-quarter growth. In Q3 Jito Tips were approximately +\$86M (562k SOL), Q2 was approximately \$117M (747k SOL), and Q1 was approximately +\$42M (300k SOL). Given the level of economic activity the network has achieved and the subsequent revenue earned by stakers from MEV, now is a good time to revisit the network's @@ -36,11 +38,12 @@ emission mechanism and evolve it from a fixed-schedule mechanism to a programmatic, market-driven mechanism. The purpose of token emissions in Proof of Stake (PoS) networks is to attract -stakers and validators to secure the network. But excessive issuance is costly because it imposes frictions on the network and crowds out SOL usage in DeFi. Therefore, the most efficient -amount of token issuance is the lowest rate necessary to secure the -network. +stakers and validators to secure the network. But excessive issuance is costly +because it imposes frictions on the network and crowds out SOL usage in DeFi. +Therefore, the most efficient amount of token issuance is the lowest rate +necessary to secure the network. -Solana's current emission mechanism is a fixed, time-based formula that was +Solana's current emission mechanism is a fixed, time-based, formula that was activated on epoch 150, a year after genesis on February 10, 2021. The mechanism is not aware of network activity, nor does it incorporate that to determine the emission rate. Simply put, it's "dumb emissions." Given Solana's thriving @@ -97,14 +100,17 @@ right long-term approach for Solana. Markets are the best mechanism in the world to determine prices, and therefore, they should be used to determine Solana's emissions. -## Detailed Design -### The Variables: +## New Terminology - Fraction of total supply staked: $s$ - Issuance Rate $i$ - Validator returns $v(s) = \frac{i}{s} + MEV$ -- r is the current inflation rate which is a constant (currently 4.5%) that automatically goes down by 15% every year until it reaches 1.5% where it stops changing. +- r is the current inflation rate which is a constant (currently 4.5%) that +automatically goes down by 15% every year until it reaches 1.5% where it +stops changing. + +## Detailed Design ### New Emission Rate Formula @@ -120,7 +126,6 @@ $$v(s) = \frac{i(s)}{s} = \frac{r(1 - \sqrt{s})}{s}$$ ![Issuance Rate](../suporting_images/0228-market-based-emission-mechanism/validator_returns.png) - ## Alternatives Considered ### Alternative Design 1: Pick another fixed rate @@ -129,22 +134,39 @@ A simple alternative would be to adjust the issuance rate to a fixed number, $r$ determined by community inputs. However, this approach presents several risks: Lack of Market Mechanisms: Setting a fixed rate ignores the dynamics of free markets and the network's real-time economic conditions: -- **Lack of Market Mechanisms**: Setting a fixed rate ignores the dynamics of free markets and the network's real-time economic conditions -- **Arbitrary Adjustments**: Using another arbitrary number risks undermining the integrity of the system and may lead to decisions that are disconnected from the network's needs -- **Erosion of Trust**: Relying on fixed adjustments could erode trust in the community's decision-making process, especially if future changes seem disconnected from market realities -- **Compromised Consensus Safety**: A fixed issuance rate, especially in uncharted territory, could undermine consensus safety, as it would not be dynamically tied to staking participation or broader network health + +- **Lack of Market Mechanisms**: Setting a fixed rate ignores the dynamics of + free markets and the network's real-time economic conditions +- **Arbitrary Adjustments**: Using another arbitrary number risks undermining the + integrity of the system and may lead to decisions that are disconnected from the +network's needs +- **Erosion of Trust**: Relying on fixed adjustments could erode trust in the +community's decision-making process, especially if future changes seem +disconnected from market realities +- **Compromised Consensus Safety**: A fixed issuance rate, especially in + uncharted territory, could undermine consensus safety, as it would not be +dynamically tied to staking participation or broader network health ### Alternative Design 2: Fix Target Staking Yield - **Revenue Source**: MEV has become a significant revenue source for stakers. -- **Proposed Change**: One can consider changing the issuance rate by factoring in MEV tips, maintaining the same target yield as the original curve but offsetting it by the 30-day moving average of MEV tips. -- **Formula**: New Issuance Rate (i) = Target Staking Yield − 30-day moving average of MEV tips -- **Market Impact**: MEV tips reflect real revenue for validators and stakers, allowing the system to adjust to market conditions: +- **Proposed Change**: One can consider changing the issuance rate by factoring +in MEV tips, maintaining the same target yield as the original curve but +offsetting it by the 30-day moving average of MEV tips. +- **Formula**: New Issuance Rate (i) = Target Staking Yield − 30-day moving + average of MEV tips +- **Market Impact**: MEV tips reflect real revenue for validators and stakers, +allowing the system to adjust to market conditions: - **Hot Markets**: Higher MEV tips allow for lower emissions. - - **Cold Markets**: Increased emissions compensate validators, maintaining network security. -- **Inspiration**: This approach is inspired by central bank monetary policy, adjusting inflation based on economic conditions. -- **Key Challenge**: The big challenge with this design is that it incentivizes MEV payments to move out of sight of the tracking mechanism, thereby rendering the design completely ineffective. -- **Important Note**: For an abundance of clarity, we are not proposing any design which requires measuring MEV payments. + - **Cold Markets**: Increased emissions compensate validators, maintaining + network security. +- **Inspiration**: This approach is inspired by central bank monetary policy, +adjusting inflation based on economic conditions. +- **Key Challenge**: The big challenge with this design is that it incentivizes +MEV payments to move out of sight of the tracking mechanism, thereby rendering +the design completely ineffective. +- **Important Note**: For an abundance of clarity, we are not proposing any design +which requires measuring MEV payments. ## Impact @@ -153,6 +175,14 @@ impact on the overall health of the Solana economy. ## Security Considerations -The biggest concern for this proposal is that it could reduce the amount of SOL staked more than desired. We can assure ourselves that at least with current market conditions the resulting equilibrium staked amount would be more than 30% with the following reasoning: - -Currently the issuance rate is 4.5% and the staked amount is 65% which comes out to around 6.25% validator rewards for performant stakers (not including MEV). If the issuance rate were instead governed by this proposal, we should expect the staked amount to be more than 30% because $v(30\%) \approx 6.25\%$. We know that $D(6.25\%)$ = 65% and therefore the staked amount under the new issuance rate would be more than 30% if demand stays the same. +The biggest concern for this proposal is that it could reduce the amount of SOL +staked more than desired. We can assure ourselves that at least with current +market conditions the resulting equilibrium staked amount would be more than 30% +with the following reasoning: + +Currently the issuance rate is 4.5% and the staked amount is 65% which comes out +to around 6.25% validator rewards for performant stakers (not including MEV). +If the issuance rate were instead governed by this proposal, we should expect +the staked amount to be more than 30% because $v(30\%) \approx 6.25\%$. +We know that $D(6.25\%)$ = 65% and therefore the staked amount under the new +issuance rate would be more than 30% if demand stays the same.