2. The Bond

C. Collateral: the value or attention staked into the contract and its reserve parameters.

Note: Bancor refers to the collateral in its contract as reserve and there are potential design parameters and function implementations that alter the reserve/collateral ratio.

Parameters…

Native protocol tokens: Ether (ETH) or Ocean (OCN). Stablecoins: DAI or similar ERC20 stabletokens. We built a first Proof of Concept of this at the recent #cryptolife hackathon by Status and plan to build an open-source implementation. Non-fungibles: A bonding curve backed by kittens, or other NFTs. Multi-collateralized:

A combination of ERC20s or native protocol tokens;

Tokens from other bonding curves, called nested bonding curves. Staking bonding curve tokens into further bonding curves essentially creates derivatives. Use cases would for example be a sub-meme that spins off another meme, or a derivative molecular structures developed from the original lead compound. Volatility in this case is compounded and nested curves only have fractions of the collateral in their original curve. The interaction between the “mother” curve and its child curve should be carefully modelled. Nested curves were first introduced by Slava Balasanov here:

Considerations: Trading of bonding curves itself will be volatile, depending on how the curve is implemented. If the underlying collateral exhibits volatility on top of that this will limit utility and create market inefficiency and arbitrage. Many bonding curve implementation will therefore likely need to be backed by stable coins or a combination.

D. The Traded Asset or Objective

The contract and tokens issued need to represent ownership in some type of asset, principal, state, attention or even a utility right. This asset or state can be linked or even staked into the contract. It essentially represents the bonding curves link to the real, or digital world.

Parameters…

Staked as an Re-Fungible: NFTs (via Re-fungible token), like a cryptokitty or an asset linked to the NFT, like intellectual property. Some use cases are outlined in the article below. Linked: IPFS link, Meme, or connected contract, similar to Memelordz.

Legal considerations: the traded asset will very much define the legal classification of the token by regulators. For example, if we were to place a real-world asset, like real-estate, into a bonding curve and token holders were paid dividends from the rental income of that real estate then that token will most likely be a security. If, on the other hand, the token represents a limited access ticket to an arts festival, where a limited number of tokens are sold along with a linear price curve the token is likely to be a consumption good.

3. The Curve

E. Curve function: enables the autonomous market making function of the contract by plotting an algorithmic relationship between supply and price.

Parameters…

Polynomial, exponential and logarithmic functions Linear functions Rule-based Sigmoid functions

Mathematical functions come in many flavours. Wilson Lau wrote a great article on a few potential functions and implementations here:

Slava Balasanov also recently published a great article on the various parameters of curve functions and formulas.

Considerations: Arguably, the function is the most significant parameter as it defines the entire market structure, its utility and future. Important here is that if the curve creator wishes to reserve himself an initial supply, this would need to be coded into the curve for example as a horizontal function up unto a certain point. From a practical perspective, we’ve found that implementing curve types in solidity code can be quite challenging and ample testing is needed to get the curve and corresponding interface right.

There is a big question of whether the function can or should be changed once the contract is live, for example, if new information emerges. Ideas are circulating around the use of oracles to adjust function parameters or token holder governance. The rise and fall of curves may not be suitable for many normal market participants, so curves should be studied and ideally simulated well before implementation, including testing of the maximum and minimum ranges of supply. As a simple exercise, consider sketching your desired market behaviour out on paper or in excel to consider which curve best fits the desired incentive scheme.

F. Pricing: how buying and selling is structured in the contract.

Various authors to date have proposed different Buy_In and Buy_Out mechanisms implemented either by differing spread functions or via a fixed tax. This enables novel funding and price stabilisation mechanisms.

P arameters…

Static pricing: one curve that defines the market. Useful as a pure attention mechanism without funding requirements and with a clear market structure. Dynamic pricing, spreads and taxation: different buy-in and sell out prices, whereas a tax or a spread is taken from contributors, which could be used to develop the asset in the form of recurring cash flows. I’ve drafted a first explanation of curve taxation here. Taxation could be implemented simply by taking a small amount of each purchase, or by implementing different Price_In and Price_Out curves. Introducing a tax or different pricing mechanism introduces friction to the market. As a side effect, this disincentivizes Pump and Dump or market manipulation, as any purchase comes with a guaranteed loss. Buyers are therefore incentivised to hold for a certain timeframe at least until their breakeven price is met again and they make a profit. This reduces the speculative aspects around bonding curves and introduces fundraising opportunities.

For example, a practical use case for continued funding of organisations using taxation has recently been proposed by Thibauld:

3. Individual dynamic pricing:

4. Equilibrium pricing: when a buyer purchases she also sets a pre-defined sell price. Once an equilibrium is hit, those sell prices begin to trigger.