专栏名称: 区块链技术学习
致力于区块链技术的学习和普及,对区块链技术和相关企业事件进行深度分析和研判,探索去中心化账本技术应用领域。
目录
相关文章推荐
购机帮你评  ·  关于公众号进行账号迁移的说明 ·  21 小时前  
视觉志  ·  贴吧,凉了? ·  2 天前  
媒哥媒体招聘  ·  影视头部宣传公司多岗招聘,带薪进组追星! ·  3 天前  
媒哥媒体招聘  ·  知名传媒公司一直娱招聘! ·  4 天前  
51好读  ›  专栏  ›  区块链技术学习

以实例形式深入浅出讲透BANCOR算法

区块链技术学习  · 公众号  ·  · 2018-10-23 17:55

正文

来自:简书,作者:笔名辉哥

链接:https://www.jianshu.com/p/fe48ed1f38cd



1

摘要


通过本文学习,可以获得以下目标:
1)了解BANNCOR协议的基本原理;
2)通过举例熟悉BANNCOR算法的效果。


2

BANCOR算法的来源


在20世纪40年代,英国经济学家凯恩斯提出采用30种有代表性的商品作为价值锚定发行国际货币Bancor的构想。而其他国家或机构再以Bancor为价值锚定发行各自的货币。然而这一方案没有得到实施,取而代之的是美元成为国际货币。


Bancor算法能够真正进入大众的视野里,可能要归功于EOS项目。由于EOS项目在RAM分配中采用了优化后的Bancor算法,并将RAM的价格爆炒到了很高的价位,凭借EOS项目在区块链领域的强大运营宣传能力与影响力,Bancor算法广为流传。


3

BANCOR协议的基本思路


在以太坊上发行的大量ERC20-Token是没有价值锚定的,其价值完全依赖于项目方的技术与运营能力,若项目失败了,则通证(TOKEN)价值就很可能归零。


若利用智能合约的强大而灵活的“资金流转控制”能力,在通证合约中控制着一定量的储备金,让通证与储备金之间拥有一定的兑换能力,那么Token的价值就可以储备金为连接器代币,而不完全依赖于项目方。通证持有者也就不用承担项目失败或者项目方可能诈骗跑路的风险。


在以太坊平台上,显然ETH的价值与公信力最大,是最佳的储备金与连接器代币(Connector,又称锚定物),不过其他有价值的通证也可以作为连接器代币,而且连接器代币可以有多个。


若通证与连接器代币之间的兑换算法采用了Bancor算法,又符合ERC20标准,则被称为智能通证(Smart-Token) 。为了简单起见,以下的论述以ETH作为连接器代币举例说明。购买与售卖Token的过程如下:


  • “购买者”发送一定量的ETH到Token合约地址,触发了合约代码自动执行"购买功能代码",获得对应数量的Token;

  • “售卖者”发送一定量的Token到Token合约地址,触发了合约代码自动执行“售卖功能代码”,获得对应数量的ETH。


若AToken与BToken都是以ETH为连接器代币的智能通证,那么Token持有者无需通过交易所,仅仅凭借智能合约提供的买卖与兑换功能,就能实现AToken与BToken的自由兑换,比如AToken-->ETH-->BToken,多种智能通证之间通过共同的连接器代币串接起来,就形成了一个价值网络(Bancor Network)。


用于去中心化流动性的 Bancor 网络可以作为中心化交易所的替代,用于连接到网络中的任何代币,并带来诸多积极意义。例如,一个带有两个连接器的智能代币,其 CW 值为 100%,其功能类似于去中心化代币交易对。我们将这种智能代币称为中继代币。中继代币允许用户通过一个即时的两步过程在两个连接的代币之间进行转换,即使用其中一个连接器代币购买中继代币,然后立即将其出售给另一个连接的代币。由于定价算法,这将导致中继代币相对于连接器代币的价格上升(由于购买),和中继代币相对于连接器代币的价格下降(由于出售),这与预期完全一致。如前所述,中继代币的挂牌价格不太可能长久地与外部交易所中任何一个连接器代币的价格明显抵触,因为套利机会鼓励套利者在中继代币相对于连接器代币的价格与其在其他市场上的价格趋于相同。这种特殊的智能代币配置允许不符合 Bancor 协议的现有标准代币(没有连接器)也可以向后兼容(换句话说,通过中继代币与网络中的每个代币进行转换),从而增强了可行性并接触到流动性网络。


4

BANCOR的计算公式和举例


4.1 BANCOR的基本计算公式


计算公式涉及多个参数,解释如下:


  • Token的供应量【Smart Token's Supply】,简称Supply;

  • Token的价格【Smart Token's Price 】,简称Price;

  • Token的总市值【Smart Token's Total Value】,简称TotalValue;

  • 储备金余额【Connector Balance】,简称Balance;

  • 储备金固定比率【Connector Weight】,简称CW。


计算公式如下:


  • CW  =   Balance / TotalValue;

  • TotalValue =  Price * Supply;

  • Price  =  Balance /(Supply * CW)


举例:若当前AToken的发行量为1000,报价为0.5个ETH兑换1个AToken,那么AToken的总价值为500个ETH,但是储备金余额可能并没有500个ETH,比如为250个ETH,那么CW则为0.5(50%)。


4.2 Token买入计算公式及举例


Token买入计算公式:


  • Token_Return = Supply *((1 + ETH_Amount / Balance)^ CW - 1)


举例:若当前AToken的发行量为1000,储备金余额为250个ETH,CW为0.5,那么当前的报价则为0.5个ETH兑换1个AToken;现在Bob想花750个ETH购买AToken,带入公式:Token_Return = 1000 *((1 + 750 / 250)^ 0.5 - 1)= 1000


即Bob花了750个ETH购买了1000个AToken,本次购买的平均价格为0.75个ETH兑换1个AToken,比初始报价已经高了许多。Bob的购买行为推高了AToken的报价。若Bob接着购买同样数量的AToken,则需要付出更多的ETH代价,每一笔购买都会继续推高AToken的报价。


4.3 Token卖出计算公式及举例


Token卖出计算公式:


  • ETH_Return = Balance *(1 - (1 - Token_Amount / Supply)^ (1 / CW))


举例:在Bob的那笔交易完成后,AToken的发行总量为2000个,储备金余额为1000个ETH,CW维持不变、仍然为0.5,那么通过公式可以计算当前的报价为1个ETH兑换1个AToken;现在Alice想卖掉1000个AToken,带入公式:ETH_Return = 1000 *(1 - (1 - 1000 / 2000)^ (1 /0.5))= 750


即Alice 卖掉了1000个AToken,获得了750个ETH,本次购买的平均价格为0.75个ETH兑换1个AToken。因为Bob的购买行为推高了AToken的报价,而Alice是在Bob的购买行为之后卖掉了AToken,所以Alice卖到了相对较高的价位。假如没有Bob的购买行为,回到AToken的供应量为1000的那个时候,Alice卖掉全部的AToken,也只能获得250个ETH。


5

BANCOR不同连接器权重与供需关系分析


图1显示了智能代币的价格,对CW的不同值的变化。简要讨论一下插图案例:



【辉哥备注】


  • Supply - 智能代币的结余供应量【Smart Token's Supply】,是指连接器外所有用户持有的智能代币总量。

  • Quoted Price - 智能代币的报价【Smart Token's Price 】
    实际上,用3.1的公式是无法实现价格的平滑处理的,实际公式为3.3下一章的微积分公式。


(a)第一种情况是CW = 100%,在这种情况下,不管需求如何变化,智能代币的价格完全跟随于连接代币准备金的变化,两者的相对值不会发生变化。价格实际上与其连接代币的准备金挂钩,智能代币成为该值的一种代理。这可以比作金本位,一种货币制度,发行机构承诺将货币兑换成一定数量的黄金。例如,直到1971年,美元一直以每盎司35美元的汇率盯住黄金。


(b)第二个线性情况是CW = 50%,其中智能代币价格随供应量线性移动(随着连接器准备金而增长或收缩)。 当智能代币的需求较低时(即当出售量大于购买量时),智能代币价格会下降;当需求量较高时(即当购买量大于出售量时),智能代币价格会上涨。这种关系是供求关系的典型运作方式,唯一的例外是,智能货币的供应不是固定的,而是由需求决定的,而且在价格上涨时也不会稀释单位价格。


【辉哥备注】从智能合约买智能代币的量 > 当卖智能代币给智能合约的量时,就是需 > 供(从智能合约外部用户的视角),Supply上升,智能代币的价格线性上升。


(C) 第三个非线性的例子是,CW在0%到50%之间,这显示了价格和供给之间的相似增长关系,但是随着供给的增加,价格曲线增长得更加迅猛。图表显示了CW = 10%的特定价格曲线。低于10%的CW会比这个反应更强烈(更尖锐的指数曲线),而高于10%的CW会随着接近50%而相对地趋于线性(b)。


(D)最后一种非线性情况,CW在50%到100%之间,其中价格和供应之间的增长关系曲线增长力度不及(b),这意味着智能代币的价格对供应变化的反应越来越少,直到达到我们在(a)中看到的持平的100%关系。具体图表显示了CW = 90%的价格曲线。


从理论上讲,智能代币也可能具有大于100%的CW,但是,这是代币随着需求增加而变得更便宜的特定情况,并且超出了本讨论的范围。


6

BANCOR常见问题和解答


6.1 智能代币,连接器代币 的定义和区别







请到「今天看啥」查看全文