Uniswap是以太坊最近推出的一个非常有趣的项目。它是一个分散的代币交易所协议,但与目前看到的一般协议非常不同。几年前,Vitalik在redit上发了一条帖子,启发了Uniswap的创始人Haydenadams,但他一开始只是抱着学习solidity的想法。但很快,这次编程练习从以太坊基金会获得了奖金。Uniswap是一组智能合约,部署在以太坊网络上,这意味着整个过程都是在链上进行的。Uniswap没有自己的代币,完全分散,也没有任何手续费流向创始人。虽然Uniswap的机制需要一些时间来习惯,但我们会发现,与传统的去中心化交易所相比,(DEX)相比之下,这种代币交易协议有一些显著的优势。
Uniswap交易所简介
Uniswap独特的结构完全摆脱了限价订单的概念。不寻常的是,做市商在提供流动性时不再指定交易价格,而是只提供资金,然后Uniswap将负责剩下的事情。
在典型的传统交易所,如coinbase,做市商往往以不同的价格提供不同的流动性。假设交易者手头有1000美元和10ETH。他可能会以80美元买5ETH和60美元买10ETH。与此同时,他可能会以120美元卖出4ETH,以140美元卖出6ETH。他们会选择以自己愿意交易的各种价格做市。一般来说,所有交易者的挂单都构成了交易所的限价订单簿。随着市场的上涨或下跌,交易者可能会以指定的价格交易,也可能不会交易。一般来说,ETH“行情报价”中间值为最高买单和最低卖单。
现在假设Coinbase将每个人的买单和卖单汇集到两个大交易池中——可以想象,有些交易者可能不太喜欢这种做法。他们不希望自己的订单和别人混在一起,也不希望Coinbase代表他们以任何价格进行交易。
然而,Uniswap就是这样做的。做市商不再指定他们愿意买卖ETH的价格。相反,Uniswap将每个人的流动资产汇集在一起,并按照一定的算法进行市场交易。该算法称为“自动做市商”(AMM),它将根据一些预定义规则向最终用户报价。举一个非常简单的AMM例子:某个交易机器人(bot)该策略将以市场价格的中间值为基准,每1美元(低于1美元)支付和销售订单(高于1美元),并随着市场的变化而不断修改订单。
AMM不死板,不同的算法各有权衡。使用Uniswap的一种被称为“恒定乘积做市商模型”的算法。这种AMM的一个主要特点是,它可以提供流动性,无论订单簿有多大,流动性资本池有多小。提示是随着需方数量(付款)的增加,代币价格逐渐上涨。虽然这对大订单不是很友好(稍后会详细说明),但系统永远不必担心缺乏流动性,它几乎总是能够有效地运行。
交易者需知
举一个简单的ETH/DAI交易对手的例子。假设做市商已经为这个流动性池注入了10000DAI和1000ETH资金。Uniswap乘以这两个数字(10000x1,000=10000,000,000)。
Uniswap针对这一特定交易的目标是:无论交易活动多少,该产品都将始终保持1亿的交易乘积(因此称为“恒定乘积做市商”)。要记住x*y=k这个关键公式,其中x和y是流动性池中的代币数,k是乘积。为了保持k恒定,x和y只能相互反向变化。例如,如果交易员在本合同中使用DAI购买ETH,他们将增加x(因为流动池中的DAI)和y(因为流动池中的ETH)。但这种反向变化不是线性增长的关系。如果你现在想买100ETH而不是10ETH,在购买10ETH所需的DAI的基础上增加10倍可能是不够的。所需的DAI实际上是逐渐增加的。最简单的理解方法是画x*y=k曲线。
-如图所示,用于水平方向测量的货币A的数量越向右移动,单位数量获得的收入(即收到的货币B的数量)越少(Y值变化越小)-
在这个系统中,需要注意的是,关键是报价直接取决于订单的大小。曲线右端移动越多,单位投资获得的收入越少。假设当前ETH/DAI价格为100,不同数量订单支付的溢价见下表:
如表所示,购买ETH的数量超过流动性池的2%买很多ETH会很贵。但请记住,这些溢价是由当前流动性池的规模决定的。若流动性池大了100倍(即1000万DAI和10万ETH),此时仅购买50ETH就没那么贵了。最后,支付价格反映了交易规模对x/y比率的变化。流动性池越大,处理大订单就越容易(这正是我们所期望的)。
值得注意的是,交易是第一笔交易(frontrunning),今天以太坊所有的DEX都有这个问题。Uniswap允许用户在下单时指定最高价格,以缓解这一问题。这样,即使矿工先交易订单,用户也不会被迫接受更高的价格。虽然用户可能会错过这笔交易,但他们不需要支付更高的价格。Uniswap的另一个特点是“订单到期”,该功能可以防止矿工搁置签名交易,并在价格变动后处理。
ERC-20到ERC-20的代币交换不需要使用特殊的流动性池。例如,在处理REP时<>当ZRX订单时,系统将首先通过REP/ETH进行交易,然后自动通过ZRX/ETH进行交易。
流动性提供者需要知道
流动性提供者面临的情况更为复杂。以ETH/DAI市场为例。首先,流动性提供者(和交易者)要注意,x/y比代表交易对的价格。在我们目前的例子中,x/y=100,000DAI/1,000ETH=100。假设ETH在Coinbase上的价格是100美元。假如x/y不等于100,那么Uniswap和Coinbase之间就会有套利机会。
当流动性提供商向池中增加流动性时,他不仅可以向交易对手提供流动性,这将改变两种代币之间的比例,设定新的交易价格(这是一个危险的操作,因为他将立即被交易对手套利,从而赔钱)。例如,如果一个流动性提供商只增加了1000ETH,那么合同的新比例是10000/2000=50。套利者蜂拥而至,直到比率再次变成100:1。流动性提供商必须为交易对的两种货币提供等值资金(Uniswap接口将确保不会出现错误操作)。 假设增加10000DAI和100ETH(总市值2万美元)后,流动性池现在总共有10000DAI和1000ETH。因为注入量相当于总流动性池的10%,因此,合同会产生一种“流动性代币(liquiditytoken)”,将其提供给做市商,使其有权获得池中可用流动性的10%。这些代币不是用于交易的投机性货币,而是用于记录流动性提供者债权的会计或记账工具。如果其他人随后存款或取款,他们将产生或销毁新的流动性代币,以确保每个人在流动资本池中的相对份额保持不变。
假设Coinbase上ETH的价格从100美元上涨到150美元。Uniswap合同在套利后也会反映这种价格变化。在新比例变为150之前,交易员将增加DAI,降低ETH:1。这将对流动性提供商产生什么影响?合同反映的数字将接近122,400DAI和817ETH(做一个算数来检查这些数字是否准确:122,400*817=100,000,000(恒定乘积),122,400/817=150(新价格)。如果我们有权获得10%提取出来,现在会变成12、240DAI和81.7ETH。此时总市值为24500美元。做市导致利润损失约500美元。
显然,没有人愿意以慈善的心态提供流动性,收入也无法从货币投机中获得(因为没有必要投机)。因此,总交易量为0.3%它将按比例分配给所有流动性提供商。默认情况下,这些费用将重新注入流动性池,但可以随时收取。在不知道中间交易量的情况下,很难说交易费的收入和做市的损失是高是低。显然,对于流动性提供商来说,市场波动越多越好。
核心价值
Uniswap的机制听起来比基于限价订单簿的常规交易所复杂得多。溢价也使得大型交易的成本过高。那它到底有什么好处呢?简而言之,流动性的收集解决了订单的深度问题,不再存在较大的交易价差。不想处理限价订单的中小交易者会喜欢这一点(Uniswap的UX是我们看到的所有加密货币交易平台中最容易上手的)。在Uniswap上,不需要挂单或卖单,也不需要重量计算。流动性提供商也可以一劳永逸,订单和仓位管理的费用也显著降低。这是一种非常佛教的提供流动性和赚钱的方式。
Uniswap还为dapp之间(或计算机设备之间)的交易注入了活力。在一个拥有数百万微交易的世界里,融入一个巨大的流动性池比人们不得不关注特定价格的流动性需求更有意义。提高小订单的最佳报价不再有风险(想象卖方订单为空的DEX)。另一个例子是用Uniswap支付证券代币的股息。
一些聪明的读者可能已经意识到,这个模型与去年推出的Bancor网络非常相似,但Uniswap不收取任何货币费用,消耗的Gas要少得多,而且更分散。Bancor要求上币方抵押BNT,并填写上币申请表,BNT容易随意冻结。Uniswap不存在这些问题,只要以太坊网络存在,Uniswap就会继续运行。
目前Uniswap所有合同的流动ETH资金只有几千,所以还处于早期阶段。因为总会有巨头想交易大宗订单,Uniswap不太可能取代其他类型的DEX,但其独特的功能肯定会吸引很多想要快速简单地获得各种代币的普通交易者。
以上是Uniswap是什么交易所?关于Uniswap交易所的详细信息,请关注其他关于Uniswap交易所的相关文章!
投资有风险,进入市场必须谨慎,以上内容仅供参考。