理解去中心化 稳定币 DAI
随着摩根大通推出JPM Coin 稳定币,可以预见稳定币将成为区块链落地的一大助推器。
坦白来讲,对于一个程序员的我来讲(不懂一点专业经济和金融),理解DAI的机制,真的有一点复杂。耐心看完,必有收获。
为什么需要稳定币
如果一个货币其价值时刻在剧烈波动,就无法作为一个日常支付和交易的货币,谁也无法承担今天发的工资,第二天就跌掉了三分之一。
在币价高度不稳定时,在不退出加密货币市场的情况下,稳定币就可以提供价值保值。
通常发行稳定币的方式是通过资产担保来发行,像USDT、TUSD等就是通过美元资产来担保发行等额稳定币,如银行存款1亿美元就发行1亿USDT, 既通过锚定法币来实行稳定性。
USDT 因审计不公开,经常被质疑超发,如1亿美元担保发行1.5亿USDT,就会导致0.5亿USDT无法兑换美元。这也是为什么在监管下发行的稳定币,如TUSD、GUSD有逐步取代USDT的趋势。
本文的主角 DAI 同样是通过资产抵押发行, DAI 是通过抵押数字资产发行,去中心化发行。
注意加粗的两个关键字抵押数字资产和去中心化,它是用一套称之为Maker的智能合约发行的,其背后的团队为MakerDAO。
Maker目前只支持抵押ETH,后面可能会加入其它代币。
DAO (Decentralized Autonomous Organization): 去中心化的自治组织
我们都知道数字资产的价值是有很大波动的, 那么Maker怎么来确保 1 DAI = 1 USD的呢?
稳定币 DAI的发行
Maker体系中有一个实现了抵押贷款逻辑的智能合约(CDP), 当我们抵押(发送)ETH到智能合约,合约根据当时ETH的价值,计算一个折扣后,发行对应的DAI(符合ERC20标准的代币)。
以太价格获取Maker采用的是中心化方案,从各大交易所获取再加权平均。
为了方便理解,类比抵押屋产贷款,我们把房子作为抵押品向银行贷款,ETH就相当于房子,智能合约相当于银行,DAI 相当于贷款拿到的钱。银行给我们贷款时,银行也会对房子的价值打一个折扣。
这个折扣在Maker系统中称之为抵押率,这是一个很重要的概念,大家务必理解。
我们给他一个数学定义: 抵押率 = 抵押物的价值 / 放贷的价值
。
如果房子价值200万,抵押率为200%, 银行就只能给我们贷款100万,这个大家应该能够理解。
同样,假设以太币现在价值200美元,抵押率为200%,那么把1个以太币(200美元)发送到CDP智能合约,就可以获得发行的100个DAI。
在抵押ETH生成DAI的同时,合约会为我们生成一张CDP借贷凭证,它记录着借贷关系及金额,并且抵押ETH会一直锁定在合约里,在还清100个DAI时,ETH将归还我们。 就像银行扣押房子直到我们还清贷款一样。
到这里,DAI的发行应该明白了。
套现保值
DAI的这种抵押贷款逻辑非常有意思 ,它生成的CDP借贷凭证提供给我们一个套现保值的手段。假如你有一大笔以太在手里, 而你又急需一笔资金怎么办? 那么抵押生成DAI是获得资金的一个绝佳选择。如果在交易所把币卖掉换成稳定币,会失去以太的所有权,币价上涨时就无法换回对应的以太。
例如:目前 ETH 价格约为 130 美元, 按200%的抵押率, 1000个以太可以抵押生成6.5万个DAI,即可以获得6.5万美元资金,假设一年之后,ETH价格涨到到500 美元,只需要偿还6.5万个DAI(美元)及一点利息就可以赎回1000个以太(价值50万美元)。
DAI是如何保持稳定的?
依靠抵押美元发行的USDT、TUSD,能保持价值相对稳定很容易理解,靠抵押ETH的DAI如何保持稳定呢?
分两种情况:如果 ETH 升值, 意味着 DAI 有更足够的抵押(更高的抵押率,担保更充足),这不会有太大影响。如果DAI的交易价格超过1美元,Maker也会激励用户创造更多的DAI(目标利率反馈机制)。
目标利率反馈机制(TRFM):不过最重要的是以下几点:当DAI的交易价格超过1美元时,智能合约会激励人们生成DAI。当DAI的交易价格不到1美元时,智能合约会激励人们赎返DAI。
如果 ETH 价值下降则复杂一些,回到抵押屋产贷款的类比,如果我们的房子价值下降,银行会要求我们追加抵押物或及时还款,Maker也是一样,始终要求DAI是超额抵押的。
如果资产下跌到一定值(如抵押率150%),并且原抵押人没有追加抵押物或偿还(部分)DAI,合约会自动启动清算(liquidated),之前抵押的以太币被拍卖,直到从CDP合约借出的DAI被还清。
还是前面的类比,价值200万房子,抵押率200%,贷款了100万,在房子下跌到150万时,银行就会拍卖房子,清除这笔贷款。 Maker也是使用这种方式从市面上回购DAI用来偿还给CDP。
简单总结:
Maker始终要求DAI是超额抵押的,当系统发现有部分资产存在风险时,就会对风险过高的资产进行清算,它会首先清算抵押率低于 150% 的CDP借贷凭证,而为了防止清算持有人必须往CDP借贷凭证存入更多ETH或偿还DAI来提高抵押率。
现在我们来看 MakerDao抵押借款的界面就清晰了,以下截图是抵押1 ETH 生成60个DAI:
Collateralization ratio 抵押率为 228%, Liquidation price 清算价格为90 美金。
清算
关于清算也许还有几点需要了解:
- 在发生清算后, 就再也无法通过偿还DAI来取回之前抵押的ETH了(CDP借贷凭证会关闭)。
- 清算发生时,会扣除一部分的罚金(13%的罚金)和手续费。
- 拍卖ETH得到的DAI 会被销毁, 就像用户偿还DAI 被销毁一样。
- 拍卖偿还DAI后, 剩余的资产用户可以拿回。
- Maker系统中有一个专门负责清算的合约。
MKR 应对暴跌
上面一有一个前提,不管如果 DAI 都是超额抵押, 如果以太价格急剧下跌,抵押品的价值达不到借出的DAI的价值时,这时启动清算,将由Mkr持有者负责回购。
Mkr 是Maker系统中的权益代币, Mkr持有者是系统的收益者,获取借款利息及罚金等。
还是前面的类比,如果价值200万房子, 突然跌倒100万以下, 这时候在公开市场拍卖,市场是没有买家出100万以上购买房子的,那么银行将启用自有资金回购。
相当于损失的价值转嫁到Mkr持有者,价格波动是没发消灭的,它只能转移,DAI的价格波动性实际由CDP 借贷凭证持有者和Mkr持有者共同承担。
一点拓展
DAI 由于它的超额抵押借款机制,是一个很好的杠杆做多工具。
如果我们预期以太币会上涨,我们可以把前面1000个以太抵押生成6.5万个DAI,再此购买以太进行抵押,多次操作之后,可能获得数倍的增值。
为了写这边文章,拓展我不少金融领域知识,以前一直不理解做多做空(因为我不炒股、不炒币),现在把我的理解做一个记录,供参考:
做多
做多就是看好其上涨而买入,杠杆做多则是借钱买入。
上面就是借DAI(美元)买入以太,借来的6.5万个DAI(美元),按130美元一个以太,可以购买到500个以太,如果一个月后以太涨到200美元, 500个以太就是10万美元,还掉6.5万美元后,相当于凭空赚了3.5万美元。
做空
做空就是认为其下跌而卖出,同样也可以借别人的卖出。
现在130美元一个以太,我认为以太会下跌到100美元,于是我向交易所借了1000个币卖掉获得13万美元,如果真下跌到100美元,就用10万美元换1000个币还给交易所,这样我凭空赚了3万美元。
参考文章:
如果你对稳定币感兴趣,我们可以一起交流,我的微信:xlbxiong 备注:稳定币。
加入知识星球,和一群优秀的区块链从业者一起学习。
深入浅出区块链 - 系统学习区块链,打造最好的区块链技术博客。
理解去中心化 稳定币 DAI的更多相关文章
- ImCash:币安下架BSV之辩:规则、中立与去中心化
一种看法是:一个引用价格数据和执行交易的加密货币交易所,其业务决策往往是在链外发生的,不受制于严格的.类似于准宪法的链上规则的约束,加密货币交易所可以拒绝任何人喜欢的价格和交易,而且这样做并不会损害底 ...
- PPIO去中心化存储的了解和记录
目录 介绍 FileCoin P2P技术给去中心化云存储的好处 剩余资源的再次使用 市场竞争会激发民间的智慧 PPIO的2种冗余模式 全副本模式 纠删副本模式 为什么PPIO要设计支付代理节点? 一些 ...
- 去中心化存储项目终极指南 | Filecoin, Storj 和 PPIO 项目异同
Filecoin,Storj 以及 PPIO 这三个存储公链的设计思路是不一样的,没有优劣之分,写这篇文章也并不是为了争论各项目的好坏对错.去中心化存储是一个长期商业赛道,不同团队在同一个赛道上往不同 ...
- 为什么比特币和以太坊未必真得比EOS更去中心化?
在区块链行业里,有两派人一直在争论:一个是以比特币和以太坊为首的社群,另一个是以EOS为首的社群.这两群人一直在争论谁才是真正的未来,双方都认为自己这边更有未来.其中EOS抗争的重点就是100万TPS ...
- 比特股-去中心化交易所, STEEM - 去中心化社区, EOS - 下一代智能合约
libsnark 是实现了 zkSNARK 模式的 C++ 库.zkSNARK 是一个证明/验证计算完整性的加密方法,也即零知识验证的算法, https://github.com/scipr-lab/ ...
- 去中心化存储项目终极指南 | Filecoin, Storj 和 PPIO 项目技术对比(下)
在上篇文章中,我们主要从价值定位.技术层次架构.服务质量.去中心化程度,和经济激励机制五个方面分析了三个项目的不同.在这一篇文章中,我们将着重从区块链的架构设计.数据传输技术设计和数据存储技术设计三方 ...
- eos中BM与有BM特色的去中心化。区块链世界,白皮书为共识,代码为法律。
比特币挖矿是谁算力高,谁更容易挖到新的比特币,而BM认为这太浪费资源了,于是设计了DPoS:在DPoS系统里,大家不再挖矿.而是指定几个人负责记账,不叫矿工,而叫见证人.比特股里开始是101人,EOS ...
- Carthage:去中心化的Cocoa依赖管理器
Cocoa的依赖管理器,我们已经有了CocoaPods,非常好用,那么为什么还要创建这样一个项目呢?本文翻译自Carthage的Github的README.md,带大家来了解一下这个工具有何不同之处. ...
- 剖析nsq消息队列(二) 去中心化代码源码解析
在上一篇帖子剖析nsq消息队列(一) 简介及去中心化实现原理中,我介绍了nsq的两种使用方式,一种是直接连接,还有一种是通过nslookup来实现去中心化的方式使用,并大概说了一下实现原理,没有什么难 ...
随机推荐
- 网络编程之实现server端并发聊天
程序如下: import socketserver class MyServer(socketserver.BaseRequestHandler): #自己定义一个类,继承BaseRequestHan ...
- Django中上传图片---避免因图片重名导致被覆盖
上一篇文章中(https://www.cnblogs.com/lutt/p/10640412.html),我们以图片文件夹+图片名字的方式来储存图片,这样的做法会导致有重名的图片会导致之前的图片被覆盖 ...
- caffe的cancat层
我在训练Goolenet inception-v3时候出现了concat错误,因此写下concat层的一些知识点,以供读者跳坑 concat层在inception-v3网络中存在非常明显,之所以需要c ...
- Kendo DropDownListFor值传不回去的小坑
做项目时,在KendoWindow弹框里面写了个表单提交,不小心把AreaId 下拉框设置了Name为“OrderAreaId”.在后台接收不到AreaId的参数.后来才发现是Name的设置强行把A ...
- 宏开发:excel中添加拼接行
Sub 万途标签()Dim iFor i = 1 To Sheets.Count If Sheets(i).Name = "数据表" Then If MsgBo ...
- Raize 重新编译
最近项目用到了Raize5的日历控件, 需要在中文版本与英文版本中切换显示, 这个需要修改 RzPopups.pas, 修改了需要重新编译. 费老大劲了. 首选修改 RzBorder.pas, 不 ...
- Oarcle之单行函数(上)
dual 是一个虚表,为了满足sql句式而设置这么一个表 单行函数 字符函数 concat 拼接两个字符串 select concat (concat(ename,‘的职位是’),job) fro ...
- [ABP] ASP.NET Zero 5.6.0 之 ASP.NET Zero Power Tools 破解日志
两个要破解Patch的关键dll名称:AspNetZeroRadToolVisualStudioExtension.dll和AspNetZeroRadTool.dll AspNetZeroRadToo ...
- ceph添加osd(ceph-deploy)
修改主机名和 /etc/hosts 关闭防火墙和 SELINUX 安装和配置 NTP ceph-deploy 节点安装 安装 ceph-deploy sudo yum install ceph-dep ...
- SpringBoot 项目打包分开lib,配置和资源文件
原文地址:https://blog.csdn.net/u012811805/article/details/80878848 1 jar启动分离依赖lib和配置 先前发布boot项目的时候,改动一点东 ...