流动资金池是去中心化交易所的交易方面。他们的作用是增加市场参与者之间的市场流动性。流动性如此重要的事实在于,它很大程度上决定了资产价格如何变化。在流动性低的市场中,相对有限数量的未平仓订单在订单簿的所有面都打开。这表明一次交易可以使价格大幅度地向任何方向移动,从而使股票变得不可预测且缺乏吸引力。
来自Hoo研究院的cici表示,流动资金池是去中心化金融(DeFi)革命的重要组成部分,它似乎具有巨大的潜力。通常,这些池有助于将大量资产与任何其他受支持资产交换。
那么流动池要怎么运作?
首先我们需要引入常数乘积规则。
具体规则由人为设计,但是有一个前提,要符合市场基本的供需原则,需求量高的币价格相对要高,供应量高的币价格相对要低。说白了,就是用规则去模拟市场的逻辑。保证A币的数量越少时,再换出A币的时候,就需要放入更多的B币。比如,池子里的以太币被换走的越多,以太币就应该涨价,因为以太币变少说明以太币比较俏,俏的商品就应该涨。之前换一个以太币可能只要100USDT,现在可能要130个USDT才能从池子里换出一个以太币了。
因为流动性池的逻辑一般都是用代码实现的,规则是一开始订死的。最简单的规则是常数乘积规则,即A币的数量 * B币的数量 = 一个常数(x * y = k)。用我们上面的例子来说,这个常数就是以太币的数量100 * USDT的数量100000 = 100w。后面无论这个池子发生多少笔交易,这个值都是100w。A币的数量变多了,那么B币的数量就会变少,反正乘积总是常数。而且B币越少,再减少B币的时候,就要付出更多的A币。
上面这张图就是不同的规则对应价格的变动。横轴是x币的数量,纵轴是y币的数量,紫色的线表示常数乘积规则。当x币越来越多,对应曲线的右边,增大很多x(往池子里放很多的x币),可能也只能减少y一点点(换出一点点y币)
用上面的例子算一下。 一开始100个以太,1w个usdt。有人换出了10个以太,按照这个规则,usdt要上升至11111.111才能满足乘积不变。因此这个人必须往池子里注入1111个usdt才行。因此这10个以太币 = 1111usdt,平均每个111.11usdt。虽然这里是平均每个111.11usdt,但是其实每个以太币的价格都不一样,每个都比前一个更贵。
这时候再有人想换出40个以太币来,换完之后只剩50个了,那么usdt的数量必须达到100w / 50 = 2w个,还差2w -11111.11 = 8888.88个,需要由换以太币的人来补全。因此相当这40个以太币每个大概170usdt,又涨了不少。
具体每个币上,价格怎么算呢?有一个公式:
dy / dx = - y / x
也就是x每减少1个(dx = 1, 这里的x就是以太币),y的增加量(dy,这里的y就是usdt)= y当前的个数 / x当前的个数。比如在以太币50个,usdt 2w个的状态下,总个数100w,符合要求。这个时候,换一个以太币的价格应该是:dusdt =deth * usdt个数 / eth个数 = 1 * 2w / 50 = 400 usdt,远高于之前的平均值170usdt的。
这个公式实际上就是根据 x * y = k求导推出来的,搞不清楚也没关系。你不按这样算,按之前那样推演,以太币变为49个,然后usdt的个数 = 100w / 49 = 20408, 20408 - 2w = 408usdt 也是一样的。这里有点差别是因为币的个数是离散的,不平滑,影响不大。
这个规则是v神当初提出来的,最初是由uniswap实现的第一版,后面很多的DEX(去中心化交易所)都有常数乘积的规则,当然,现在已经有很多的改进版本了。
这时候涉及到外界的价格了吗?没有的,价格都是相对的,比如1个以太币 = 100个usdt到1个以太币 = 130个usdt,这个就是在池子里以太币涨价了,usdt降价了。只涉及到池子里的对应关系。
这就是流动池运作的技术基础了。
*本文内容不构成任何投资交易建议。