Perp需要用oracle去确定mark price,但是在PreIPO以及周末美股的场景下,没有spot price为
@tradexyz 做mark price,那它如何来做价格发现呢?
首先,perp 和 spot 的价格,本质上不是同一种东西。
Spot 是真金白银买资产,价格背后是真实资本愿意持有这个资产的水平;但 perp 交易的是 exposure,是用保证金和杠杆表达预期。杠杆越高,价格越容易被边际情绪、短期资金和流动性结构放大。所以 perp 往往比 spot 更快,但不一定更真。
这也是为什么,在没有外部 spot 的情况下,系统不能简单地说:“perp市场交易到哪里,公允价格就在哪里。” 因为你无法判断:现在的价格,到底是真实共识,还是几个人用高杠杆推出来的局部幻觉。
@tradexyz 的核心设计,其实就是解决这个问题:如何让 perp 在没有 spot 的情况下继续做价格发现,但又不让系统被 perp 情绪牵着走。
官方自己有一句话我觉得说得特别好:“prevent price movements that exceed what may reasonably constitute true price discovery.”
翻译过来其实就是:系统允许利用perp做价格发现, 但不允许价格运动超出“合理价格发现”的范围。所以它整个 oracle 系统,是要把“市场表达”和“系统确认”拆开。
最核心的是它的 ratcheting mechanism —— 棘轮机制,市场当然可以持续给出新的价格预期,但 oracle 不会瞬间跳过去,而是像棘轮一样,一格一格缓慢移动。
具体来说:
- oracle 每次 update 有单次移动上限(约 9.5%)
- mark price 本身还有 ±50bp clamp
- Discovery Bound 被限制在 1/max leverage
- pre-IPO 合约再叠加 30 分钟 EWMA 平滑
- funding 只有正常合约的 1%,避免短期资金费率把价格进一步推向极端
这几个机制组合起来,其实形成了一套“三层缓冲”。
第一层,是市场自由交易;
第二层,是 oracle 缓慢吸收这种交易信号;
第三层,是 Discovery Bound 限制系统一次性能相信多少。
也就是说:市场当然可以认为价格已经变了,但系统只会一点点承认这件事。
这套机制最妙的地方在于,它没有天真地 fully trust perp market。因为在没有 spot 的时候,perp 本质上是一个高杠杆的 expectation layer。而 expectation layer 最大的问题,就是会自反性放大自己。
价格上涨 → 多头盈利 → 杠杆扩大 → 更激进买入 → 价格继续上涨。
如果系统对这种价格瞬间 fully trust,那 mark price 就会直接变成杠杆情绪本身,最后导致连环清算和系统性风险。
所以
@tradexyz 非常创新地设计了这一套机制:让 perp 先表达市场预期,再让系统缓慢、有边界地确认这种预期到底是真是假。
真的是一个非常高级的金融工程,我们行业创新一直都在。