EOS智能合约中包含一个exchange合约,它支持用户创建一笔交易,是任何两个基本货币类型之间的交易。这个合约的作用是跨不同币种(都是EOS上的标准货币类型)的,通过各自与EOS主链价值进行锚定,然后再相互发起交易兑换。要搞清楚的是,这与区块链“传统的”交易所并不一样,那个主要是集中在交易撮合上面,而且必须是同一币种。
关键字:EOS token 经济模型,exchange,Pegged Currency,LTV,cmake,跨token交易,ubuntu编译boost库,通证模型,抵押资产,token价值转换
标准货币体系上面一直提到标准货币(standard currency),在EOS.io中也针对这一标准货币的设计给出了官方文档,本章先来弄清楚标准货币的概念,然后再继续分析exchange。
文章的名字叫《Pegged Derivative Currency Design》
Pegged Currency的含义是什么?
Currency pegging是用来固定汇率的一种方式,通过匹配当前货币与其他货币的价值锚定,或者其他价值度量方式,例如黄金和白银。所以Pegged Currency可以理解为汇率稳定的货币。
所以,这篇文章的题目可以翻译为:一种价值稳定的衍生货币设计。
目前市面已有的Pegged Derivative 货币,例如BitUSD,比特美元,它是一种以加密货币作为抵押。发行人是短线持有美元而额外长地持有加密货币。而购买者是单纯地长期持有美元。
原始设计比特股BitShares创造了第一个可行的价值稳定的资产系统:
允许任何人获得一个最小的抵押状况是,公布抵押物和获得的BitUSD的价值比率在最小的1.5:1(抵押物:负债率)。
最少的抵押状况下,要强迫BitUSD持有人在任何市场价格下跌超过美元几个百分点以下的时候的流动性(如果BitUSD持有人选择使用强制清算是不允许的)。换句话说,就是在当前货币下跌的时候,也要保证货币流通性,这是为了货币状况健康运营而考虑。
为了防止价格补偿(直接通过增发和卖出来控制价格)的滥用,所有的强制清算会被推迟。当发生“黑天鹅”事件(极小可能性发生,但实际上却发生了)的时候,所有的短线会通过价格补偿拥有他们自己的清算状况,而所有的BitUSD的持有者只能承诺一个固定的赎回率(清算时固定一个赎回率)。
这种设计的问题体现在:
在BitUSD/BitShares市场体系广泛传播下,其实流通性是很低的。
短线持股人会承担所有风险,只有在BitShares上涨时才会赚取利润。
黑天鹅(BlackSwans)总会出现,并且伴随巨大破坏力。
这是一个人人为己的一个模型。
由于风险收益率,供给会被限制。
抵押物的苛刻要求限制了杠杆leverage。
新的想法这是一种让短线持股人通过提供一种高流通性的价值稳定的资产来稳定货币资产。他们会通过鼓励人们交易他们的稳值资产来获益,赚取交易费而不是在投机市场寻求高杠杆。也会通过赚取短线持股的利息。
实施步骤一个初始用户存储了一个可担保货币(C)到一个智能合约,并且提供一个初始化价格补偿。通过C:D等于1.5:1的价格补偿率发行一个新的负债token(D),这个token会被存储在Bancor市场制造商。
Bancor是为以太坊的代币的价值判断以及流通机制。通过智能合约,可将这些代币作为储备金,让任何人随时随地通过智能合约进行快速兑换,销毁代币,提高代币流通性。
这样一来,因为没有D token被卖出,所以市场制造商是0杠杆。那个初始用户也会收到交换token(E)从市场制造商那里。
我们继续,人们现在可以购买E或者D token,Bancor算法会提供基于C,E,D之间的流通性。由于市场制造商的收费,E的价值将随着C而增长。
C = 智能代币或者母货币储备 D或E = 奖励代币(发放给初期持有人,以及社区贡献者) 抵押率C:D = 价值C(抵押物)借款D(负债)比(反过来就是LTV,loan to value) 价值维稳我们做了这么多工作,其实目的就是要保障D这种token(token本身就是衍生货币)是符合Pegged Currency的设定。最直接的指标就是与美元价值(C就可以是这个角色)的锚定浮动范围,要尽可能小,这个范围的浮动要小到让更多的人(套汇者)愿意持有和交易D token。下面有几种可能性:
D的价值超过美元5%
抵押物价值(原值)增加,C:D>1.5,这时候要发行更多的D token,来降低比率到1.5
原值降低,C:D<1.5,调整token体量(减少市面流通量)以降低赎回价格(持有人不愿赔钱硬抛)来降低D token的价值到与美元一致。
市场体量 = 联结者体量(Bancor)
赎回价格:在到期之前,发行人可以回购持有者的token。
D的价值少于美元5%
原值增加,C:D>1.5,调整token体量抬高赎回价格(持有人愿意被赎回),从而提高市面上token的价值,最终赶上美元。
原值降低,C:D<1.5,这个比较复杂,因为token的价格要低于美元,同时它的原值也低于负债,说明这个token已经真的价值降低了。那么就需要增资补偿
中止其他token,例如E到C和E到D的交易。
在C到E和D到E的交易中间提供奖金(用来补偿)。
在D到E的转化上会在循环外收到D,而不是加到市场制造商那里。
在C与D相互转化上不做任何改变。
中止尝试调整制造商比率来防卫价格补偿,使价格上涨至高于美元1%(这是比较健康的)
exchange