本文探讨了设计 bonding curves(绑定曲线)时需要考虑的数学因素,以及这些因素对激励机制和可扩展性的影响。作者分析了不同函数(如指数和线性函数)的优缺点,并提出了一种基于规则的替代函数,可能在实际应用中提供更优的激励机制。文章最后鼓励读者根据所述的模型设计自己的项目弯曲结构。
我非常钦佩Simon de la Rouviere在Medium上发表的所有思考。我尤其对Scott Moore最初介绍的绑定曲线概念感到兴奋。
从投资者的角度来看,绑定曲线具备债务和股权的特性,并且绝对是可以激励集体贡献/筹款的有趣结构,如果激励设计得当,可以启动一些令人兴奋的以社区为中心的开源项目,甚至是营利性项目。
然而,我确实认为所有这些数学在某种程度上被忽视了。数学的具体细节对激励和可扩展性有重大影响;如果我们错误地设计这些加密经济模型,我们就有可能创建一些不可持续的项目或市场,容易受到滥用和操控。以下是我认为在设计这些模型时需要面对的一些现实:
所以,我们知道一些我们需要设计的参数。我在这里所提出的模型,希望能帮助我们更好地理解那些有助于根据这些参数定义有效绑定曲线的变量和函数。
旁注一下,这篇文章只会涉及 单一 绑定曲线,其中每一点价格=卖出价格。在双曲线模型背后的数学和激励非常酷且更复杂,我希望在以后的某个时间涵盖这个主题。
最后的警告: 这是一篇非常技术性的文章。请至少阅读一些激励这项思考的工作,以获取必要的背景,以免对本文的其余部分感到完全困惑:
我们在这篇文章中试图解答的问题很简单:
我们如何定义绑定曲线背后的函数?
Simon的初始文章提出使用指数函数来构建绑定曲线。当我们讨论技术增长时,它们听起来很好,并且有很大意义,但在涉及价格时,它们却不切实际,特别是当我们预计基础变量(代币数量)会增长几个数量级时。随着基础变量的增加,指数函数无止境地加速,因此在设计涵盖多个数量级的曲线时,价格往往在曲线的80%处保持非常低,然后迅速加速到一个难以管理和不合理的水平。
问题不一定在于绝对价格——特别是因为我们可以交易分数代币。更重要的问题是 随着铸造的代币数量增加,增长速度和收益加速。随着项目变得越来越受欢迎,你得到的价格变得更加波动,伴随更大的投机性上行和下行。考虑到我们到目前为止在加密货币市场所经历的行为,这可能是我们为代币设计的最糟糕的投机环境。
那么,如果我们操纵指数函数会怎样?基本上你可以改变两个因素——指数的底数,或者你可以对变量应用某种因子。但,除非你应用一个也以指数速率下降的因子,否则你将始终面临定义一个指数曲线的强烈加速。(我们基本上后面会做到这个)。
你可以在我创建的Exponential标签上玩弄这些变量,看看指数函数可能会如何呈现。
Simon的第二个建议是使用线性函数。在这个背景下,线性函数通常是可以的,特别是当你认为价格增加与代币供应增加在同一数量级时——因此,一个发行10,000个代币基本上会导致从第一个铸造的代币价格上升10,000倍。这对于很多项目来说其实是可以的——因为价格增长的前三个数量级可能会在不到10人之间分享,但如果项目的发展远远超出这个范围,可能会变得有问题。
你无法真正设计一个纯粹的线性函数,其中价格和已发行代币的数量变化没有在同一水平——这恰恰是线性函数的本质,即它与相关变量线性增长。当你预计发行100万个代币时,这可能是个问题,但又不认为1000000倍的价格增长也是合理的。因此,针对具有确实扩展空间的项目,线性函数可能会对前几位代币持有者过于优厚。
最后一个问题只是设计这些绑定曲线的适应性。y = mx + b 在设计你想要的绑定曲线时并没有留下很多操作的空间。
你可以在我创建的Linear标签上玩弄这些变量,看看线性函数可能会如何呈现。
当我思考这些曲线的替代设计时,我认为从投资者的角度来看,有一个简单的规则我可以在代币模型中定义:代币应随着发行代币的数量或平台用户数量的翻倍、三倍或10倍而升值X%。
我们可以在下面的函数中表示这一点。根据使用的变量,它可以是超线性的、线性的或次线性的,并且看起来有点像下面的曲线:
其中 a 代表每个因子增加的价格增长百分比, b 是一个常数,根据 y = mx + b 的精神调整函数,c 是因子增加的基础(例如,2表示翻倍),m 是调整定义曲线“斜率”的乘法因子。
例如,如果我们定义这个规则为:代币A将在每个代币发行数量翻倍时升值25%,则方程的形式如下。 然后,我们可以使用 m 和 b 变量来调整一些其他因素,以帮助达到目标价格或在分发到特定代币数量时的目标绑定金额。
价格图表将大致类似于上面,你可以查看在你可以在此找到的模型中的各种因素详细信息。
如果我们将规则定义为:代币A将在每个代币发行数量翻倍时升值100%(或者在任何情况下A = C - 1),如此方程将等同于线性函数。 当 A > C - 1 时,我们定义了一个在代币供应增加时加速的超线性函数(不是指数函数)。 当 A < C - 1 时,我们定义了一个更像对数函数的次线性函数。你可以在下面查看曲线。
如果总代币发行预计保持较小,且额外增长对于激励用户有帮助,那么超线性函数可能是有益的;它也可能是最能代表网络效应推动项目获得的增长。
然而,我认为次线性函数通常是最有用于大多数应用程序的,因为价格增长的类对数式减速准确激励了早期用户与后期用户之间的区别。
这个函数的另一个有趣的替代选项是添加一个增值或贬值的因子,如下所示,使我们能够随着代币扩大到不同也的数量级加速或减速增长。
你可以在这个模型中玩弄这两条曲线。 我还模拟了在不同时间加入用户所期望的回报,以使我们能够根据期望调整回报。
这里提到的一件重要事情是所有绑定曲线函数都是基于总代币供应。但是,由于价格随着总代币供应的增长而增加,系统中的用户数量与流通中的代币数量的增长并不成正比。(需要更多的用户来购买更昂贵的代币)。 当每个用户绑定的平均ETH小于代币价格时,用户增长将超过代币增长;而一旦代币价格超出每个用户的平均绑定金额,增长速度将相对放缓。
这并不是特别成问题,但由于我们通常倾向于根据MAU或DAU而非流通代币数来理解产品,我模拟了如果函数是基于用户而不是流通代币的等价增长率(A%)。我所建模的情况下没有巨大的差异,但如果价格上涨更为剧烈,或者我们预计平均绑定金额较低,这一点是很重要的考虑。
去为你的项目设计一个绑定曲线;这可能真的有效。试着了解你希望为项目设计的规模和回报,并玩弄一些变量,看看你如何能够达到。
当我看看这些模型时,我往往会问自己以下(我感觉Simon可能会觉得有争议的问题,但我在这些项目中通常比较实际):
在双绑定曲线模型中,这些问题变得更加重要,但我会将其留到其他时间再讨论。
你觉得怎么样? 随意尝试我提供的模型,并告诉我你的想法。给我发送问题、快乐的评论或尖锐的批评。我将在收到有趣的反馈时一如既往地添加附录到这篇文章中。
- 原文链接: medium.com/thoughtchains...
- 登链社区 AI 助手,为大家转译优秀英文文章,如有翻译不通的地方,还请包涵~
如果觉得我的文章对您有用,请随意打赏。你的支持将鼓励我继续创作!