Difference between revisions of "How-To: SNS tokenomics configuration"

From Internet Computer Wiki
Jump to: navigation, search
 
(15 intermediate revisions by the same user not shown)
Line 1: Line 1:
 
== Goal ==
 
== Goal ==
 +
The purpose of this page is to gather information that assists teams in selecting a tokenomics structure for their SNS DAO. Additionally, it aims to aid potential SNS DAO participants in evaluating the proposed tokenomics configurations of an SNS.
  
* This intention of this page is to collect material enabling teams to choose a tokenomics set-up for their SNS DAO.  
+
== SNS tokenomics set-up ==
* Furthermore, it should help potential participants of SNS decentralization swaps to review proposed SNS tokenomics configurations.  
+
The '''SNS governance framework''' is a customizable version of the NNS framework. All its parameters can be set in the [https://github.com/dfinity/ic/blob/master/rs/sns/cli/sns_init_template.yaml SNS initialization file], which also contains a comprehensive guide to these settings. For more detailed information about '''SNS rewards''', please refer to this [https://internetcomputer.org/docs/current/developer-docs/integrations/sns/tokenomics/rewards link].  
  
== SNS tokenomics concepts ==
+
== SNS decentralization swap ==
The '''SNS reward framework''' is a configurable version of the NNS rewards system, consisting of the following key elements:
+
In the '''[https://internetcomputer.org/sns/faq#what-is-a-decentralization-swap SNS decentralization swap]''', community members have two ways to get involved. One is '''direct participation''', where they can exchange their ICP for SNS tokens.
  
* Determination of the total reward pool: The total pool of voting rewards for a given day is calculated as total supply * voting reward function R(t) / 365.25.
+
Alternatively, community members can engage indirectly through the '''Neurons' Fund''' (NF). The extent of the NF's involvement in a specific SNS swap is decided by the [https://wiki.internetcomputer.org/wiki/Matched_Funding Matched Funding scheme]. This scheme correlates the '''fund participation''' with the level of direct participation. For more details on the Neurons' Fund, visit this [https://internetcomputer.org/docs/current/tokenomics/nns/neurons-fund/ link].
* Voting power of neurons: Voting power is a function of stake, dissolve delay and age of a neuron.
 
* Allocation of reward pool: Rewards are allocated to neurons in proportion to the exercised voting power on proposals that are settled on given day.
 
  
Further information on SNS rewards can be found [https://internetcomputer.org/docs/current/developer-docs/integrations/sns/tokenomics/rewards here].  
+
== SNS tokenomics analyzer ==
 +
Use this [https://dashboard.internetcomputer.org/sns/tokenomics dashboard app] to evaluate SNS tokenomics configurations. The tool takes as an input an SNS init file and allows  to simulate different levels of direct participation and its impact on key factors
  
During an '''SNS decentralization swap''', community members can participate directly in an SNS by swapping ICP in exchange for SNS tokens. This is called '''direct participation'''. If the swap is successful, swap participants will receive a '''basket of SNS neurons''' with equal stake. In the SNS configuration a project can specify the number of SNS neurons in the basket and the interval of dissolve delays within a SNS neuron basket. For example an neuron basket with 3 neurons and interval of 1 month, will yield neurons with 0,1 and 2 months of dissolve delay.
+
* Token Price Range: Displays the potential exchange rate range between ICP and SNS tokens.
 +
* Matched Funding: Estimates the Neurons' Fund contribution as a function of the simulated direct participation and the overall size of the Neurons' Fund.  
 +
* Token Distribution: Shows how tokens are allocated between treasury, swap participants and the development team.
 +
* Voting Power Assessment: Provides a visual representation of the voting power across the community (swap participants) and the developer team.
 +
[[File:SNS tokenomics analyzer visual.png|alt=|center|thumb|900x900px]]
  
Community members can also indirectly participate in an SNS swap via the '''Neurons' Fund (NF).'''  Via this fund NNS neuron holders can allocate their maturity towards supporting future SNSes. The NNS governs the allocation of the Neurons' Fund to various SNSs, enabling ICP stakers to benefit from the collective intelligence of the community. The size of the participation of the NF in a particular SNS swap, is determined via the [https://wiki.internetcomputer.org/wiki/Matched_Funding '''Matched Funding scheme'''] which links the fund participation to the direct participation. Further information on the Neurons' Fund can be found [https://internetcomputer.org/docs/current/tokenomics/nns/neurons-fund/ here]. 
+
== Frequently asked questions ==
  
== SNS tokenomics training & tools ==
+
* ''How many and what kind of neurons do you receive when directly participating in an SNS swap ?''
Via this [https://docs.google.com/spreadsheets/d/1eSxkJl94jPt63CdOXH6ROy-WSkacW6P4qcAKMLrfBPc/edit#gid=0 spreadsheet tool] you can assess SNS tokenomics configurations. In order to use the tool and modify input parameters, please make a copy. The tool covers
+
** "In an SNS initialization, a project defines the number of SNS neurons and their dissolve delay range. For instance, a neuron basket with 3 neurons and a 1-month interval will result in neurons with dissolve delays of 0, 1, and 2 months."
* SNS input parameters: Contains all tokenomics parameters for SNS initialization, e.g. voting reward rate, swap parameters, initial token allocation, etc.  
+
* ''How precisely do the minimum and maximum funding targets influence the swap ?''
* Token price range: Visualizes the minimum & maximum funding target vs the amount of tokens swapped, as well as the token price range in ICP and USD.  
+
** "The swap fails if the minimum funding target is not met within the swap window. Conversely, if the maximum funding is reached, the swap concludes immediately."
* Voting power assessment: Visualizes the initial token allocation and voting power. It is further possible to parametrize and simulate 51% attacks.
+
** "Please note: The minimum and maximum funding target are specified with respect to the direct participation only!" 
* Total supply over time: Simulates how total supply of SNS tokens could develop over time.
+
* ''What should projects consider when setting the minimum and maximum funding targets?''
 +
** "Set a realistic maximum funding target to create scarcity and drive token demand, as reaching this target ends the swap, possibly excluding some participants. A very high maximum can lead to a post-launch price drop, while a very low maximum might limit participation and miss funding opportunities."
 +
* ''What considerations are there when choosing the minimum stake of SNS neurons?''
 +
** "The minimum stake is the lowest amount of SNS tokens required for a neuron. A lower value increases accessibility for those wanting to participate with fewer tokens. However, with a technical limit of 200K neurons in an SNS, a very low minimum stake might lead to too many small neurons."
 +
* ''What should be considered when setting the minimum dissolve delay for SNS neurons?''
 +
** "The minimum dissolve delay is crucial for voting eligibility. It encourages prudent, long-term voting as tokens are locked up. It also offers some defense against attacks, especially those funded by borrowed resources. However, if an attacker gains 51% of the voting power, the minimum staking period becomes irrelevant.
  
== Background material ==  
+
== Further background material ==  
* Introduction to Service Nervous System (SNS):
+
* Overall intro to SNS https://internetcomputer.org/sns/
** Overall intro https://internetcomputer.org/sns/
+
* Tokenomics of a DAO: https://internetcomputer.org/docs/current/tokenomics/sns/tokenomics
** Tokenomics of a DAO: https://internetcomputer.org/docs/current/tokenomics/sns/tokenomics
 
* SNS reward design: https://internetcomputer.org/docs/current/tokenomics/sns/rewards
 
* Neurons' fund: [https://internetcomputer.org/docs/current/tokenomics/nns/neurons-fund https://internetcomputer.org/docs/current/tokenomics/nns/community-fund]
 
* Configuration files used by OpenChat: https://github.com/open-ic/open-chat/tree/master/sns/config
 

Latest revision as of 12:30, 20 March 2024

Goal

The purpose of this page is to gather information that assists teams in selecting a tokenomics structure for their SNS DAO. Additionally, it aims to aid potential SNS DAO participants in evaluating the proposed tokenomics configurations of an SNS.

SNS tokenomics set-up

The SNS governance framework is a customizable version of the NNS framework. All its parameters can be set in the SNS initialization file, which also contains a comprehensive guide to these settings. For more detailed information about SNS rewards, please refer to this link.

SNS decentralization swap

In the SNS decentralization swap, community members have two ways to get involved. One is direct participation, where they can exchange their ICP for SNS tokens.

Alternatively, community members can engage indirectly through the Neurons' Fund (NF). The extent of the NF's involvement in a specific SNS swap is decided by the Matched Funding scheme. This scheme correlates the fund participation with the level of direct participation. For more details on the Neurons' Fund, visit this link.

SNS tokenomics analyzer

Use this dashboard app to evaluate SNS tokenomics configurations. The tool takes as an input an SNS init file and allows to simulate different levels of direct participation and its impact on key factors

  • Token Price Range: Displays the potential exchange rate range between ICP and SNS tokens.
  • Matched Funding: Estimates the Neurons' Fund contribution as a function of the simulated direct participation and the overall size of the Neurons' Fund.
  • Token Distribution: Shows how tokens are allocated between treasury, swap participants and the development team.
  • Voting Power Assessment: Provides a visual representation of the voting power across the community (swap participants) and the developer team.

Frequently asked questions

  • How many and what kind of neurons do you receive when directly participating in an SNS swap ?
    • "In an SNS initialization, a project defines the number of SNS neurons and their dissolve delay range. For instance, a neuron basket with 3 neurons and a 1-month interval will result in neurons with dissolve delays of 0, 1, and 2 months."
  • How precisely do the minimum and maximum funding targets influence the swap ?
    • "The swap fails if the minimum funding target is not met within the swap window. Conversely, if the maximum funding is reached, the swap concludes immediately."
    • "Please note: The minimum and maximum funding target are specified with respect to the direct participation only!"
  • What should projects consider when setting the minimum and maximum funding targets?
    • "Set a realistic maximum funding target to create scarcity and drive token demand, as reaching this target ends the swap, possibly excluding some participants. A very high maximum can lead to a post-launch price drop, while a very low maximum might limit participation and miss funding opportunities."
  • What considerations are there when choosing the minimum stake of SNS neurons?
    • "The minimum stake is the lowest amount of SNS tokens required for a neuron. A lower value increases accessibility for those wanting to participate with fewer tokens. However, with a technical limit of 200K neurons in an SNS, a very low minimum stake might lead to too many small neurons."
  • What should be considered when setting the minimum dissolve delay for SNS neurons?
    • "The minimum dissolve delay is crucial for voting eligibility. It encourages prudent, long-term voting as tokens are locked up. It also offers some defense against attacks, especially those funded by borrowed resources. However, if an attacker gains 51% of the voting power, the minimum staking period becomes irrelevant.

Further background material