取引所が自前で構築する理由
代わりの選択肢は他社のオラクルを利用することですが、その構成の故障モードはよく知られています。自分のマーケットの影響を受けた価格を参照する取引所は、一方の歪みがもう一方で強制決済の連鎖になるループを作ってしまいます。 自前で構築すれば、ソース、加重、しきい値のすべてが検証可能かつ調整可能になり、そのどれもが本取引所自身の板を指し返すことはありません。各取引所の気配から1つの数値へ
正規化と建値通貨の換算
各ソースを中央値 ± バンドにクランプ
出来高 · スプレッド · 安定性で加重
取引所ごとに加重の上限をかける
インデックス価格
続く中央値が比較可能な数値の上で取られるように
主要暗号資産1% · ステーブルコイン0.5% · その他3%
安定性は直近の出来高を長期平均と比べるため、1つの取引所での突発的な急増で影響力を買えない
気配がどれだけ良く見えても
入力値であって約定価格ではない。インデックスで約定するものはない
取引所のフィードから1つの数値へ
その手順が潰すもの
除外ではなくクランプします。除外方式では、攻撃者が1つの取引所を引き離すだけでサンプルを減らせ、残ったソースの加重が上がるからです。
外れ値を除外せずクランプするのは意図的な選択です。除外方式では、攻撃者が1つの取引所を引き離すだけでサンプルを減らせてしまい、残ったソースの加重が上がります。クランプ方式なら、全ソースを数え続けたまま、どれか1つが引っ張れる距離だけを制限できます。
品質による加重。ソースは均等にではなく、三つの要素にもとづく加重平均で合成します。
- 出来高。実際の売買代金が大きい取引所ほど多くの情報を持つ
- スプレッド。板が狭いほど確度の高い気配
- 安定性。直近の出来高を長期平均と比較し、1つの取引所での突発的な急増で影響力を買えないようにする
ソースが異常をきたしたとき
三つの防御が常時動いており、それぞれ異なる故障に対応します。
あるソースの加重がゼロになると、残りの加重が比例して引き上げられます。取引所が1つ切断されたからといって、インデックス価格が飛ぶことはありません。
板のクロス、つまり買い気配が売り気配以上になっている状態は、取引可能なマーケットではなく壊れたフィードです。これを受け入れると、故障した取引所が任意の仲値を合成値に注入できてしまいます。
更新頻度と陳腐化
インデックス価格はおよそ3秒ごとに再計算され、コンセンサスの内側で認証されます。したがって、トランザクションが決済に用いる価格は、そのトランザクションをコミットしたのと同じバリデータのクォーラムが署名したものです。認証の仕組みはオラクルを参照してください。 バリデータが署名する前に鮮度をチェックします。古い値は、そのまま提出されるのではなく、提出そのものが行われません。下流では、マーク価格がおよそ10秒より古いインデックス価格をそのブロックでは利用不可とみなし、それなしで処理を進めます。インデックス価格はマーク価格ではない
両者を分けているからこそ、マーク価格はローカルな状況、つまり本取引所での実際のプレミアムやディスカウントを反映しつつ、ローカルな状況だけを映す数値にはならずに済みます。
次に読む
マーク価格
インデックス価格が、ポジションを左右する数値になるまでです。
資金調達率
マーク価格とインデックス価格の差が、どう価格づけされ決済されるのかです。
オラクル
コンセンサスでの認証と、価格の可用性がブロック生成を制約する理由です。
リスク開示
残る価格リスクと、それが生みうる損失です。