独自快乐|分布式课堂:关于可计算金融应用于Defi预言机的分享( 三 )


现在来看 , 比特币这个结构有点低效:无论在计算、信息存储还是通信方面都做得非常冗余 。 冗余指的是多台计算机重复执行相同的计算 , 并重复存储相同的数据 。 冗余的架构会导致很难完成撮合交易(即资产定价非常困难) , 因为它很难靠函数或者投票来解决 。
独自快乐|分布式课堂:关于可计算金融应用于Defi预言机的分享
文章图片
从市场的角度来看 , 撮合交易是现代经济里信息交互的极致 。 交易并不适合在链上去进行撮合 。 换而言之 , 一旦撮合交易在链上可行了 , 那链下交易所的优势会更大 。 这是一个相对优势的问题 。
撮合交易的微观市场结构究竟有哪几类交易者?第一级叫做内幕交易者 , 二是信息交易者 , 三是做市商 , 四是价值交易者 , 五是噪音交易者 。 这里着重讲一下信息交易者 。 信息交易者指的是 , 拥有者所获取的信息占有优势 , 他每时每刻都要基于自己掌握的信息对这个资产的价格进行折现 。 比如说 , 他每收到新信息 , 就会告诉你这个价格变化是多少 。 这些信息拥有者对于交易的渴望和对计算存储通信的要求都是最极致的 , 而且也是交易所成交量和流动性的主要提供者 。
比如说 , 美国交易所的高频交易者 , 都精确到纳秒级别 , 而且在交易所闭市封盘的情况下 , 也要在外面继续交易 。 因为他们觉得信息不断在变化 , 而自己具备信息优势 , 必须每时每刻对资产进行定价 。 对于这类人 , 具有计算、存储、通信优势的交易所更加适合他们 。 比如说 , 有哪种资产在uniswap上具备价值了 , 也会被移到中心化交易所 , 因为信息交易者要以此获利 , 他们在这里具备更大的优势 , 也更愿意提供更多的交易和流动性 。
假设链下有个价格序列 , 如何在链上形成?
既然定价放在区块链上并没有什么优势 , 我们觉得价格计算应该在链下形成 。 区块链这个系统不是为了让你更有效率 , 而是为了让你更可信 。 假设链下有个价格序列 , 如何在链上生成这个价格序列并保真?
即第一是数据的验证和生成都要去中心化 。
第二是要确保这两个价格不出现偏差 。
第三是生成机制不能被别人影响 。
第四是所有价格序列的生成都会有一个延时 , 除非你每个区块都有价格 , 这里延时是指最新的一个生效价格和调用价格并完成交易的区块间隔 。
在你调用链下数据去链上时 , 首先会有的就是价格偏差 。 而这个偏差就是被链下可复制交易套利的可能性 。 同时延时会间接影响着价格偏差 , 因为不同时间对应的价格必然不同 。 目前Defi的预言机都未就这两点作风险管理 。 其实你在uniswap上操作的时候 , 做市商就承担着价格波动的风险以及被其他人套利的风险 。 问题是这个风险有多大以及做市商收取的费用能不能覆盖这个风险?目前 , 这类预言机的模型还停留在较为粗糙的阶段 。
外部均衡价格的形成是一个NP问题(非多项式时间问题) 。 而Uniswap做的是一个P计算(这类指的是多项式时间问题:给我一个X , 我输出一个Y给你) 。 所以在这种情况下 , 在市场价格波动的时候 , 就一定会被别人套利 。 如果你保证收益能覆盖损失 , 就可以形成一个均衡;然后你还需要保证均衡是稳定的 , 不能因为被扰动就开始偏离 , 就无法覆盖损失 , 否则做市商就撤出了 。
当链下信息上传至链上时 , 肯定会有价格偏差 , 那么如何优化这个价格偏差?因为最小化价格偏差是非常困难的事情 , 于是我们想到价格偏差肯定小于等于套利成本 。 因此NEST预言机的机制包括了双向期权/价格链/Beta系数 。 Beta系数就是为了对抗自成交攻击 , 价格链是指能够让信息流永远存在 , 双向期权是一种报价机制 , 这其中有一个验证周期 , 主要是用来对抗堵塞攻击 , 否则理论上可以尽可能短 , 并收敛到均衡价格 。