UniswapOracle
这次聊聊Uniswap的预言机,上次我们介绍的Chainlink属于通用预言机。
在Uniswap项目中,内置了一个预言机功能,算是专用吧,具有一定的特殊性。
Uniswap
Uniswap最近一年非常的火热,算是Defi的基石项目了。随着其V3版本的发布,
会吸引越来越多的做市商。这里介绍一个Blog。可以作为Uniswap的入门资料。
Uniswap的Oracle
之前讲的Chainlink的预言机,使用者大多关注当前价格,少量场景也需要历史价格。
Uniswap的Oracle是提供时间加权平均价,并且可以随意指定周期。设计出这样的Oracle,
主要是为了抵御价格操纵闪电贷之类的攻击。在目前的Defi项目中,这类需求还是比较普遍的。
我个人觉得Uniswap的Oracle时间加权思路是不错的,但不适合普及使用。比如标的非常有限、
存储数据的精度问题等等。但是提供的按照时间二分查找的功能是Chainlink所缺少的。
通用化EMA指标预言机
在清算类的业务中,一般使用指数类的价格,比如MA、EMA。期货合约的清算逻辑,
用来计算是否强制平仓的价格,就不会使用现货的当前价格,一般是EMA(5min)之类的。
主要是为了削弱价格剧烈波动导致的连锁爆仓反应。
如果提供一种类似EMA计算的指标价格预言机,我相信会对清算类的业务非常友好。
可以沿用现有预言机的大部分接口,没有数据精度问题,可轻松获取历史轨迹,作为独立
计算存储的合约,不与其他项目绑定,可重复利用现有“共识”预言机的结果,保证准确。
当然这样的方案相对Uniswap的Oracle会缺少一个周期的灵活性,但我个人认为这个不是
十分重要,大多数项目需要的周期都是可以协调的,而且固定。
最后
预言机的话题就告一段落,这个领域也算是刚刚起步,Chainlink也在快速发展中,希望能够
有更开放的社区,可以有更多的协作模式,让开发者参与共建。