NFT 市场新秀 SudoSwap 的 AMM 机制-创新挑战与局限
NFT 交易市场的近期颓势频现,整个市场的流动性大幅降低,而此时 8 月异军突起的 SudoSwap 则凭借一超多强的增长数据,让基于 AMM 机制的交易市场映入大众视野。
基于链上数据分析截至 8.20 日,已有上千种 NFT 项目进驻,涉及 8.5W 个 NFT 的交易完成,累计 2000W 美金的交易量。
本文将从 NFT 交易市场的主流模式出发,通过还原 Uniswap 的经典恒积公式,来深入解说 SudoSwap 的独特定价函数以及功能细节,最终从各点优缺来点评对交易市场发展的价值
「1、NFT 交易市场的主流模式」
对交易市场的运作模型的分类依据 3 个核心方面:如何发布、如何竞价、哪里撮合成交
对此 3 方面的不同实现导致了其流量来源、运作成本、市场受众对象的差异
「1.1、类 Punk 的内置市场」
大名鼎鼎的 CRYPTOPUNKS(加密朋克),其实内置了一个交易市场,集合了链上发布、链上竞价、链上成单的各类机制,均在短短 230 行的合约内实现详情可见:【合约解读】CryptoPunk 世界上最早的去中心化 NFT 交易市场
同样有项目内置的市场的项目还有:StepN、Axie Infinity、NBA Top Shot 等等
纵观下来,其实实现成交不复杂,但每个环节上链非常不利于 NFT 核心的流动性问题,作为买方在卖家确定是否售卖之前就得锁入资金,不限制等待期的情况让 punk 的合约日常锁定了 6400 个 ETH
而一个独有艺术品应该被怎样的价格销售的定价问题,是需要合理的公开拍卖机制来协助撮合,每次出价先付 gas 的模式只能说在高净值的 Punk 里还能忽略,长尾 NFT 只能望尘莫及
顶级蓝筹可能并不需要直接的交易流动性,因为大部分的忠实长期 Holder,想必未来顶级蓝筹将会逐渐成为金融附属品,应用在借贷、租赁等市场,交易市场上可能是有价无市,无人挂单的情况。可拓展阅读:
【源码解读】以太坊新标准 EIP-4907 是怎样实现 NFT 租赁的?
所以作为早期市场,Punk 的机制探索有全环上链的高度信任优势,也有限于流动性与定价的劣势
「1.2、类 OpneSea、X2Y2 的第三方市场」
此类市场均为目前按交易总值计算下的龙头,整体运作模式则是链下发布与撮合定价,链上成单
多种多样的拍卖机制让价格的合理性得到评估,而 Opensea 的新协议 Seaport 堪称是时代最强合约设计之一,通过大量汇编优化将 gas 成本降低 30%,且各种订单模式的灵活性拉满,在 Seaport 开源开放的情况下,非常利于各类垂类项目(gamefi,创作版权等等)将交易能力内置
此类平台要说其劣势,首要的是中心化程度太高,几乎都需要用户将 NFT 授权给平台的合约,甚至像 X2Y2 这种代码充斥大量代理升级的设置,完全有瞬间变卖跑路的能力
其次定价的合理性还是来源于当前的关注度,对长尾 NFT 项目而言似乎总处于死亡螺旋中,开启初期太依赖于项目方会不会来事,否则可能连白名单 mint 都会一级发售不完。而近期较火热的 free mint 反而是对市场信心低迷的表现
「1.3、小结」
在 SudoSwap 之前,似乎 NFT 注定就不易流通,只能借助于平台庞大的规模来实现点对点的交易,在这样的情况下
突破口一是更有使用场景的 NFT,可以从提供基础的应用价值来支撑市场价格。可拓展阅读:NFT 租赁提案 EIP-5006 步入最后审核!让海外大型游戏的链改成为可能
其次是 SudoSwap 通过称为“官方池”的 Based Ghouls Pool ,也为长尾 NFT 项目带来方便“做事”的工具平台
为何他能帮助长尾实现农村包围城市,拼多多大战淘宝 ?让我们从实现机制进一步拆分其发布、定价、成交来分析
下图为截止 8.20 号 SudoSwap 的核心数据表现
「2、如何理解 AMM 机制」
同样是发布、竞价、成交 3 大维度,SudoSwap 是链上发布,链上依据 AMM 机制定价,链上成交,有较高的去中心化程度,卖给谁、多少钱由市场说了算
SudoSwap 的 AMM 机制其实并不复杂,雷同于 Uniswap AMM V3 ,其 k=x*y 的恒积函数一直是笔者认为的 Defi 中最优美的曲线
**2.****1、简述 Uniswap 机制**
在 Uniswap 任何人均可以创建一个流动性池,任由大家注入流动性,帮助成交的同时也赚取 LP 收益
每一笔交易都将改变下一笔兑换的价格,因此还有滑点的设计意为能够接受成交价格滑动范围,这点在 FT 的中相对好处理,因为 ERC20token 可以高度分割
咱们通过下图来走一遍 Uniswap 的生命周期,来捋一遍 x*y =k 的公式
「2.2、创建阶段」
如下图左侧,我想做 LP(流动性提供者),那同时得给出希望构成交易对的 Atoken 和 Btoken 转入合约,每当流动性存入池中时,都会铸造出流动性代币给我(LP),获得量的计算方式依据提供的量占总池子量比例,这些代币就代表 LP 对资金池的贡献,LP 可以获取到别人交易过程 0.03%作为手续费分红
《Uniswap 的流动性池构建机制图》
「2.3、兑换阶段」
如下图右侧,构建池后当任一代币被提取(购买)时,必须按”比例”存入(出售)另一个代币,以保持总量的不变,这个比例就是在 K 也等于是 X 和 Y 的兑换率了
K 这个值虽然是理论恒定值,但是每一笔交易都会产生手续费,意味着其实在 tokenAB 的兑换过程 K 都会逐步增加缓慢上升
如下图,当已有 ABtoken 的交易对:Atoken-1200 个,Btoken-400 个则当前兑换率为 3
则我通过向合约内转入 3 个 TokenA,并且额外支付手续费,在兑换后智能合约会给我 TokenB 1 个
这时由于整个系统的 Token 池子总量变化了,导致新的兑换率变化成 3.015
《Uniswap 的交易对购买机制图》
由于价格完全取决于链上合约实时计算逻辑,交易对的价格只能通过交易来改变,因此一旦 Uniswap 价格与外部价格有背离就会创造了套利机会,这种机制确保 Uniswap 价格始终趋向于市场价格。
笔者非常喜欢这种逻辑,让套利者帮系统变得更好且能盈利,可拓展阅读:
一文讲清-DeFI 王者 AAVE 最新的稳定币 GHO 提案
「3、SudoSwap 的 AMM 机制原理」
其实和 UniSwap 类似,SudoAMM 把 NFT 充当为 TokenA,把 ETH 充当为 TokenB,允许用户在 SudoAMM 上对 NFT-ETH 在指定价格内做市。对于买卖双方而言,通过池子可以实现即时买卖的目的。
其计算公式由于 NFT 不可分割,所以不能直接以 k=X*Y 计量(否则必然有一方剩余),所以 SudoSwap 设计了 SudoAMM,提供了线性和指数两种定价函数
「3.1、线性定价函数(Linear Curve)」
在计算曲线程序LinearCurve.sol
中,新价格是依据梯度累加制计算的
假设 delta 值是 0.1,意味着每次买入(或卖出)都会将价格加上(或者减去)0.1 ETH。
平时(1E)→ 买入(1.1E)→ 买入(1.2E)→ 卖出(1.1E),由此类推
-
-
-
// 线性函数是累加制
「3.2、指数定价函数(Exponential Curve)」
在计算曲线程序-ExponentialCurve.sol
中,是依据购买次数来每次累乘增加
假设 delta 值是 1.1,意味着每次买入(或卖出)都会将价格乘以(或者除以)1.1 倍。
平时(1E)→ 买入 4 次(1.46E)→ 卖出 3 次(1.1E)→ 卖出 3 次(0.75E),由此类推
// 指数函数是累乘制
「3.3、创建流动性池的 LP 权利有多大?」
创建流动性池使用的是 LSSVMPairFactory.sol 程序中的 createPairETH 函数方法,非常夸张的是,对比 uniswap 他可以设置的核心参数很多,执行创建会采用 EIP-1167 的标准,也部署一个 mini proxy 合约,可以说即有独立合约的安全性(资产存于新部署的合约地址),LP 有超级管理员权限,对定价函数,增量阈值,初始费用,全局手续费均可以控制
function createPairETH(
问题 1:同时购买多个怎么算?会则逐个结算(按线性算)
(买入现货价格) + (买入现货价格 + 1delta) + (买入现货价格 + 2_delta) + ... + (买入现货价格 + (n-1)_delta),所以这等于是 n(买入现货价格) + (delta)(n(n-1))/2
问题 2:买的 NFT 是哪个?会由用户指定的池子中的任意 NFT
通过对以太坊上合约地址调用方法的审查,可以发现将 ETH 交换 NFT 的操作为:「0x11132000
」
对应合约方法``swapETHForSpecificNFTs
需要 4 个参数
swapList
要交易的 token 列表以及要对应购买的 NFT ID。Recipient
将接收未使用的 ETH 输入的地址nftRecipient
接收 NFT 输出的地址deadline
时间戳,超时则订单不执行
由此可见,稀有度的概念在这被磨平了,因为定价与稀有度无关了。
除了在 AMM 机制外,还有 2 个额外功能或者说是限制
1:每个流动性池只能有一个 LP,多数是项目方自己。
2:限价单功能,用户在存入 NFT 时就可以设定地板价等待成交。
参与者的权利至少不会低于自己理性价格成交,等同于 OpenSea 挂单
「4、总结-SudoSwap 的亮点」
「4.1、从功能出发」
Sudoswap 有强大的「即时定价」优势,市场撮合瞬间定价,通过套利者寻找合适价格。回忆下 Uniswap 的崛起历史,就是因为作为它新物种解决了中小项目方发币的难题,实现农村包围城市成为龙头。
「4.2、从场景出发」
对于长尾的 NFT 中会有奇效,如今 NFT 只有 2 大种蓝筹和其他,对于 punk、猴子、azuki 而言流动性不是核心问题,原因在前文 punk 部分解释了。对于“其他”,则稀有度的差分其实并不大,反而极度依赖流动性,定价的快捷优势+官方池的推出,基本等同于股票回购机制,帮助项目方会做事。
「4.3、从机制出发」
诶,并不是 AMM 机制,而是 LP 机制反而让我惊喜,AMM 让卖家可以立马卖出获得即时流动性,而 LP 完全掌控资金池的定价(从价格函数到 delta 值都可自定义,而且还可以随时调整参数)。
这像什么?摆摊开店呀,是平台化而非大商超,项目方自己不仅可以有交易场地,更有控制的能力,不是 opensea 那种读链上地址从而中心撮合,项目方自己可以依据项目发展周期,控制是否回购,涨跌价幅度,意味着权利回归用户,在机制上与收费上(项目方也算用户)。
而 Lp 的收入也能顶替版税,为项目方带来多元化收入平衡
按手续费排序:Punk(0%) < SudoSwap ≤ X2Y2(0.5%) < Looksrare(2%) < OS(2.5%)
「4.4、从代码出发」
优美的代码,总是让十四这样的技术型行业独立研究者感受舒适,而 sudoswap 代码的设计有了不少优化点,整体实现成交的 GAS 费用属于行业一流水平,单 NFT 购买仅需 14WGAS,多笔成交也优于 os,x2y2 等。
按成交 GAS 排序:Punk < SudoSwap < opensea < GEM < Genie < X2Y2 < Looksrare
项目整体有 2 家审计公司背书,虽然审出一堆风险问题,但几乎不威胁到核心机制。笔者整理了相关资料(源码审计报告)可通过公众号后回复”sudoswap”获取。
「最终」
通过梳理本文逻辑,确实,sudoswap 的异军突起是有一定市场价值的
其 AMM 机制引入 NFT 做市商天然的可以用金融的玩法来量化套利,只要流动性池子大了后随买随卖便能为 NFT 的价格形成支撑,进一步延伸到 NFT 租赁借贷等场景,立足于帮助长尾项目成功,高度吻合当年 Uniswap 的发家史,未来有可能成长为一个真正的协议。
但是,其 sudoswap 也失去了稀有度的差异,同一系列的 NFT 的价值都是趋同的,NFT 又演变成了另一种意义上的 FT,因此,sudoswap 也场景有局限,只能适用于部分偏长尾的项目,或者同质化较高的应用型 NFT。
看~~
同质化高、长尾、数量众多,是不是每一个词都完全匹配 Gamefi 中的 NFT?没错,好的游戏生态里屠龙刀是必要的,而树枝长剑也是必要的。
笔者认为完全上链的 sudoswap 虽然只支持 721,但未来将会是众多 GameFi 或者创作者经济中优质交易市场模型。易于项目方做事,易于创作者传播,更易于低价高数量的商品通过 AMM 寻找到合理价格。
后续笔者将继续研究 OpenSea,X2Y2,Looksrare,Gem 等头部 NFT 市场平台,从合约出发,看其优势与局限性,有兴趣的看官,速速点赞关注,后续跟进吧~
评论区