Solana 上的 DeFi 平台 Mango 昨日因为机制问题,遭受超过 1 亿美元的资产损失,至今尚未提出可行的解决办法。对此事件,FTX 创办人 SBF 在 Twitter 上解释 Mango 遇到的问题,并以 FTX 为例,给出可行的预防措施。
SBF 谈 Mango 遭遇的问题
SBF 在贴文开头先浅谈了 Mango 的保证金机制及预言机问题,其假设有个保证金交易协议的演算法为:初始保证金率 30%,维持保证金率 20%,并利用以下案例进行说明:
根据预言机,XYZ 代币的价格为 0.4 美元,用户 Alice 拥有 5 亿颗 XYZ (价值 2 亿美元),并借出 2,500 万美元。
Alice 帐户净值: 1.75 亿美元、保证金率: 87.5% (1.75/2)。
若想维持保证金率在 30% 以上,则 Alice 仅能再借出 1.15 亿美元。此情况下,Alice 帐户情形则为拥有 5 亿颗 XYZ (价值 2 亿美元),并借出 1.4 亿美元。
Alice 帐户净值: 6,000 万美元、保证金率: 30% (0.6/2)。
SBF 表示这便是 Mango 预言机遇到的状况,明显地 XYZ 就是 MNGO,尽管市场上真的有人购买了足量的 MNGO 使其价格短暂达到 0.4 美元,但其实际价值仅约为 0.04 美元。
然而在此情况下,Alice 却能额外借出钜额资产。而在 MNGO 价格因卖压回落后,尽管 Alice 保证金率迅速跌至 0 %以下,但协议的资产早已大量流出。
在此事件中,SBF 表示问题不全然出自于预言机,因为预言机的确有精准的提供 MNGO 当前价格,只是此价格与公允价格相差甚远。
如何避免此问题
SBF 以 FTX 为例,为了避免类似情形发生,其使用指数加权移动平均 (EWMA) 价格带,来限制价格在 5 分钟内有超过 20% 的波动。
原因如下:
- 如果一项资产的价格在 1 分钟内移动了 3 倍,那么它很可能是来自错误数据,或只是短暂的波动。
- 如果资产的价格能够维持 5 小时,那么这个新的价格有可能为真实的经济价格。
因此 MNGO 价格大幅上涨时,FTX 上的价格并没有上涨如此剧烈 (高点约为 0.07 美元)。
另外,FTX 还使用了 IMF (Initial Margin Fraction) 因子来增加安全性,当用户的仓位越大时,会要求越高的保证金率。
以 MNGO 代币来说,其保证金率的计算公式为:0.00025 * MNGO 颗数的平方根。若想要开启 5 亿颗 MNGO 的仓位,FTX 会要求 500% 的保证金率。
原因在于当仓位越大时,会对市场带来越大影响,尤其在流动性不足的资产。
预言机到底有无出错
最后,SBF 重新谈及预言机的价格问题,到底 0.4 美元的 MNGO 算不算是出错?
SBF 表示,从字面上来看预言机仅告诉了实际的交易价格,在某些交易所也的确也有相应的交易发生,但这里的真正问题在于,是否直接使用预言机的价格资讯。
「预言机告诉了你一切但其实也什么都没有告诉你。」SBF 说道。
虽然预言机反应了过去及当前的市场资讯,但是如何使用这些讯息是风控系统的工作。应该要为其建立一套规则,使其更加谨慎,并在价格剧烈变化时妥善处理问题。
「预言机告诉了你一切但其实也什么都没有告诉你。」SBF 说道。