REA:自动做市商(AMM)算法的数学原理及其未来发展(上篇)_区块链怎么入手

在本文中,我们将首先回顾由 Bancor、Uniswap、Balancer 和 Curve 协议实现的四种自动做市商 (AMM) 算法。还将讨论 AMM 算法的最新发展、可能的改进和未来。

本文总共分为上、中、下篇阐述自动做市商算法、现状及未来迭代的思考,本文为上篇。

Bancor Network的联合曲线概念和交易公式

Uniswap 的无常损失计算?

当价格变动在2ρ之间时的正向收益

流动性分布、流动性注入、Uniswap V3 范围订单

Balancer 的做市函数和交易公式

智能订单路由(SOR)算法

......

Bancor Network 的联合曲线概念和交易公式:

Bancor1利用联合曲线的概念来确定价格。联合曲线是代币价格与其总供应量之间的关系。

Bancor1?

Bancor Protocol Continuous Liquidity for Cryptographic Tokens through their Smart Contracts

https://storage.googleapis.com/website-bancor/2018/04/01ba8253-bancor_protocol_whitepaper_en.pdf

联合曲线 Bonding Curve:

联合曲线模型可以理解为描述“代币买卖价格”与“代币发行总量”之间的函数关系,可以由智能合约以去中心化的方式自动执行。

https://medium.com/linum-labs/intro-to-bonding-curves-and-shapes-bf326bc4e11a

Bancor Network选择的不变量是F,称为连接权重。在第一个表达式中R是指流动性池中的储备代币数量,S是流动性池外的BNT总供应量,P是BNT和储备代币 的相对价格。我们可以代入P的方程,对两边积分2得到P和S之间的关系。这是一个指数表达式,其中指数α与连接权重F有关(F在0和1之间)。F越小,α越大,这意味着价格相对于BNT的总供应量变化得更快。

投资盘点公司Deal Box成立风投公司以投资Web3技术:金色财经报道,基于区块链的数字证券和投资盘点公司 Deal Box 成立 Deal Box Ventures,将向新兴增长领域、房地产、FinTech、FunTech 和社会影响五个方面的 Web3 技术投资 1.25 亿美元。 Deal Box 已经完成了对 Total Network Services、 Rypplzz 和 Forward-Edge AI 的初步战略投资。[2023/1/18 11:19:29]

两边积分2

Formulas for Bancor system

https://drive.google.com/file/d/0B3HPNP-GDn7aRkVaV3dkVl9NS2M/view?resourcekey=0-mbIgrdd0B9H8dPNRaeB_TA

使用这个表达式和简单的积分,我们可以导出T(购买的BNT代币)和E(支付的储备代币)之间的关系,其中R0,S0是R和S的当前值。

如果我们想在代币A和代币B之间交换,则将代币A出售给代币B。我们首先需要使用代币A从池A购买BNT代币(注:如果我们没有BNT代币)。接下来,我们需要使用BNT从池B购买代币B。下面是计算我们将收到多少代币所需的精确公式。代币A和代币B之间的相对价格可以用BNT代币和代币A/B之间的相对价格表示。

优点:Bancor 允许在某些池中进行单边流动性的注入,这由Bancor治理决定。可以存入多少单边流动性是有限制的,这也是由Bancor治理决定的。在限额内,当用户以其他代币的形式存入单边流动性时,Bancor将补充等值的 BNT 代币。这使得用户提供的有效流动性加倍。如果达到限额,如果人们想要存单边流动性,就得等有人提取单边流动性,或者有人把BNT做为单边流动性注入。

Bancor 协议以BNT部分赚取的手续费补偿用户在存入单边流动性时的无常损失(将在后面讨论)。如果交易费用不能完全补偿无常损失,Bancor将铸造 BNT以确保无常损失为零。因此,流动性提供者如果将流动性存入一定的时间(存入满100天可全额补偿),就可以享受稳定的收入。

缺点:如上所述,所有交易都需要 BNT 代币作为中介。因此,我们将经历两次滑点。由于相同的原因,所有流动性池都由 BNT 和另一个代币组成,因此缺乏多样性。BNT 代币价格也可能受到影响,因为需要弹性供应才能实现无常损失补偿和单边流动性存款。

动态 | 中国知识产权报盘点2019专利领域大事件 其中一项与区块链相关:近日,中国知识产权报盘点2019专利领域大事件,其中包括“”区块链:专利布局驶入“快车道”。文章指出,区块链是近几年的科技热词。自中共中央局2019年10月24日下午就区块链技术发展现状和趋势进行第十八次集体学习后,区块链再度成为全社会关注的焦点,并登上了各大权威纸媒与电视媒体的头版头条。区块链专利领域呈现出四个特点:第一,我国创新主体开展专利布局时间较晚,但是专利申请量呈现快速增长态势;第二,中美两国是重要的市场和技术原创国家,中国偏重于国内布局,美国多边布局态势明显,区块链技术申请人分布较为分散,初创公司较多,没有明显专利壁垒以及行业领军企业;第三,针对业内非常关注的区块链的安全性、同步效率问题,我国已探索解决方案并形成一批核心专利;第四,区块链技术应用前景广阔,但部分技术难题仍悬而未决,亟需突破。[2020/1/19]

Bancor 引入了连接代币 BNT 的概念,它连接到所有具有不同连接权重的代币,对应不同决定价格的联合曲线。

Uniswap 的无常损失计算:

Uniswap 使用恒定乘积做市商 (CPMM) 来决定价格。在我们深入研究 Uniswap V2 和 V3 使用的算法之前,让我们先了解什么是无常损失 (IL) 以及如何计算它。

恒定乘积做市商 (CPMM)

Constant Product Market Maker

强制要求两种资产储备量的乘积必须始终保持不变 x*y=k

https://ethresear.ch/t/improving-front-running-resistance-of-x-y-k-market-makers/1281

Impermanent Loss

是指资金在流动性池中面临的损失。

https://finematics.com/impermanent-loss-explained/

如果 AMM 函数是凸的(注:价格随着我们买入而增加 / 价格随着我们卖出而减少),那么没有交易费用补偿的单笔交易总是会导致流动性提供者赔钱。假设一笔交易导致 AMM 函数从点 1 移动到点 2。点 1 和点 2 的现货价格(函数导数的绝对值)是 P1 和 P2。P3 为实际交易价格。由于凸函数的性质,P1 > P3 > P2。无常损失定义为交易后池中流动性提供者代币的当前价值与流动性提供者的代币当前价值之间的差值,如果他只是持有他的代币而不将它们用于流动性提供,则表示为V 和 Vheld。为方便起见,无常损失和价格将以代币 Y 表示(1 个代币 Y 的价格为单位 1)。经过一些简单的推导,很容易证明无常损失总是小于零(x2 > x1,P2 < P3)。

动态 | 2019年区块链十大事件盘点:1:中国拥抱区块链

2019年10月24日,中央局第十八次集体学习时强调,区块链技术的集成应用在新的技术革新和产业变革中起着重要作用。

2:央行数字货币试点

2014年中国央行开始研究法定数字货币(DCEP)。DCEP的完整字面意思就是数字货币电子支付。

3:Facebook发布Libra计划

2019年6月,Facebook发布Libra白皮书,Libra的使命是建立一套简单的、无国界的货币和为数十亿人服务的金融基础设施。

4:去中心化金融DeFi

去中心化金融(DeFi),解决传统金融行业中的痛点,被称作DeFi 是加密史上第二个突破。

5:IEO开始流行

IEO是ICO之后,币圈诞生的一种新筹集资金方式,项目方依托交易所进行资金筹集。

6:Bakkt 推出比特币期货

2019年9月23日, 号称币圈牛市的发动机的Bakkt上线。

7:嘉楠科技上市

美国东部时间11月21日嘉楠科技正式上市纳斯达克,IPO发行价最终锁定在每股9美元,总计募资9000万美元。

8:模式币走红币圈

模式币,使用类似模式的币种,通过拉人头、分红、合伙人等等推广营销模式,配合资金控盘,来吸引散户进场接盘。

9:以太坊伊斯坦布尔升级

以太坊网络在2019年12月8日, 9,069,000区块高度完成升级,代号:伊斯坦布尔(Istanbul)。

10:吴忌寒詹克团之争

吴忌寒夺权:10月29日全球最大的矿机生产商之一的比特大陆创始人吴忌寒以比特大陆集团董事会主席、北京比特大陆科技有限公司法定代表人、执行董事的身份,向全体员工发送邮件,宣布解除詹克团在比特大陆的一切职务,即刻生效。[2019/12/23]

Uniswap3 V2 使用一个简单但功能强大的公式来确定交易。池代币储备数量的乘积是一个常数。与 Bancor 相比,它摆脱了连接代币的依赖。交易完全由流动性池中的代币数量决定。

Uniswap V2 Core

https://uniswap.org/whitepaper.pdf

由于此函数的性质,池中两个代币的价值将始终相同(我们在本文中使用的价格将始终是相对价格)。

使用相同的逻辑,不难计算 Uniswap V2中单笔无手续费的无常损失。假设交易将价格从P更改为Pk。以百分比衡量的无常损失可以单独表示为k的函数。

动态 | 中国日报网盘点2019年10月新闻热词汇总,区块链包含在内:11月1日,中国日报网盘点2019年10月新闻热词汇总,其中包括区块链技术应用。据悉,中共中央局10月24日下午就区块链技术发展现状和趋势进行第十八次集体学习。中共中央总书记在主持学习时强调,区块链技术的集成应用在新的技术革新和产业变革中起着重要作用,要加快推动区块链技术和产业创新发展。[2019/11/1]

毫不奇怪,这个函数总是小于或等于零,正如我们从上面没有费用的无常损失图中可以看出的。如果在对数空间中绘制横轴,则 IL(k) 将是对称的。结论是:相对价格变化越大,无常损失就越大。这可以解释为流动性提供者的更有价值的代币从池中被买出,留给他们更多价值较低的代币。

当价格变动在2ρ之间时的正向收益:

接下来,让我们看看如果我们添加交易费用,IL(k) 会如何表现:

导出的无常损失函数 IL(k, ρ) 看起来与无费用的无常损失函数非常相似。我们可以通过将ρ设置为零来进行合理性验证,得出相同的结果。典型的 Uniswap V2 费用百分比为ρ= 0.3%。在绘制无常损失函数时,我们可以看到在大约k= 0.994 到 1(大约 2ρ跨度)之间有一个高于零的部分。在该地区,无常损失是正的,这意味着流动性提供者实际上获得了价值(在该地区赚取的交易费用优于损失)。通过引入交易费,当价格在一定范围内波动时,流动性提供者将获得正收益。

当价格变动更加波动时,流动性提供者似乎总是会出现亏损。然而,实际情况并非如此。我们知道 Dave White4(注:Paradim风险投资基金研究员)等人解决了这个难题。遗憾的是,它超出了这篇介绍性论文的范围。我们打算在未来进一步研究这个问题。

动态 | 证券日报发布2018年区块链行业焦点盘点:证券日报发布《2018年区块链行业焦点盘点:乱象频发币圈狼藉监管筑篱》文章称,很多人将此轮区块链热潮与20年前的互联网泡沫相比。可以确定的是,区块链“泡沫”一定有,但区块链能否如互联网般改造世界,尚难下定论。监管部门去年以来重拳出击,规范资本市场“炒链”行为,严厉惩治ICO。从中央到地方,掀起防范以“区块链”名义进行非法集资的高潮,不断给区块链“排瘦身”。而瘦身后的区块链也正逐步回归理性——币圈萧条,市场开始重新审视以比特币为代表的加密数字货币的价值与意义;去芜存菁,越来越多的企业沉下心转向技术应用开发;人才成本也挤出“泡沫”,回归同行业正常水平。[2019/1/4]

Dave White4

Uniswap’s Financial Alchemy

https://research.paradigm.xyz/uniswaps-alchemy

至于其他流行的 AMM 算法(包括 Uniswap V3)的无常损失推导,我们向读者推荐Jiahua Xu?等人的这篇论文。这些推导将是下一次的主题。

SoK: Decentralized Exchanges (DEX) with Automated Market Maker (AMM) protocols

https://arxiv.org/abs/2103.12732

优点:第一个用池中代币数量的凸函数来确定价格。

缺点:流动性供应均匀分布于所有价格范围,这意味着资本效率较低。

流动性分布、流动性注入、Uniswap V3 范围订单:

为了提高流动性效用并降低无常损失风险,Uniswap? V3 允许用户仅在特定价格范围内提供流动性。

Uniswap V3 Core

https://uniswap.org/whitepaper-v3.pdf

From Uniswap V3 whitepaper

这是通过对 Uniswap V2 函数进行平移来实现的:

将函数向下平移a点的y值,向左平移b点的x值,如上图和等式所示,确保a 和b之间的有效交易结果,就像我们使用绿色曲线作为我们的价格决定函数。当价格超出此范围时,其中一个代币储备将被售罄,从而有效地将流动性集中到此价格范围内。

Dan Robinson? (注:Paradim风险投资基金研究员主管)发表了一篇关于计算多个 AMM 的流动性分布的优秀论文。

Uniswap V3: The Universal AMM

https://www.paradigm.xyz/2021/06/uniswap-v3-the-universal-amm/

也可以简单地证明,两个流动性提供者在同一价格范围内的流动性可以简单地加在一起。

在存入流动性时,如上所示,Uniswap V3中每个资产的价值不一定相等。只有当P等于Pa和 Pb 的几何平均值时,每个资产的价值才相等。当P小于几何平均值时,资产X的价值大于资产Y的价值。当P大于几何平均值时,资产X的价值小于资产Y的价值。

当当前价格完全超出流动性提供者设定的价格区间时,Uniswap V3将流动性提供者的输入算作范围订单(Range Order),只允许其存入一种代币(类型取决于价格区间是否完全高于或低于当前价格)。例如,考虑一个由 ETH 和 Dai 组成的流动性池。如果设定的价格区间完全高于 ETH 的当前价格,则只允许用户存入 ETH。如果价格区间完全低于 ETH 的当前价格,则只允许用户存入 Dai。当价格完全越过流动性提供者设定的价格区间时,他存入的资产将全部转换为另一种的代币。由于用户只能存入一种代币,范围订单只能实现传统限价订单中四分之二的订单(获利订单、买入限价订单)。另一方面,买入止损订单和止损订单无法实现。截至目前,我们不知道限制范围订单代币类型的目的是什么。

Range?Orders

本质上并不是真正的订单,而是 LP 向资金池某个特定价格点提供的聚合流动性。虽然不是真正的订单,但「范围订单」所表现出的特性,却很好地模拟了限价单的基本功能。

https://docs.uniswap.org/protocol/concepts/V3-overview/range-orders

优点:Uniswap V3 引入了流动性分布的概念,允许其用户在价格范围内存入流动性。通过集中流动性,提高资本效率。当存入相同价值的资产时,可以获得更高的流动性和更低的滑点。在某个价格范围内提供流动性也在某种程度上降低了无常损失的风险。

缺点:用户在进行范围订单时只能存入某些类型的代币。因此无法实现买入止损订单和止损订单。

Uniswap V2 和 V3 在其 AMM 算法中引入了 CPMM 和流动性分布。提供价格范围内的流动性本质上使 Uniswap V3 成为一个通用的 AMM,能够通过改变其流动性分布成为任何可能的 AMM。

Balancer 的做市函数和交易公式:

Balancer? 将 Uniswap V2 的 双代币池扩展到多代币池。Balancer 池中每种资产的价值都持有一个不变的权重,加起来为 1。不难证明,这相当于每种资产的储备数量的幂乘积是一个常数。资产 n 相对于资产 t 的价格也可以导出为资产 t 和 n 的储备数量之间的比率,通过它们的权重进行归一化。

A non-custodial portfolio manager, liquidity provider, and price sensor

https://balancer.fi/whitepaper.pdf

基于常数不变式,我们可以求导出有不同输入值的交易公式(资产 o 和资产 i 之间的交易)。在这种记法标准中,资产 o 始终是买出的资产。资产 i 是卖出的资产。A 和 B 是打入/接收的代币和当前的代币储备数量。我们还可以根据价格的变化计算打入的代币或买出的代币数量。

智能订单路由(SOR)算法:

Balancer 还引入了智能订单路由(SOR?) 算法。

Smart Order Router V2

https://docs.balancer.fi/developers/smart-order-router

来源:https://docs.balancer.fi/v/v1/smart-contracts/sor/

该算法的总体思路是将一个订单分成几个小块在不同的Balancer池中进行交易,以获得更好的交易结果。假设我们要在代币池1和代币池2进行交易,如果我们要交易的总金额N低于上图中的A,我们将只在代币池1进行交易,因为代币池1的价格总是比代币池2价格好。如果总金额超过A,我们将部分订单在代币池1中交易,部分在代币池2中交易。在每个代币池中交易的数量将使每个池中的价格相等(B + C = N)。

很容易证明最优策略总是使每个池中的价格相等的策略(如果价格不相等,我们总是可以找到一个价格更好的池来改善我们的交易结果)。

价格函数,相对于交易量,通常是一个非线性函数。Balancer 将价格函数简化为线性函数。如果有n个代币池,最优策略可以表示为:

如果存在一个价格函数总是大于或小于范围 (0, N) 的其余价格函数,则应从上述计算中删除该价格函数和相应的池,以确保结果有效。如果价格函数总是较小,那么显然的最佳策略将是在该池中交换所有代币。

在这个计算中,不用考虑gas费用。实际上,最优策略应该是在路由收益和gas费用损失之间保持平衡。

SOR 算法,我们相信可以在更广泛的背景下使用。例如,价格函数可以是其他 AMM 协议池的函数。由于我们目前知识的限制,我们不确定实际的 AMM 聚合器是否使用相同的逻辑来实现更好的价格。没有任何价格函数近似的更通用的解决方案将在本文后面讨论。

优点:Balancer 将 2 个代币池推广到多个代币池,并引入 SOR 算法为其用户实现更好的价格。

缺点:“流动性池的强度取决于其最弱的资产。” 一个池中的代币类型越多,风险就越高。

Balancer 是一种多代币投资组合管理工具,允许灵活的代币价值分配,具有价格优化算法。

由于本论文过长,Curve的讨论及后续内容将于中篇和下篇 公布。

原文链接:https://link.medium.com/ynEydZUihjb? ? ??

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

大币网

[0:0ms0-4:761ms