The Bonding Curve Smart Contract for SDGs
By: Marc De Beaucorps
Tags: Bonding Curves, Sdgs, Token, Impact

This paper is intended for financiers and entrepreneurs who want to integrate the economy into their business models. Our model is based on the work of Bonding Curve enthusiasts like Simon de la Rouviere, Paul Kohlhaas or Thibauld Favre.

This paper is owned by we4sdg (we4sdg.io).

The Bonding Curve Smart Contract is a model that makes it possible to finance an organization while paying for its ecosystem. Thanks to a monetary reserve that is created and belongs to the entire ecosystem, the remuneration of all are correlated to the success of the organization and the economic activity that it generates.

A smart contract is created to manage the relationships between the members of an ecosystem and automatically and transparently distributes the tokens related to the activity of the ecosystem. The smart contract can create, send or destroy tokens. Depending on the model, these tokens can have economic value and use value. There is a multitude of organizational models. The smart contract is defined according to the different members of the ecosystem, the economic activity and the need for financing. The model is adaptable and we represent here a general model bringing together various actors:

Each member can interact with the ecosystem according to parameters predefined by the organization. The bonding curve is written in the smart contract, it can be defined as a mathematical model that defines a relationship between price and supply of tokens.

Here is an example of a bonding curve such as tokenPrice = tokenSupply

This bonding curve indicates that the unit price of a token increases as the supply of tokens increases and the supply of tokens increases as the activity of the ecosystem grows. The increase in value does not happen over time but with the economic activity of the organization and its ecosystem. As more and more people discover the project and purchases continue, the value of each token increases gradually along the buying curve. First-time buyers of tokens buy tokens at a lower price and are likely to sell their tokens at a higher price. The functions are written in a smart contract called the Smart Bonding Curve. This smart contract emits its own tokens following the bonding curve system that is implemented.

The curves vary according to the business models

Two curves are to be implemented when creating the smart contract, the buying curve to buy tokens and the selling curve to sell tokens. They are defined according to the needs of the organization at the origin of the smart contract. We have defined the appropriate funding curves for each organization. A startup with high research costs will tend to attract the first investors who are high risk, while an NGO with regular financing and spending will have a linear curve with little or no growth. An organization that wants to pay better and attract first-time investors will be exponential. By defining the buy function and the sell function, we define the reserve for each transaction.

The currencies used

A smart contract on a blockchain can not receive or send fiat such as the euro or the dollar. On the other hand, it can treat equivalents in stable coins, it can make cryptocurrency transfers and create and destroy its own tokens. For non-crypto-lovers who want to benefit from this system in fiat, an automatic conversion fiat-token is feasible. Several stable coins exist, such as the tether ($ 25 billion of trade volumes per day) backed by the dollar or the Dai which is a stable decentralized token. The value of the stable token is by definition stable (parity to the dollar), this makes it possible not to undergo the volatility of the cryptocurrency rates and allows the construction of long term economic business models on a blockchain.

The Buy and Sell Bonding Curve Model:

We will explain graphically and mathematically the various functions that the Smart Bonding Curve can handle. The example we choose is an organization financing system composed of investors and consumers only. This is a restricted model; depending on the models, the actors present in the ecosystem vary. When you are a Bonding Curve financing member, you buy tokens following the buy curve equation and you sell your tokens by following the sell function. As the number of tokens in circulation increases, the value of each token on purchase and resale increases. To explain the model we use ETH. The equations are affine but the model works the same way with any other functions. The curves are defined according to the needs of the organization behind the smart contract.

The blue space is the amount that will be in reserve and the red space is the amount directly distributed to the organization. The total cost borne by the investor is the sum of the two spaces. This amount is in stable coins, it can be estimated in fiat or ETH. In this example, the amount invested is 10 tokens. If there is no sale of tokens, the next investors buy at Tokens + 10. The bonding curve ensures that first-time buyers will be able to sell at a profit, provided that more buyers arrive or the business prospers. It naturally rewards early users and encourages advertising and the multitude.

The buy() function

Description of the function: The buy function allows individuals to invest in the organization and receive tokens in exchange. To buy tokens, you have to send ETH to the smart contract which will distribute them between the reserve and the organization according to the reserve rate (the difference between buy and sell). This function makes it possible to invest in the organization and receive tokens in exchange.

Explanation of the calculation: How to calculate the number of tokens to distribute according to the amount invested? The space in red corresponds to the value in ETH. The smart contract will create the corresponding number of tokens (x), following the buy function of the bonding curve. The number of tokens will go from q ‘to q’’. By increasing the number of tokens issued, we observe that the price for the next token to create increases. How many tokens do you give to the investor? We know that the space in red, the value of the investment is equal to the integral of the buy function between q’’ and q’. The primitive of the buy function must be calculated. The value of I is equal to the buy() primitive in q’’ minus the buy() primitive in q’.

The pay () function

Description of the function: The pay() function is used when a consumer buys a good or service from the organization via the Smart Bonding Curve. Part of the transaction is distributed to the reserve which benefits the ecosystem. In the long run, the pay function is the first source of the increase of the reserve because the value is directly correlated to the activity of the organization. For the consumer to be more involved in the ecosystem, it is possible to activate the buy() function at each payment so that he gets tokens for each purchase of goods or services.

ws=(pay amount)/(current token supply)

wb=pay amount *(b/s)

Explanation of the calculation: How much to distribute to the tokens-holders? Each token will receive an equivalent fraction (ws) of the amount to be distributed. In order to maintain a long-term equilibrium (and that sell is not greater than buy), the buy function increases proportionally with the stocking rate.

The sell () function

Description of the function: The sell function allows tokens holders (investors, consumers, employees…) to sell their tokens against their share of ETH in reserve. To sell tokens, you have to send an amount x of tokens to the smart contract which will send the corresponding quantity M of ETH. This is the reverse reasoning of buy(). We note graphically that the sale of tokens has no effect on the cash of the organization, it decreases the price of buying and selling tokens.

Explanation of the calculation: How to calculate the quantity of ETH to distribute according to the number of tokens sold? The space in blue corresponds to the value in ETH. The smart contract will make the corresponding M amount, following the sell() function written in the bonding curve. The number of tokens will go from q’’ to q’. By decreasing the number of tokens issued, we observe that the purchase price for the next token decreases (A to B). How to calculate M? We know that the value of the investment is equal to the integral of the buy function between q’’ and q’.

The redistribETH () function

Function description: The redistribETH function is the organization’s first tool to optimize the value of tokens by allowing it to distribute ETHs to ecosystem members and to receive tokens in exchange. The same mechanism applies with the buy() function, but here 100% of what it sends goes into reserve. It receives a number of tokens proportional to its setting in reserve. It’s a way for the organization to distribute value to tokens. The effects on the ecosystem are the positive effects of a new investor. The organization holding tokens can destroy its tokens (redistribTOKEN), store them or sell them.

Explanation of the calculation: How to calculate the quantity of tokens to distribute according to the amount invested? The space in blue corresponds to the value in ETH. The smart contract will create the corresponding number of tokens (x), following the sell function of the bonding curve. The number of tokens will go from q’ to q’’. By increasing the number of tokens issued, we observe that the selling price of the next token increases. All tokens-holders are therefore beneficiaries of this action. How many tokens do you give to the organization? We know that the space in blue, the value of the investment is equal to the integral of the buy function between q’’ and q’. The primitive of the sell function must be calculated. The value of M is equal to the primitive of q’’ minus the primitive of q’. Knowing M we can find x.

The redistribTOKEN () function

Description of the function: The organization can, with this second tool, enhance the tokens of the ecosystem by destroying its own tokens, which it has obtained thanks to the redistribETH() function. It is considered that the organization “burns” tokens, the smart contract which destroys them. This function redistributes the value because the amount in reserve remains unchanged while the number of tokens decreases.

Example of a bonding curve with 10% reserve rate:

Explanation of the calculation: What happens if the organization burns 10 tokens? The minimum token for purchase and sale will be q + 10. In this example, the individual resale value of each token is increased by 1. This redistribution function allows the organization to redistribute tokens in an equitable way without changing the percentage of the reserve. The new functions are defined in this way:

Buy (): p (q) = bq + wb

Sell (): p (q) = sq + ws

These functions are calculated automatically by the smart contract. They have the effect of shifting the ordinate of the model. There is no implication on the tokens-holder except to increase the value of their tokens.

The token bonding curve has multiple implementations

The three sources of tokens valuation

Tokens are valued by the combination of token creation and the choice of bonding curves.

The first source of valuation is the pay function which is directly correlated to the activity of the organization by the purchase of service or of many actors of the ecosystem. This pay function can be used by customers, service providers and stakeholders. It reflects the economic activity of the system and the value of the token increases with economic activity.

The second source of growth is the buy function which allows the raising of funds necessary for the good progress of the activity. The system allows the parallel development of the activity and investment.

The third source of valuation is the voluntary increase of its value made by the organization in view of these results in terms of ecosystem activity by the redistribution functions.

Benefits of the Smart Bonding Curve

1) Economic

Sustainable and Controlled Growth: Ongoing funding provides a long-term business model. The curves facilitate long-term investment because the growth of the token price is fixed in advance. In addition, the shared reserve system encourages token holders to promote the ecosystem of which they are part.

Liquidity and continued growth in return on investment: From the investor’s point of view, instead of periodically valuing its investment, the ongoing reserve allows it to estimate in real time the value of its investment. It is a liquid investment, it can also withdraw its share of the reserve when it wishes without impacting the company.

Adaptable financing system: This system is adaptable to any business model, it may be suitable for a startup looking to finance itself, a company that wants to include its employees in the result by giving them tokens or a non-profit seeking to bring together different actors around a common goal.

Result-based valuation and reduced volatility: Unlike ICO’s tokens, which are subject to bitcoin variations, tokens are valued only by the pay function linked to economic activity, the purchase of investors’ tokens and redistribution made by the organization.

Business time and cash flow savings: Organization funding is more regular because fundraising can be done continuously. When a token-holder withdraws from the reserve, there is no impact on the cash flow of the company.

2) Strategic

Inclusion of multiple players: The Smart Bonding Curve brings together the community, consumers, employees, investors and all stakeholders in an automated ecosystem activity. For example, the pay function can be applied to other ecosystem actors such as suppliers.

Transparency and sharing of resources: The remuneration of a token-holder depends on the success of the organization weighted to its personal involvement (characterized by its share of tokens). The distribution of tokens is transparent on the blockchain.

3) Technology

Scalable: The number of actors is unlimited and the cost of expanding the ecosystem is marginally zero.

Use and distribution of tokens: Only a smart contract can create, destroy, store and send tokens in a secure way. The application of the rules is thus coded.

Automatic: Saving time and money compared to a non-automated financing system.

Synthesis

We have just studied a Smart Bonding Curve financing with affine functions and reserve rate of 10%. Each bonding curve is to be defined according to the structure and financing needs. There is a model of bonding curve adapted to each organization.

We have defined a Smart Bonding Curve model for these different scenarios:

Fundraising for an ODD startup

Ongoing financing of an ODD company

Donation system

Crowdfunding for an association

Remuneration of an active community

Profit sharing of employees

This model makes it possible to finance an organization while paying for its ecosystem. It is therefore particularly suited to new organizations today (platforms, a collective hyper-decentralized project involving the multitude). Thanks to a monetary reserve that belongs to the entire ecosystem, the remuneration of all are correlated to the success of the organization. The valuation of tokens is linked to the activity of its issuing organization and prevents the usual market volatilities on the cryptocurrency market. This funding model can be broken down for different organizations. It pays for the active community of an organization. It can also be used to include its employees who hold a share of the reserve, which increases according to the result of the company which allows converging the interests of both parties without diluting the capital. This system also works for a startup that wants both to establish continuous funding and to encourage people to join its ecosystem.

The Smart Bonding Curve is particularly suited to the financing of SDGs organizations because the inclusion of new players, the multitude, the individual and group incentive are essential elements for the success of SDGs business.