不存在所谓“唯一”的价格
问比特币值多少钱,诚实的回答会反问一句:在哪里?每个交易所都有自己的订单簿,撮合自己的买家和卖家。这些订单簿通过套利互相关联,但从不完全一致,所以在任意时刻,同一资产在不同地方的交易价格都会有细微差异。
大多数时候,各平台之间的价差小到可以忽略。而真正重要的恰恰是那些不能忽略的时刻:一次突然的行情波动、一个流动性稀薄的平台、一个出现技术故障、打出无人认可的成交价的交易所。只读取单一平台数据的结算,会继承该平台所有糟糕的瞬间。
所以对任何以价格结算的东西来说,真正的问题不是“这个价格对不对”——因为根本不存在唯一正确的价格——而是“这个东西读取的是哪种价格构造方式,谁能够影响它”。
预言机实际上做了什么
预言机是把众多互相矛盾的报价转化为一个公开发布数字的机制。最简单的做法是取平均值,而这恰恰是个错误:平均值容易被异常值拉偏,一个平台打出一个荒谬的报价就能拖动所有人的结果。
标准做法则使用中位数,通常按成交量加权。中位数不在乎异常值有多极端,只计算有多少来源达成一致——所以一个出问题的平台不会带来任何影响,攻击者必须操控多数信息源,而不只是其中一个。正是这一个选择,让预言机具备了大部分的稳健性。
- 多个独立来源,这样就没有哪个平台是承重墙。
- 中位数而非平均值,这样异常值会被投票否决,而不是被平均进去。
- 成交量加权,这样稀薄的市场无法比深度市场说话更响。
- 独立的报告方,这样聚合过程本身也不是任何人都能操纵的单一机器。
- 公开可查的记录,这样这个数字事后可以被核实,而不是只能靠信任。
最后这一点是玩家最应该关心的,却也是讨论最少的一点。一个事后可查的数据源,是可以被审计的。而一个庄家只对自己报价的数字,不是价格,而是一种说辞。
这决定了一场投注是否公平
一款以价格结算的游戏,恰好有一个地方可能被庄家在无人察觉的情况下作弊:它用来结算的那个价格。不是公开的赔付表,也不是清晰可见的规则——而是那个数字。
想想一个不诚实的做市方能用自报价格做什么。它不需要撒很大的谎。只需万分之一,只在结算那一刻,只朝对自己有利的方向——而在高杠杆下,万分之一就足以吞噬整个仓位。这种操纵在任何单一案例中都不会被察觉,累积起来却是毁灭性的。
这就是为什么真正有意义的承诺不是“我们的价格是准确的”,而是一种结构性的承诺:图表所画的数字,和结算所读取的数字,是同一个公开发布的数字,而且这个数字不是我们能挑选的。展示和结算来自同一个数据源,消除了做手脚的空间。
引擎已验证在我们的平台上,图表、开仓、强平和平仓都读取由同一个公开发布数据源提供的同一个tick缓冲区。表头价格取自图表绘制所用的同一份公开市场数据,因此两者不可能出现偏差,而一个过旧、不可信的tick会同时阻止成交和强平。
该向任何以价格结算的平台提出哪些问题
你不需要审计预言机就能做个谨慎的玩家。你只需要问四个问题,并留意这些答案是否真的存在。
| 提问 | 一个不好的信号 |
|---|---|
| 哪个报价源决定我的持仓结算? | “我们内部的价格”——一种其他任何人都无法核实的构造 |
| 图表和结算用的是同一个来源吗? | 两个不同的数字,或者不愿正面回答 |
| 报价源中断时会发生什么? | 没有公开政策,视具体情况而定 |
| 我能自己独立查到这个价格吗? | 一个只存在于他们屏幕上、别处都找不到的报价源 |
这些都不能让杠杆仓位变得“安全”——赔率就是赔率,在 ×1000 杠杆下,千分之一的波动就能让你出局。它能让仓位变得*诚实*,这是一个不同的、也更优先的问题。
遊我们的团队如何进行结算
图表、成交价和爆仓价都使用同一个公开报价源BTC ×1000 →
常见问题
为什么不同交易所显示的比特币价格不一样?
每个交易所都运行着自己的订单簿,有自己的买家和卖家。套利会让它们保持接近,但永远不会完全一致,而且在市场波动最剧烈的时候,差距反而会拉大。
为什么预言机用中位数而不是平均数?
平均数容易被极端值拉偏,所以一个出问题或被操纵的平台就能左右结果。而中位数只统计有多少个来源意见一致,因此攻击者必须操纵多数来源,而不是单一报价源。
赌场能操纵杠杆投注的结算价格吗?
如果它自己报价,那就有可能,而且在高杠杆下只需要千分之几的偏差就够了。这正是为什么关键问题在于:结算是否读取了一个独立公开发布的报价源——一个你自己也能查到的报价源。
是什么阻止了过期价格被用于结算?
一条新鲜度规则。在我们的系统中,超过新鲜度窗口的报价根本不被视为有效价格:在新的实时报价到来之前,它会同时阻止成交和强平。
来源与参考
- Betkyo 引擎来源:CryptoProEngine 的 strictPrice() 以及图表、成交和强平共用的 tick 缓冲区
本文涉及的游戏