/btbjiaoyi/10847.htmlLyra 是一个有自动报价功能(也就是Automated Market Maker, AMM) 的DeFi 选择权协议,透过流动性提供者注入避险所需资金,并且自动提供报价给交易者来进行选择权交易的去中心化选择权交易协议。
跟一般的选择权交易平台不同的是Lyra 并不是订单簿(Orderbook) 的形式,在交易时不需要先有其他交易者放上订单…
但是与现货交易平台如Uniswap 相较起来的挑战是选择权有履约价、到期日以及四种不同类型的交易(Buy Call, Buy Put, Sell Call, Sell Put),一个AMM 系统要如何针对这些不同的参数来有效的提供流动性,这就是Lyra 透过客制化的AMM 所解决的问题。
Lyra 协议有两种参与角色:
- 流动性提供者(Liquidity Provider):提供用于避险的资金,并且于交易中获得交易费分润
- 交易者(Trader):在平台上的交易者,可以买卖看涨选择权(Call Option) 以及看空选择权(Put Option)
当交易者选择了特定的标的资产(Underlying Asset)、到期日与履约价(Strike Price),并且输入所要购买或卖出的选择权时,系统会根据Black-Scholes Model 以及系统设定的参数计算出价格,并且在交易时锁定避险所需的抵押品(或是押金),这些抵押品与押金由流动性提供者的资金提供,并且后续执行避险策略。
接下来我们就从流动性提供者与交易者参与系统时所发生的事情来讲解系统。如果你对选择权没有概念,建议先阅读前导文《选择权简介》来了解选择权。
开始之前:Lyra 是AMM?
Lyra Protocol 在介绍时经常会介绍自己是个AMM (Automated market maker)的系统。这样说并没有错,只是一般说到AMM 时,心里经常会想到x*y=k 或者是类似的模型。但是Lyra 并不是用类似的定价方式。
但Lyra 仍然提供了自动报价机制以及交易后会获得ERC-1155 代币,所以他确实是AMM,只是在研究的时候不要有他是xy=k 的模型的预先假设会比较容易进入状况。
名词定义
在开始前有些名词先定义一下,之后会比较好理解。
Listing
相同标的资产、相同履约价与相同到期日的选择权我们称为一个listing。比如说2021/12/31 到期,履约价为$4500 的ETH 选择权我们称为一个listing;相同到期日但履约价是$5000 的又是另外一个listing。
Board
一群相同到期日的listing 称为Board。比如说2021/12/31 的ETH 选择权,不管履约价多少的Listing,他们都属于同一个board。
Standard Size
一个用来衡量IV (Implied Volatility) 的合约数量称为Standard Size,比如说20 个ETH 选择权合约是一个Standard Size,在衡量IV 的时候都会以20 个ETH 选择权合约数量来做为一个衡量单位,我们在后面计算IV 的章节会用到。
流动性提供者(Liquidity Provider)
流动性提供者在Lyra 的角色是提供避险(Hedge) 所需的资金,并且在选择权交易中赚取手续费,具体如何避险会在后面的章节解释。
在Lyra 中流动性提供是分「回合」的,如果回合已经正在进行中,资金是无法加入跟移除的。但是其实还是可以入金,只是资金在下个回合才会正式启用,到时候才会开始收到交易手续费。
如果要移除流动性时同样回合进行中也无法移除,但可以发出一个“Withdraw signal”,在本回合结束之后你的资金就不会再加入下个回合了,当然你在回合结束前都可以随时取消移除流动性。
一般的现货流动性提供因为资产是现货交易,如果要移除只要照着比例移除就可以了,但在Lyra 中资金会用于选择权的抵押品(或押金),而且随着时间变化这些抵押品的价值都会有所不同,如果要做到随时可以离开代表整个池子的未实现损益(Unrealized PnL) 都要计算,实现这样的功能会导致系统比较容易被操纵,所以目前流动性提供是以回合的方式来运行系统。
选择权交易定价
在Lyra 中交易流程可以分成几个阶段:定价、交易、避险,我们这边就照着着个顺序讲解。
定价之中又分成了三个阶段:
中间的选择权定价(Pricing) 方法我们在前一篇《选择权简介》里面有提到选择权有一个常用的定价模型Black-Scholes Model,其中定价会需要以下几个输入参数:Underlying Price, Strike Price, Expiry, Volatility, Risk-free interest rate,欲知详情请阅读前导文。
这些参数里面其实就只有Volatility 是比较难以直接观测,其他都是可观测因素。那在Lyra 中是怎么计算出Volatility 呢?这个时候就要讲第一个步骤“Decide IV”。
Decide IV
IV 会在两个时间点调整:初始化Board 与每次交易时都会调整IV。Lyra 要输入到BS Model 的IV input 是由以下两个参数相乘:
IV Input = Baseline IV * Strike Volatility Ratio
当一个Board 建立的时候会先给定一个baseline IV (以下都简称baseIv)作为IV 调整的起点,这个数值通常由历史波动率得出。而Strike Volatility Ratio (以下都简称skew) 在每一个listing 建立的时候设定。
为什么需要两个参数来计算出IV Input,原因是因为实际上观察市场时,每个不同的履约价的listing 其实会是会形成一个Volatility Smile 的观察结果,也就是履约价越靠近标的资产价格(Underlying Price) 的listing 它的IV 会愈小,履约价远离标的资产价格的listing IV 会愈大。
所以在board 建立时给的baseIv 基本上会套用到同一个board 里面的所有listing,可以想像如果skew 是1.0 的状况baseIv 就会是IV Input。举例来说建立board 时根据历史波动率设定baseIv 为30%,针对Strike Price 为4500, 4400, 4300 分别设定skew 为1.0, 1.1, 1.2 来将初始的IV 设定为符合波动率微笑曲线的百分比。
以上就是初始化board 的时候会设定的基础IV,而每次交易时还会再次调整IV。在交易的时候会先判断此交易是不是买单,比如说buy call/put options 会标记为买单,另外close sell call/put positions 也会归类到买单,在系统里用isBuy 来表示。
我们把情况分成买选择权(不论是看涨或是看空选择权),跟卖选择权两种情形来看。
当交易者买选择权的时候通常是因为认为价格的涨幅(或跌幅)可以让他获利,所以我们可以说他觉得现在的波动率被低估了。反之如果交易者卖选择权,因为卖单主要是赚权利金(Premium),所以他其实是认为波动率被高估了,所以才会想要来卖选择权。
这边都没讨论涨跌的方向影响(也就是履约价跟标的资产现价),因为这个因素其实会在后面的定价模型里面被考虑到,所以这边只需要考虑波动率。
所以每个交易进来之后会根据他是买单或卖单来调整IV。如果是买单代表波动率被低估了,所以要增加波动率,反之则减少波动率。调整的方式是先以Standard Size 来衡量交易大小并且作为baseIv 的调整幅度。接下来再将这个调整幅度乘以系统参数skewAdjustmentFactor 来做为调整skew 的幅度。
系统内用 OptionMarketPricer.ivImpactForTrade() 来调整baseIv 跟skew,这些调整从这次交易就开始套用,往后的交易也都会套用此次的baseIv 跟skew。
Option Pricing
当我们在上个步骤“Decide IV” 求出Volatility 后就满足了Black-Scholes Model 定价的五个参数,所以只要把这五个参数带入即可求出价格:
- Underlying Price: 标的资产的价格,比如说ETH 现在的价格
- Strike Price: 履约价,比如说三个月后约定要结算的价格
- Expiry: 到期日,比如说三个月后
- Volatility: 波动率,价格波动的可能性
- Risk-free interest rate: 无风险利率,在没有任何风险的状况下可以获得的利润
最后的权利金计算
当我们算出这个选择权的定价后,最后Lyra 就可以订定出最后要跟交易者收的权利金费用(Premium),最后收取的费用总共有三个要素决定:
- 选择权的价格:上节计算出的选择权价格乘上一个固定比例
- 标的资产现价:标的资产现价乘上一个固定比例
- 动态费用:根据交易池的vega 风险来决定的动态费用
(1) 与(2) 都是系统定义好的比例,可以透过社群治理变更,而(3) 则是根据vega 的风险程度来决定的动态费用,不过这边太深入了就不再详述。
这三个费用加起来就是要收取的交易费,而这边前面提到的isBuy 又要再拿出来用,当这笔交易是个买单时代表系统要用更多资金去避险,所以这个时候最后权利金的计算会是optionPrice * amount+ fee。如果这是个卖单代表他会减低系统风险,为了激励这样的行为,权利金的计算就会变成扣除交易手续费optionPrice * amount - fee。
而这就是最后会跟交易者收取的权利金(Premium)。当交易完成后,交易者会收到一个ERC1155 的代币作为持有证明。
避险(Hedge)
当交易者在Lyra 买选择权时,Lyra 就会作为对家卖选择权给交易者。
作为卖选择权的角色,不管是卖Call option 或是Put option 都会承担风险,所以Lyra 在卖选择权时会透过Synthetix 进行避险,在卖Call Option 的时候买现货,并且在卖Put Option 时做空标的资产。
比如说交易者买1 ETH Call Option 时,Lyra 会从流动性提供者取得sUSD 资金并且买sETH,而交易者买1 ETH Put Option 时,Lyra 会抵押sUSD,借出sETH 并且在市场上卖掉。关于避险方式可以参考《选择权简介》的「卖方的风险」一节。
当Lyra 执行以上的避险时,结算所需的资金风险就被抵销了,但是这样的避险方式其实是会花比较多资金在避险上面同时也有可能避险不足,如果考虑Delta 的情形就可以解决上述问题,也就是下个章节会讲解的delta hedge。
Delta Hedge
讲Delta Hedge 之前,我们要先讲一下什么是Delta。
Delta 是一个会影响选择权价格的指标,指的是当标的资产上涨1 元时,选择权的价格会如何被影响。比如说一个交易者用100 美金买了2 ETH Call Option,平均一个50 元,而此时ETH 现价为4500 美金。假如说这个选择权的delta 为40 (或标记为0.4),代表当ETH 上涨1 元时,这个选择权的价格会上涨0.4 元,也就是会从50 元变成50.4 元,如果这个时候使用者关闭这个仓位,意思就是卖回这个选择权给Lyra 的AMM,此时价格会变成50.4 元,总价为100.8 元。
如果我们采用原本的全抵押制的避险方法,我们来看考虑Delta 后他的盈亏如何。
这边可以看到当ETH 价格增加1 元时,如果交易者选择关闭仓位把选择权卖回给AMM,此时AMM 会有1.2 元的盈余。但是反过来说,如果ETH 价格减少1 元时,AMM 反而就会有1.2 元的亏损了,会这样是因为过多仓位的避险会让系统的盈亏随着市价价格波动,这样的话系统就有可能造成亏损。
但如果我们考虑了Delta 来调整避险的仓位时,此时就可以形成一个不被市场价格影响的避险。Delta 避险的计算方式也很简单,就是把交易者买的选择权仓位数量乘以delta 就可以了,以上面的例子来说就是2 * 0.4 = 0.8。接下来我们看看如果用这样的数量避险,对于市场价格变化的应对能力如何。
在考虑过delta 在进行的避险仓位,就可以正好抵消标的资产的涨幅,让系统可以在涨跌的状况都保持损益两平,这样就可以说达成了delta neutral。
另外Delta Hedge 是一个动态的过程,随着标的资产价格的涨跌,会需要再次进行重新平衡(Rebalance),而Lyra 也提供了一个带有奖励的触发系统,让外部参与者可以呼叫这个函数来执行Delta Hedge。
智能合约简介
这边针对智能合约重点简介。
- LiquidityPool: 提供流动性提供者出入金的合约,Option Market 会在买卖时锁定LiquidityPool 中避险所需的押金,也跟Synthetix 整合交易避险所需的合成资产
- Optionmarket: 实际跟交易者买卖选择权的AMM 智能合约,交易时会呼叫OptionMarketPricer 计价,也会呼叫LiquidityPool 锁定资金
- OptionToken: 当交易者完成交易后,会收到一个ERC1155 的代币
- ShortCollateral: 当交易者卖选择权给AMM 时,负责管理交易者的抵押品如sETH
- OptionMarketPricer: 计价用的智能合约,包含IV 以及Premium 都在这个模组作为计算入口,实际计算会取用OptionGreekCache 的资讯并且在BlackScholes 合约计算
- OptionGreekCache: Greek 如vega, gamma, delta 等希腊字母参数会储存在这里,因为这些数据会随着市场变化而变化,除了交易会改变这些数值外,也会需要外部参与者执行有奖励的函数来协助更新希腊字母参数
- BlackScholes: 执行Black Scholes Model 计算的智能合约
- PoolHedger: 提供带有奖励的 hedgeDelta() 让外部参与者触发来针对目前的net delta 进行避险,同时也会调用OptionGreekCache 取得参数并且于Synthetix 进行避险所需的交易
Lyra 风险
Lyra 在官方文件中提及了一些目前Lyra 的风险,这边也列给大家参考一下(合约被骇那种就不写了)。
- Trading Cutoff: 交易时有一些限制,比如说合约结束前的二十四小时是不能交易的,另外Lyra 有设定一个Delta 的上下限,超过这个限制时该市场也不能交易,也不能关仓,直到delta 回到上下限内
- Delta Hedge 还没上线!!官方文件花了很多篇幅讲的Delta Hedge 但却因为之前Optimism 的gas limit 问题还没上线,本文撰写的前一周我问了一下,他说他们正在紧锣密鼓地测试中,总之就是还没上线
结论
因为这是我第一个接触的选择权平台,所以暂时也看不出他的问题。但从文件齐全且易懂(从一个没接触选择权的人的角度),dapp frontend 设计的不错,使用流程顺畅跟discord 的问答交流来看,目前感觉起来是个认真的团队。不过目前没有delta hedge 也是个隐忧,希望他们很快就可以就可以将这个功能上线来解决这部分的问题。
本文链接地址:https://www.wwsww.cn/DeFi/10846.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。