A bonding curve is a mechanism that enables bootstrapping a new currency based on another currency, called the base currency. It’s like a fixed-exchange rate system in terms of control over the currency; but instead of having a fixed-exchange rate, an authority increases the exchange rate with increasing supply of the minted currency. The rate of increase is determined by the bonding curve which strictly defines the relationship between the exchange rate and the supply. Conversely, the exchange rate drops when the supply decreases.
The total amount of base currency the authority keeps at any time is called “reserve”. Since the mechanism described mints the new currency, we use the term “price” instead of exchange rate, as in minting price.
When designing such a system, it’s not just the type of the bonding curve that matters, but also the parameters it uses. These parameters determine the distribution of wealth among early and late buyers of the bonding curve. In other words, a linear bonding curve’s initial price and slope determine whether the distribution is a pyramid or a stump.
Pyramid means a distribution where early buyers can mint for much cheaper and have a lot more of the new currency than late buyers, whereas stump means a comparatively more even distribution, although early buyers still enjoy some advantage. The steeper the bonding curve, the more pyramid-like the distribution.
In a linear bonding curve, the price is a linear function of the supply:
where $P$ is price, $S$ is supply, $P_0$ is the initial price and $\Delta_p$ is the price increment.
Were the price constant, we would have had the following relationship between the amount of base currency $B$, minted currency $M$ and price $P$
But since we have a changing price, we have the following differential equation instead:
That’s why the area under the bonding curve equals total reserve for a given price. Thus we calculate total reserve $R$ as a function of the total supply as
Inverting the function, we get
Plugging this into the price-supply function, we can get price as a function of reserve
While choosing parameters, expressing price in terms of the underlying reserve is more useful because we have a better feeling of the base currency compared to the newly minted one. If we can come up with projections of market attributes, we can reason better about how steep the price should increase. Below are three metrics that can aid in this decision.
Metric 1: Price increase after a certain reserve amount
The first metric that comes to mind is the increase in price after the investment of a certain amount $B$ of the base currency. The founder of the bonding curve may design it according to a principle, e.g.
The price should increase 2x with R reserve.
Below is a graph that demonstrates this:
For example, if the founder wants a 2x price increase for 3000 base currency invested in the bonding curve, then they should choose $\Delta_p \approx 0.0005$.
Metric 2: Initial slope
The initial slope of the price-reserve curve is good for comparing different sets of parameters. It’s equal to
which is a straightforward metric that uses both parameters.
Metric 3: Weak hand return
Another metric is the return obtained when
- the first ever buyer mints $M_0$ with $B$ base currency,
- another buyer mints $M_1 < M_0$ (since price has increased) with $B$ base currency,
- and the first buyer burns $M_0$ for profit.
The return is calculated as
where $M_0 = S(B)$ and $M_1 = S(2B)$. It eventually yields
One interesting result is
For all positive values of $B$, the return is between 1 and 1.8284. $B$ is supposed to be a purchase made by an average buyer. In other words, it’s the expected value of an investment to the bonding curve.
For a given B, the closer the return is to 1.8284, the more pyramid-like the distribution. The closer it is to 1, the more stump-like the distribution.
As of the beginning of 2019, the most sizeable deployment of a bonding curve ever was the PoWH3D contract on Ethereum. Here is my previous analysis of it. At it’s height on July 27, 2018, the contract had more than 82,000 ETH, then equal to ~$35 million of value.
Is PoWH3D a pyramid or a stump? The parameters are $P_0$ = 1e-7 ETH and $\Delta_p$ = 1e-8 ETH. Let’s plug them in and see.
It seems like the price starts at 0, but in reality, it has increased so much that one can’t tell the difference. After 1 ETH in the contract, the price increases ~1400x; after 10 ETH, ~4400x; after 100 ETH, ~14,000x; after 1000 ETH, ~44,000x; after 10,000 ETH, ~140,000x and so on. The price triples with each increase in the order of magnitude. Someone who invested when there was only ~100 ETH in the contract could have sold it for 28x profit at its height, not taking dividends into account.
Initial slope of the price-reserve curve is equal to 0.1, for the record.
What about the weak hand return? Below is a graph that shows for up to 1 ETH:
As you can see, it shoots up to the maximum value really quickly.
Interpreting these results, we can arrive at the conclusion that PoWH3D is a pyramid rather than a stump, and the price increase is very steep.
The price-reserve relationship, derived from the price-supply relationship, is more useful in determining linear bonding curve parameters. More informed decisions can be made based on this curve, using metrics such as initial slope and price increase at a certain amount of reserve. Another metric has been introduced, which calculates the returns after selling when an investment of size equal to one’s own is made to the bonding curve. A real-life example has been analyzed.