本文将从NFT交易市场的主流模式出发,通过还原Uniswap的经典恒积公式,来深入解说SudoSwap的独特定价函数以及功能细节,最终从各点优缺来点评对交易市场发展的价值
一、NFT交易市场的主流模式
纵观下来,其实实现成交不复杂,但每个环节上链非常不利于NFT核心的流动性问题,作为买方在卖家确定是否售卖之前就得锁入资金,不限制等待期的情况让punk的合约日常锁定了6400个ETH
所以作为早期市场,Punk的机制探索有全环上链的高度信任优势,也有限于流动性与定价的劣势
此类平台要说其劣势,首要的是中心化程度太高,几乎都需要用户将NFT授权给平台的合约,甚至像X2Y2这种代码充斥大量代理升级的设置,完全有瞬间变卖跑路的能力
其次定价的合理性还是来源于当前的关注度,对长尾NFT项目而言似乎总处于死亡螺旋中,开启初期太依赖于项目方会不会来事,否则可能连白名单mint都会一级发售不完。而近期较火热的free mint反而是对市场信心低迷的表现
下图为截止8.20号SudoSwap的核心数据表现
二、如何理解AMM机制
如下图左侧,我想做LP(流动性提供者),那同时得给出希望构成交易对的Atoken和Btoken转入合约,每当流动性存入池中时,都会铸造出流动性代币给我(LP),获得量的计算方式依据提供的量占总池子量比例,这些代币就代表LP对资金池的贡献,LP可以获取到别人交易过程0.03%作为手续费分红
《Uniswap的流动性池构建机制图》
2.3、兑换阶段
这时由于整个系统的Token池子总量变化了,导致新的兑换率变化成3.015
《Uniswap的交易对购买机制图》
笔者非常喜欢这种逻辑,让套利者帮系统变得更好且能盈利,可拓展阅读:
三、SudoSwap的AMM机制原理
其计算公式由于NFT不可分割,所以不能直接以k=X*Y计量(否则必然有一方剩余),所以SudoSwap设计了SudoAMM,提供了线性和指数两种定价函数
假设 delta 值是 0.1,意味着每次买入(或卖出)都会将价格加上(或者减去)0.1 ETH。
平时(1E)→买入(1.1E)→买入(1.2E)→卖出(1.1E),由此类推
// 线性函数是累加制function getBuyInfo(uint128 delta,**若干参数){// 新价格是,每件购买的商品的现货价格 加上 delta uint256 newSpotPrice_ = spotPrice + delta * numItems; **若干代码**}
假设 delta 值是 1.1,意味着每次买入(或卖出)都会将价格乘以(或者除以)1.1倍。
平时(1E)→买入4次(1.46E)→卖出3次(1.1E)→卖出3次(0.75E),由此类推
// 指数函数是累乘制function getBuyInfo(uint128 delta,**若干参数){// 新价格是,每件购买的商品的现货价格 乘以 delta uint256 newSpotPrice_ = uint256(spotPrice).fmul( deltaPowN, FixedPointMathLib.WAD ); } **若干代码**
创建流动性池使用的是LSSVMPairFactory.sol 程序中的createPairETH 函数方法,非常夸张的是,对比uniswap他可以设置的核心参数很多,执行创建会采用EIP-1167 的标准,也部署一个mini proxy合约,可以说即有独立合约的安全性(资产存于新部署的合约地址),LP有超级管理员权限,对定价函数,增量阈值,初始费用,全局手续费均可以控制
function createPairETH( IERC721 _nft, ICurve _bondingCurve,// 对 NFT 定价的联合曲线 address payable _assetRecipient, LSSVMPair.PoolType _poolType, uint128 _delta,// 定价曲线使用的增量值。 uint96 _fee,// 在每笔交易中收取的手续费 uint128 _spotPrice,// 初始销售现货的价格 uint256[] calldata _initialNFTIDs) external payable returns (LSSVMPairETH pair) {
问题1:同时购买多个怎么算?会则逐个结算(按线性算)
(买入现货价格) + (买入现货价格 + 1delta) + (买入现货价格 + 2delta) + ... + (买入现货价格 + (n-1)delta),所以这等于是 n(买入现货价格) + (delta)(n(n-1))/2
问题2:买的NFT是哪个?会由用户指定的池子中的任意NFT
swapList
要交易的token列表以及要对应购买的 NFT ID。Recipient
将接收未使用的 ETH 输入的地址nftRecipient
接收 NFT 输出的地址deadline
时间戳,超时则订单不执行四、总结-SudoSwap的亮点
Sudoswap 有强大的「即时定价」优势,市场撮合瞬间定价,通过套利者寻找合适价格。回忆下 Uniswap 的崛起历史,就是因为作为它新物种解决了中小项目方发币的难题,实现农村包围城市成为龙头。
对于长尾的NFT中会有奇效,如今NFT只有2大种蓝筹和其他,对于punk、猴子、azuki而言流动性不是核心问题,原因在前文punk部分解释了。对于“其他”,则稀有度的差分其实并不大,反而极度依赖流动性,定价的快捷优势+官方池的推出,基本等同于股票回购机制,帮助项目方会做事。
诶,并不是AMM机制,而是LP机制反而让我惊喜,AMM让卖家可以立马卖出获得即时流动性,而LP 完全掌控资金池的定价(从价格函数到 delta 值都可自定义,而且还可以随时调整参数)。这像什么?摆摊开店呀,是平台化而非大商超,项目方自己不仅可以有交易场地,更有控制的能力,不是opensea那种读链上地址从而中心撮合,项目方自己可以依据项目发展周期,控制是否回购,涨跌价幅度,意味着权利回归用户,在机制上与收费上(项目方也算用户)。而Lp的收入也能顶替版税,为项目方带来多元化收入平衡按手续费排序:Punk(0%) < SudoSwap ≤ X2Y2(0.5%) < Looksrare(2%) < OS(2.5%)
最终
通过梳理本文逻辑,确实,sudoswap的异军突起是有一定市场价值的其AMM机制引入NFT做市商天然的可以用金融的玩法来量化套利,只要流动性池子大了后随买随卖便能为NFT的价格形成支撑,进一步延伸到NFT租赁借贷等场景,立足于帮助长尾项目成功,高度吻合当年Uniswap的发家史,未来有可能成长为一个真正的协议。但是,其sudoswap也失去了稀有度的差异,同一系列的 NFT 的价值都是趋同的,NFT 又演变成了另一种意义上的 FT,因此,sudoswap也场景有局限,只能适用于部分偏长尾的项目,或者同质化较高的应用型NFT。
看~~同质化高、长尾、数量众多,是不是每一个词都完全匹配Gamefi中的NFT?没错,好的游戏生态里屠龙刀是必要的,而树枝长剑也是必要的。笔者认为完全上链的sudoswap虽然只支持721,但未来将会是众多GameFi或者创作者经济中优质交易市场模型。易于项目方做事,易于创作者传播,更易于低价高数量的商品通过AMM寻找到合理价格。
来源:十四君
作者:十四君