Bancor的原理及智能合约实现

本文详细介绍了Bancor协议的背景、核心机制与数学证明,阐述了如何通过智能合约实现ETH与Smart Token的双向兑换。Bancor利用连接器和CW(连接器权重)确保异步价格机制,解决了小市值token的流动性问题,释放了token市场的长尾潜力。此外,文章还探讨了Bancor协议在去中心化交易所的应用及其对未来市场资源配置的启示。
摘要由CSDN通过智能技术生成

写在前面

  1. 本文涉及到bancor名词可能会让部分不熟悉bancor的同学看着有些confuse,先把区别写在前面:

bancor plan: 可以理解为凯恩斯提出的“国际清算同盟计划”

bancor protocol / bancor协议: 可以理解成bancor机制的核心算法

bancor.network:基于bancor协议的智能合约实现的去中心化交易所

  1. 另外本文中关于token使用的「发行」一词的意思可以参考以下伪代码(相当于mint):
function issue(address _user, uint _amount) {
   
    balances[_user] += _amount;
    totalSupply += _amount;
}

bancor诞生的背景

二战之后,凯恩斯为了遏制美元称霸世界提出的“国际清算同盟计划”中的重要计划,也有人称其为「bancor plan」。这个计划主张多边清算,取消双边清算。而bancor本身在这个计划中,也是各国账户的记账单位。

而bancor的初始分配则以二战前三年的进出口贸易平均值计算,这样加上英联邦的殖民地,英联邦可以分配到的bancor多达35%,可以让英国在战后黄金储备耗尽的情况下,和美国共享国际金融的领导权。

而bancor plan所倡导的多边清算,在区块链token化兴起的今天,被用来解决token市场的长尾效应。目前,几乎每一个项目都要发行自己的token,目前大交易所都采用撮合交易的方式,即买和卖同时都有需求,交易才能发生。因此一些关注度小的token都有很大的流动性风险。

什么是bancor协议

bancor协议不依赖于双边需求匹配,其运用连接器 (connector)作为桥梁,实现了异步价格机制。即用户可以随时按照自动计算得到的价格,把某一种token卖给”连接器”拿出抵押物(通常是eth)或者换取其他token;买过程也一样。(这里说卖给了连接器并不恰当,大家可以理解成把token发送给连接器,再由连接器来实现兑换的逻辑)。

token发行方可以锁定一些ETH在连接器中并自定义CW(connector weight, 连接器权重,以前也叫CRR,即恒定准备金率),发行出一定数量的自己的token,bancor里称之为智能代币(smart token)。一般如果买需求增加,smart token的价格就会相应升高;卖需求增加,smart token的价格会相应下降。至于涨跌幅度,可以根据项目方对自己token的定义结合项目需要,通过自定义CW来实现控制。

未来用户也可以锁定一些smart token来发行新的smart token。这样就会形成一个价值网络,在这个网络中的token都可以以某种路径实现双向兑换,且因为异步价格机制,因而并不依赖买卖需求双边匹配。

在这样的机制保证下,即使是关注度小的token也没有流动性风险,释放token市场的长尾潜力。

bancor协议中的名词解释

bancor协议的白皮书中涉及到很多名词,先做一下解释:

  • connector(连接器):可以认为连接不同token的兑换桥梁;
  • connector token(连接器代币):可以理解成抵押物。比如在bancor网络中token发行的最初阶段,就是通过锁定ETH来发行smart token的。在“抵押ETH发行token”这个过程中,ETH就是connector token。(当然在bancor的具体实现中,是通过ETHER TOKEN实现的,下详述)。
  • smart token(智能代币):理解成你想要发行的TOKEN。还是用“抵押ETH发行token”这个过程为例,smart token就是那个想要发行的token。
  • CW(连接器权重): 理解成调节价格敏感系数的参数。买入smart token时价格上升,卖出smart token时价格下降,但是涨跌幅度不是一个固定的值,可以用CW调节。

bancor-cw

上图中可以看到:不同的cw值对应的smart token价格随供应量不同表现出的不同走势。

当cw为1时,价格恒定;cw为0.5时,价格随供给量成线性变化;当价格分别为10%和90%时,价格随供给量的增加,一个表现为敏感,另一个表现为不敏感。这样的曲线走向和经济学中的价格弹性有异曲同工之妙。(笔者在旁边标注的 Es E s 表示的就是价格弹性系数)。

bancor中涉及到的数学证明

在bancor的白皮书中有提高,smart token的价格公式为:

price=connectorBalancesmartTokenssupply×CW p r i c e = c o n n e c t o r B a l a n c e s m a r t T o k e n ′ s s u p p l y × C W

我们对上面的公式做个变形,用R表示 connector balance(比如说ETHER),用S表示 smart token的供给量,用F表示 CW, 最后用P表示智能代币的价格。

那么整个市场上的smart token的市值上限就是S*P,根据上面的公式定义,得到R = FSP,变换成之前的公式也就是

P=RSF P = R S F

当用户想购买非常少数量的 smart token,用 dS表示,那么该用户就需要支付 PdS,而用户正是connetor token作为支付货币,因此 connector balance增加的 dR = PdS

这样我们又得到了一个公式 (F是一个常量) :

dR=d(FSP)=Fd(SP)=F(SdP+PdS) d R = d ( F S P ) = F d ( S P ) = F ( S d P + P d S )

继续往下推导:
PdS=dR=F(SdP+PdS) P d S = d R = F ( S d P + P d S )

P
  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值