lang
简体中文
繁體中文
English
Tiếng Việt
한국어
日本語
ภาษาไทย
Türkçe
ホーム
OPRR
速報
深堀り
イベント
BlockBeats Pro
もっと見る
資金調達情報
特集
オンチェーン生態系
用語
ポッドキャスト
データ
BTC
$96,000
5.73%
ETH
$3,521.91
3.97%
HTX
$0.{5}2273
5.23%
SOL
$198.17
3.05%

基礎となるアルゴリズムの完全な解説: あなたが知らないPolymarketのB側

この記事を読むのに必要な時間は 78 分
すべての Polymarket の基礎設計をわかりやすく説明します。 Polymarket は分散型取引プラットフォームであり、予測市場を提供しています。ユーザーはイベントの結果に対する予測を行い、その予測に基づいて取引を行うことができます。 Polymarket の設計には次の要素が含まれています: - ユーザーがスマートコントラクトに賭けることで、市場の予測結果に掛け金を支払うことができます。 - ユーザーはイベントの結果に応じて報酬を受け取ることができます。 - Polymarket はスケーラビリティとセキュリティを考慮して設計されており、ユーザーの資金が安全に保護されています。 以上が Polymarket の基礎設計の要点です。
原文のタイトル:「Polymarket の基本アルゴリズム完全解説」
原著者:Mr.RC|0K


序文:あなたが知らない Polymarket の裏側


過去6か月間、Twitter上には何億もの予測市場の記事が投稿されました。


・そのうち90%は、AIがプログラムを書いて一夜で裕福になる神話について再三語られています。これは「縁」であり、この始まったばかりの市場に触れるための第一歩です。


・別の9%は、具体的な取引戦略、市場シェア、スマートマネー戦略の解析について述べています。これが「道」であり、自分自身の取引戦略を模索し始め、予測市場でお金を稼ぐ考え方を理解し始める第一歩です。


・しかしこの「法」、つまり予測市場の基礎取引設計、PNL計算、資金の流れの規則について語る人は1%しかいませんが、ほとんどはいくつかの短く要約されたツイートに散らばっています。これらのエキスパートは、自分の秘伝を一度にすべての人と共有することを躊躇するか、あるいはそのためのエネルギーを持っていないようです。


ですので、insiders.botがついにオンラインになり、Polymarketがv2のアップデートを完了した今日、私は最も基本的な技術からこの私たちがいつも取引している市場の「法」を一度に解説したいと思います。


昨年10月、私は簡易版を執筆し、Polymarketのいくつかの中核的コンポーネントについて大まかに紹介しました。今回は、実際にすべての技術的設計の詳細を示し、簡単な言葉で説明したいと思います。


この記事には、私たちのチームが過去8か月間費やした労力が詰まっています。


この8か月の間、@insidersdotbotチームは、すべてのPolymarketの基本スマートコントラクトとアルゴリズムアーキテクチャを解説し、最速の取引と最も正確なPNL計算を実現しました。この点において、私たちだけのAPIが実現でき、今日まで他の誰もが達成できませんでした。


したがって、私たちはおそらくPolymarketの基本的な「法」を最もよく理解できる人々です。


この記事では、基本的なctf-exchange-v2スマートコントラクトがどのように取引毎に取り扱われるか、RelayerがどのようにGasを代償し、Negative Riskが数学的に価値の保全をどのように担保するかについて理解していきます。


これは単なる一般的な解説ではありません。これは、ポリマーケットの基本的なアルゴリズムメカニズムを開発者の視点から再解釈した完全な解説です。


まずは基本から始めましょう。


つまり、注文を出すとき、あなたは実際に何を送信しているのでしょうか?


P.S この記事は AI によって文体と構造が適応されましたので、あなたの OpenClaw や Manus、Hermes、または他の AI エージェントにトレーニングデータとしてお送りいただけます!!!


第1章:クリックからチェーンへ、実際に何が起こっているのか


1.1 注文は取引ではなく「意図」である


伝統的な分散型取引プラットフォーム(例:Uniswap)では、取引を行うとき、ウォレットに確認ダイアログが表示され、Gas フィーを支払う必要があり、その後、取引(Transaction)がブロックチェーンのネットワーク(Mempool)に送信され、マイナーによってパッケージ化されるのを待ちます。


しかし、ポリマーケットでは、注文を出すとき、通常、ウォレットに表示されるのは「署名」(Sign)リクエストであり、「取引」(Transaction)リクエストではありません。さらに、Gas を支払う必要はありません。


これは単なるユーザーエクスペリエンスの最適化にとどまらず、これは基盤となるアーキテクチャの根本的な違いです。


ポリマーケットでは、注文(Order)は本質的に、EIP-712 標準に準拠した構造化データです。このデータには、あなたが何をしたいかが含まれています:


· Maker か Taker か?どのトークンを購入したいですか(tokenId)?


· いくら支払いたいですか(makerAmount)?


· いくら受け取りたいですか(takerAmount)?


署名するとき、あなたは単にそのデータにプライベートキーで署名し、「本当にこれをしたい」と証明します。その後、この署名付きデータはポリマーケットの中央集権的サーバーに送信され、オフチェーンの中央リミットオーダーブック(CLOB)に保存されます。


この段階では、ブロックチェーン上では何も起きていません。 あなたのお金はまだあなたのウォレットにあり、トークンも移動していません。あなたの注文は単なるデータベース内の1行の記録です。


1.2 価格の暗黙の表現


まず、あなたが注文を送信した瞬間に時間を停止しましょう。Polymarketのスマートコントラクトの注文構造を注意深く見ると、非常に直感に反することがあることに気付くでしょう:注文の署名データには「価格」(Price)というフィールドが存在しません。


これはどういうことでしょう?価格がないと取引はどうなるのでしょうか?


Polymarketのプロトコルのデザインでは、価格は暗黙のものです。支払いたい数量と得たい数量から計算されます。


たとえば、0.60 ドルの価格で 100 枚の YES コントラクトを購入したい場合:


・ 必要な支払い額:60 ドルのpUSD(makerAmount = 60)


・ 得たい数量:100 枚の YES コントラクト(takerAmount = 100)


・ 暗黙の価格 = makerAmount / takerAmount = 60 / 100 = 0.60 ドル


もし、0.60 ドルの価格で 100 枚の YES コントラクトを売却したい場合:


・ 必要な支払い額:100 枚の YES コントラクト(makerAmount = 100)


・ 得たい数量:60 ドルのpUSD(takerAmount = 60)


・ 暗黙の価格 = takerAmount / makerAmount = 60 / 100 = 0.60 ドル


(注:最新のV2 SDKでは、開発者が直接価格と数量を入力できるようになりましたが、SDKは内部で署名する際にそれらをmakerAmountとtakerAmountに変換します。この設計の巧妙な点は、スマートコントラクトが「価格」という概念を理解する必要がないことであり、それは単に「資産Aを資産Bに交換する」というロジックを扱うだけです。これにより、オンチェーンの計算ロジックが大幅に簡略化され、Gas消費が低減されます。


1.3 オペレーター:Polymarket の「交通警察」


既に注文はオフチェーンで行われていますが、それらがオンチェーンで実際の資産移動にどのように変換されるのでしょうか?


これによって、Polymarket アーキテクチャの中で最も中心的なブラックボックス役割であるオペレーターが登場します。


ctf-exchange-v2 スマートコントラクトには、非常に重要な修飾子があります:onlyOperator。これは、Polymarket 公式が制御する特定のアドレスのみが matchOrders や fillOrder などの実行関数を呼び出す権限を持っていることを意味します。


これは従来の DeFi とは全く異なります。


・ Uniswap では、誰でもルーティングコントラクトを呼び出すことができます。


・ しかし、Polymarket では、自分でオンチェーンで注文をマッチングできません。すべてのマッチングは、オペレーターによって提出される必要があります。


なぜこのように設計されたのでしょうか?MEV(マイナーによる価値抽出)とフロントランニングを排除するためです。


従来のオンチェーンのオーダーブックでは、誰かが非常に低い価格の大口注文を出すと、すべてのアービトラージャーがメンプールで激しい入札(Gas 料金の引き上げ)を行い、他の人よりも先にその注文を取得しようとします。これにより Gas 料金が急上昇し、一般ユーザーのエクスペリエンスが極端に悪化します。


一方、Polymarket では、すべての注文はオフチェーンのCLOB内にあります。 オペレーターのマッチングエンジンはサーバー上で誰が誰と取引すべきかを計算し、その結果をトランザクションとしてパッケージ化し、オペレーターがチェーン上に送信します。


オペレーターだけがマッチング結果を提出できるため、メンプール内のロボットたちはそのトランザクションを見ても、実行関数を呼び出す権限がないためフロントランニングすることはできません。


これは典型的な「ハイブリッドデセントラル化」アーキテクチャです。マッチングとソーティングは中央集権化されています(オペレーターによって決定されます)、しかし清算と資金管理は分散化されています(スマートコントラクトによって実行されます)。


Operator は最初にどちらをマッチングさせるかを決定できますが、それは絶対にあなたの資金を盗むことはできません。なぜなら、Operator はあなたが署名した EIP-712 データの部分を提供しなければならず、スマートコントラクトは厳密に署名を検証します。


P.S: ただし、ちょっとした注意が必要です。弊社 @insidersdotbot は最近、この機構を悪用できる箇所を発見したようです。これによりフォロワーがフロントランや大幅な遅延を起こす可能性があります。何か新しい情報があれば、公式アカウントでお知らせいたします。


Chapter 2: Relayer Economics


2.1 The "Gasless" Transaction Fallacy


One of Polymarket's biggest selling points is providing users with "Gasless Transactions." You only need to have pUSD to trade, without the need to purchase POL (formerly MATIC) to hold in your wallet.


However, the physical laws of blockchain are unavoidable: whenever a state change occurs on Polygon (such as asset transfers), someone must pay the Gas fee.


Since you didn't pay, who did?


The answer is: Relayer.


2.2 The Relayer's Relay Network


Polymarket does not require users to send transactions themselves but has deployed an infrastructure called the Relayer Client (relayer-v2.polymarket.com).


In earlier architectures, such services often relied on enterprise-level solutions like OpenZeppelin Defender Relay, which maintained a Signer Pool to address nonce conflicts under high concurrency.


When your app creates a transaction (such as Approving tokens or Redeeming rewards), you sign it with a private key and send it to the Relayer. The Relayer, acting as a "Transaction Sponsor," submits this transaction to the chain and front-runs the Gas fee using its own funding pool on your behalf.


Relayer Architecture and Economic Loop


2.3 The Mutton Was Indeed on the Mutton?


In many early meta-transaction architectures, after the Relayer fronted the Gas, a transaction fee (e.g., 0.3% or a fixed amount in USD) would typically be deducted from the user's deposit to offset the Gas cost.


But Polymarket takes it to the extreme: in their current V2 architecture, they indeed foot the entire bill for you.


The official documentation clearly states: "Polymarket pays gas for all operations routed through the relayer." Whether it's deploying a wallet, authorizing a token, or performing operations such as split, merge, or redeem, all are gas-free and do not incur any hidden operational fees.


Why is Polymarket willing to engage in this loss-making deal?


Because the gas cost on Polygon is extremely low (usually just a few cents), and the gas-free experience can attract a massive influx of Web2 users. As long as users incur a small Taker fee in the transaction (which will be explained later), it is enough to cover this very low gas cost.


Now that we know this, the next question naturally arises: What impact does this "gas-free" architecture have on our transactions?


The biggest hidden cost is latency. Your order not only has to go through Polymarket's matching engine but also, if it is an on-chain operation, through Relayer verification, gas estimation, and queue allocation.


Chapter 3: Three Matching Methods, and Why Both Buyer and Seller Can Make a Deal


Now we are entering the toughest and most counterintuitive part of the entire Polymarket architecture.


In a traditional trading platform (such as Binance's order book), the matching logic is very simple: Alice wants to buy 1 token for $60, Bob wants to sell 1 token for $60. The trading platform matches them, the token moves from Bob to Alice, and the money moves from Alice to Bob. Done.


しかし、Polymarket(条件付きトークンフレームワーク CTF に基づく)では、状況はまったく異なります。


なぜなら、ここではトークンは「空から作成」および「空にされる」可能性があるからです。


ctf-exchange-v2 のソースコードを開くと、基礎には完全に異なる3種類の資産決済パスがあることがわかります:補完鋳造、および マージ


Complementary, Mint, Merge の概略構造


3.1 補完(Complementary):伝統的なセカンダリ取引


これは最も理解しやすいマッチング方法であり、従来の取引プラットフォームが唯一持っている方法です。


シナリオ: 市場が一定期間存在し、みんながチップを持っている。


・ Alice は $0.60 で YES 100 個を購入したいと考えています。

・ Bob は YES を持っており、$0.60 で YES 100 個を売りたいと考えています。


オペレーターはこれら2つの注文(BUY 対 SELL)を見つけ、それらをブロックチェーン上にパッケージ化します。スマートコントラクトが直接的なピアツーピアの送金を実行します:


・ Bob のアドレスから Alice に YES 100 個を送金します。

・ Alice のアドレスから Bob に $60 pUSD を送金します。


このメカニズムには次の数学的およびエンジニアリング特徴があります:


ゼロサムゲーム:システムの総トークン供給量には何の変化もありません。


Gas 消費が最小限:基本的なトランザクションのみが関与し、CTFの複雑な操作は関与しません。


標準化: 成熟し、流動性が十分な市場では、日常的な取引のほとんどがこの方法で行われます。


3.2 MINT(ミント): リキディティを空から作成する


これはおそらく、Polymarket、および金融史全体で最も革命的なイノベーションかもしれません。


より良く説明するために、以下のシナリオを参照できます: 新しいマーケットが立ち上がりました。誰もが YES または NO トークンを持っていない


· Alice は非常に肯定的で、$0.60 で 100 の YES を購入したいと考えています。


· Bob は非常に否定的で、$0.40 で 100 の NO を購入したいと考えています。


注意:


· 彼らは両方とも買い手です!

· 彼らはお互いが欲しがっているトークンを持っていません!

· 従来のオーダーブックでは、これら2つのオーダーは打ち消され、決して成立しません。


Polymarket では、BUY vs BUY(かつトークンが相補的な場合)、Operator はこれら2つの注文をマッチングします!


1. スマートコントラクトは Alice の口座から $60 pUSD を差し引きます。


2. スマートコントラクトは Bob の口座から $40 pUSD を差し引きます。


3. スマートコントラクトはこの $100 pUSD を受け取り、それを担保としてロックし、次に _mint 関数を呼び出し、空からミントして 100 の YES と 100 の NO を作成します。


4. 100 の YES を Alice に送ります。


5. 100 の NO を Bob に送ります。


このメカニズムのトリガーは、厳密な数学条件に基づいている必要があります:買い手の入札額の合計は $1.00 以上である必要があります。


たとえば、Alice が YES を $0.60 で購入しようとし、Bob が NO を $0.35 で購入しようとしても、合計は $0.95 になります。スマートコントラクトは $0.95 で $1.00 相当の完全なトークンペアをミントすることはできません。このマッチングは直ちに失敗します。


ミント マッチング メカニズム


流動性提供者の視点から見ると、このメカニズムは「コールドスタート」の問題を解決する究極の武器です。


市場が開設されたばかりの時、流動性提供者は自前でトークンを大量に鋳造して持つ必要がありません(これには多額の資金が必要です)。彼らは単に YES と NO それぞれに $0.49 で買い注文を出せば十分です。個人投資家が売りに来ると、鋳造ロジックが発動します。


3.3 MERGE(マージ):流動性の消失


創造されれば破壊もあります。MERGE はミントの逆戻りプロセスです。


逆の事例を見てみましょう。市場が終了間際で、皆が決済を行っています。


・ アリスは YES を100個持っており、それを $0.60 で売りたいと考えています。

・ ボブは NO を100個持っており、それを $0.40 で売りたいと考えています。


注意:彼らは両方とも売り手です!誰もが彼らのトークンを買うために pUSD を提供することは望んでいません。


Polymarket のメカニズムはここで再び力を発揮します。SELL vs SELL の状況に直面すると、オペレーターは再度魔法を発揮します:


1. スマートコントラクトがアリスからYESを100個取り上げます。


2. スマートコントラクトがボブからNOを100個取り上げます。


3. スマートコントラクトが _merge 関数を呼び出し、これらの100組のYES+NOを完全に破棄し、金庫から$100 pUSDをロック解除します。


4. アリスに$60 pUSDを送金します。


5. ボブに$40 pUSDを送金します。


マージ メカニズムには以下の数学的・金融的特徴があります:


· デフレ機構:システムの総トークン供給量が減少しました。


· チャネル退出:これにより、「ホットポテト」がいなくても、YES と NO の売り手価格が1.00ドルに合致すれば(実際には1.00ドルのスペースを譲渡することで)、誰もがキャッシュアウトして退出できます。


これらの3つのマッチング方法を理解すれば、Polymarket マーケットのライフサイクルを理解できます:


1. 初期段階(MINT 主導):マーケットが開始され、トークンが存在しません。多空両者は MINT メカニズムを通じて資金をシステムに注入し、トークンと引き換えにします。総供給量が急速に増加します。


2. 中間段階(補完主導):マーケットの流動性が十分であり、大部分の取引が既存のトークンのやり取りです。総供給量は安定しています。


3. 後半期(MERGE 主導):結果が徐々に明らかになり、皆が決済を始めます。多空両者は MERGE メカニズムを介してトークンを燃やし、資金を引き換えます。総供給量が減少します。


これら3つのパスは Operator が主観的に選択したものではありません。BUY vs SELL の注文方向が厳密に決定するスマートコントラクトのルーティング規則です。


マーケットのライフサイクル


第四章:Split/Merge/Redeem となぜあなたの PnL は間違っているのか?


マッチングメカニズムを理解したら、次はおそらく毎日使用しているが、その財務上の影響を真剣に考えたことのない、3つの基本操作を見てみましょう:Split(分割)Merge(統合)、および Redeem(償還)


これら3つの操作は、Polymarket のアトミックな操作です。これらは「取引」ではなく(オーダーブックを経由せず、手数料を取らない)、スマートコントラクトと直接やり取りする資産変換です。


1. 分割(Split):您向合约提供 $1 pUSD,合约为您提供 1 个 YES 和 1 个 NO。成本始终精确为 $1


2. 合并(Merge):您向合约提供 1 个 YES 和 1 个 NO,合约为您提供 $1 pUSD。收益始终精确为 $1


3. 赎回(Redeem):在市场决定胜负后,获胜的代币可兑换回 $1 pUSD,而失败的代币将清零。


Split 操作前后对比


4.1 Who Uses These Operations?


做市商(Market Makers):他们是 Split 的主要用户。做市商需要在两侧进行挂单,但他们不希望在市场上购买代币(因为会收取手续费)。他们直接将 $100,000 资金分割为 100,000 个 YES 和 100,000 个 NO,然后将其挂在订单薄上。


套利者(Arbitrageurs):他们是 Merge 的主要用户。当市场出现短暂的错乱价格时,例如 YES 跌至 $0.40,NO 跌至 $0.55。套利者将迅速购买 1 个 YES 和 1 个 NO(总成本为 $0.95),然后立即执行 Merge 操作以获得 $1,无风险地赚取 $0.05。这个数学条件非常明确:当 Price(YES) + Price(NO) < 1 - 手续费 时,可以盲目购买并执行 Merge 操作。


因此,当您尝试追随套利者的聪明资金或做市商的聪明资金时,您必须准确评估 Split/Merge 对资产净值变动(PNL)的影响。否则,这将不是值得借鉴的“智能资金”。


然而,在当今市场上,包括 Polymarket 本身在内,都无法解决 PNL 的计算问题。


当然,您可能已经猜到 - insiders.bot 已经解决了这个问题,包括 PNL 计算和智能资金浏览器。


4.2 PnL の罠:なぜあなたの利益は間違っているのか?


前述の通り、これは Polymarket 全体のエコシステムで最も一般的な間違いです。ほとんどすべてのサードパーティの PnL(利益と損失)トラッキングツール、公式のいくつかの API さえもがここで躓いています。


この罠がどれほど深いかを知るには、一例を挙げましょう。


· ステップ 0: あなたの元本が $100 であると仮定します。あなたは「Ethereum が $5000 を突破する」という市場に注目しています。



· ステップ 1: $50 を支払って Split を一度実行しました。今、あなたは YES 50 と NO 50 を持っています。あなたの手元には $50 が残っています。


· ステップ 2: YES 50 が足りないと感じ、再度市場で価格 $0.40 で YES 50 を購入しました。$20 を支払いました。手元には $30 が残っています。


· ステップ 3: 手元の NO 50 を価格 $0.35 で売却しました。$17.50 を受け取りました。手元の現金は $47.50 になります。


現在、あなたは YES 契約 100 を持っています。あなたの実際のコストはいくらですか?


ほとんどの PnL はどのように計算するか(誤ったアルゴリズム):


· 彼らはあなたの「取引」履歴だけを見ます。50 の YES を購入し、$20 を支払ったことがわかります。彼らは Split を完全に無視します(取引ではないため)。


· したがって、彼らはあなたのコストを次のように見なします:$20 / 50 = $0.40/個。


· もし今 YES の市場価格が $0.60 に上昇した場合、彼らはあなたの利益を次のように表示します:100 × $0.60 - $20 = $40。


実際にはどのように計算すべきか(正しいアルゴリズム、および insiders.bot が使用しているアルゴリズム):


· あなたの総現金流出:$50(Split)+ $20(購入)= $70

· あなたの総キャッシュインフロー: $17.50(NOを売却)

· あなたのネット投資: $70 - $17.50 = $52.50

· あなたの実質コスト: $52.50 / 100 = $0.525/個

· もし今YESの市場価格が$0.60なら、あなたの実際の利益は: 100 × $0.60 - $52.50 = $7.50


差が見えましたか?ランキングでは$40を稼いだと表示されていますが、実際には$7.50しか稼いでいません。その$32.50の「幻の利益」は、システムがSplitのコストとNOの売却収入を正しく処理していないためです。


正しい損益数学式は次のとおりです:


総利益 = Σ(売却収入) + Σ(Merge収入) + Σ(Redeem収入) - Σ(購入支出) - Σ(Split支出) + 現在の保有市場価値


これが、いくつかの大物が数百万の損失を表示しているのに、実際には多額の利益を上げている理由です。勝ったポジションがRedeemされた後、多くのツールはこれらの保有を過去レコードから「削除」し、そのまま損失を被っているポジションのみを残します。


PnL 計算の罠


第5章: 手数料曲線


頻繁に取引を行う場合、Polymarketの手数料は固定のパーセンテージではありません。時には$1000の契約を購入して$10を支払うこともありますし、時には$2しか支払われないこともあります。


なぜでしょうか?コードの奥深くに隠された料金計算式を見てみましょう:


手数料 = C × 手数料率 × p × (1 - p)(ここで、Cは取引量、pは価格です)


5.1 なぜ p(1-p) なのか?


100個のYESを購入したいとします。手数料率は2%です:


· もし YES の価格が $0.50 の場合:手数料 = 100 × 2% × 0.50 × 0.50 = $0.50。


· もし YES の価格が $0.90 の場合:手数料 = 100 × 2% × 0.90 × 0.10 = $0.18。


· もし YES の価格が $0.10 の場合:手数料 = 100 × 2% × 0.10 × 0.90 = $0.18。


規則を見つけましたか?価格が 0.50(ハーフウェイ)のとき、手数料が最も高くなります。価格が 0 や 1 に近いと(勝敗が明確)手数料が非常に低くなります。


さらに重要なのは対称性です。$0.90 の YES を買うことと、$0.10 の NO を買うことは数学的に同等です。$0.90 の YES を買う際に高い手数料が必要な一方で、$0.10 の NO を買う際に低い手数料が必要な場合、アービトラージャーは狂ったように NO を買い、その後 MINT メカニズムを通じてアービトラージを行います。この p(1-p) のデザインにより、どちらの側から見ても、システムが徴収する摩擦コストは絶対的に対称になります。


5.2 隠された数学の美


もし統計学を学んだことがあるなら、p(1-p) という公式に非常に精通しているでしょう。それはベルヌーイ分布(コイントス)の分散公式です。


Polymarket のシステム全体設計では、p(1-p) が「神の公式」です:


1. それは手数料曲線です:不確実性(分散)が高いほど、システムが徴収する料金も高くなります。


2. それは情報エントロピーの表現です:50% の時に賭けると、市場に最も多くの新しい情報を提供し、したがって最も高いコストがかかります。


手数料は誰が支払うのか? 常にテイカー(取引者)です。メーカー(注文者)は常に手数料を免除されます。


このメカニズムは完璧にインセンティブを整合させています:市場が最も混沌としているとき(50/50)、初期参加者には最も高い手数料が請求され、これによりリキッドプロバイダーが無駄な衝撃を受けずに済みます。一方、市場がほぼ確定している場合、非常に低い手数料がアービトラージャーを促し、価格を最終的に 1 または 0 に向けます。


手数料曲線


第六章:Negative Risk,または DeFi 領域で最も優雅なマジック


あなたが Polymarket で大統領選挙、オスカー、スポーツイベントなどのマルチアウトカム市場をプレイしたことがあるなら、負のリスク(Negative Risk)市場に触れたことでしょう。


これはこの記事全体で最も脳みそを焦がす部分であり、かつ最もスマートコントラクトエンジニアリングの美意識を表現する部分でもあります。


P.S これは私たちの共同創業者 @DakshBigShit が私たち自身の API を開発する際に、36時間のハッカソンで精査した部分でもあります。


6.1 伝統的なマルチアウトカム市場の痛み点


4人の候補者 A、B、C、D がいるとします。あなたは A を非常に嫌いで、A が絶対に勝つことはないと確信しています。A に「ショート」したいと考えています。


伝統的なバイナリー市場では、A の NO コントラクトを購入するだけです。しかし、マルチアウトカム市場では、A が負けるということは B、C、D の中必ず1人が勝つことを意味します。 したがって、「A をショートする」は数学的に厳密には「B をロングする + C をロングする + D をロングする」と同等です。(この文は非常に重要なので、理解するまで繰り返し読んでください。)


B、C、D の YES コントラクトをそれぞれ購入しに行くと、大きな問題が発生します:資金効率が非常に悪いです。 3つの取引を個別に行う必要があり、さらに、3人の価格が合計で $1.00 を超えると、損失する可能性さえあります。


6.2 ネガティブリスクアダプター(NegRiskAdapter)のマジック


Polymarket はこの問題を解決するために専用のスマートコントラクト NegRiskAdapter を展開しました。それは convertPositions という関数を提供しています。


この関数の目的は:お持ちのNO契約を即座に他のすべてのYES契約に変換し、かつあなたにキャッシュを返すことです。


この変換が価値の保存である理由を硬核の数学で証明しましょう。


シナリオ設定: 候補者がn人います。


· あなたは候補者1のNO契約をAつ持っており、候補者2のNO契約もAつ持っています(1と2を同時に空売りしました)。


· 合計で異なるNO契約をmつ保持しています(ここではm=2)。


変換前、あなたのポジションの実際の価値(すべての可能なワールドラインで):


· 候補者1が勝った場合:NO_1は無価値になり、NO_2の価値は$1。総価値 = A


· 候補者2が勝った場合:NO_1の価値は$1で、NO_2は無価値になります。総価値 = A


· 候補者3が勝った場合(あなたが空売りしていない人が勝った場合):NO_1の価値は$1で、NO_2の価値も$1です。総価値 = 2A


convertPositionsを呼び出した後、契約は何をあなたに送り返したか?


· 式は:A × (m-1)の資金を返還し、さらにAつの候補者3からnのYES契約を返します。


· この例では、返却されるのは:A × (2-1) = Aつのキャッシュ!候補者3のYESとAつ、候補者4のYESとAつ...


変換後、あなたのポジションの実際の価値(すべての可能なワールドラインで):


1. 候補者1が勝った場合:あなたの手元のYES_3、YES_4はすべて無価値になります。現金Aだけが残ります。総価値 = A


2. もし候補者 2 が勝った場合: あなたの手にある YES_3、YES_4 はすべて無価値となります。あなたは現金 A のみを残します。総価値 = A。(変換前と等しい!)


3. もし候補者 3 が勝った場合: あなたの手にある YES_3 の価値は $1 であり、他は無価値となります。A の現金と合算すると、総価値 = A + A = 2A。(変換前と等しい!)


Q.E.D. 世界がどのように変わろうと、変換前後の価値は絶対に等しいです。


ネガティブリスク 転換数学証明


6.3 なぜこれは「一方向不可逆」のエントロピー増加プロセスなのか?


この転換メカニズムには、極めて魅力的な物理学的特性があります: それは一方向不可逆です。


NO を YES + 現金に変換することはできます。しかし、YES + 現金を逆に NO に戻すことは絶対にできません。


· なぜでしょうか?それは、スマートコントラクトの基盤では、NO を YES に変換する際に、実際にはあなたの NO コントラクトをブラックホールアドレスに送り(Burn して破棄)、その後、解放された担保領域を利用して新しい YES コントラクトを「合成」しているからです。このプロセスでは新しい外部資金の注入は必要ありません。


· しかし、YES を逆に NO に戻そうとする場合、あなたは新しい担保を空から創造しなければなりません(なぜなら、NO コントラクトのカバレッジ範囲ははるかに広いため)。アダプターには、国庫の資金を動かす権限がありません。


· これはまるで卵を割るようなものです。NO がその完全な卵であり、すべての可能性が含まれています。変換操作は、その卵を割って黄身(YES)と卵白(現金)に分割することです。プロセスの価値保存ですが、それらを元の完全な卵に組み立て直すことは永久に不可能です。


ここには巨大なアービトラージ機会があります: もし市場である候補者の NO の価格が他のすべての候補者の YES の価格の総和よりも高い場合、その NO を買い、convertPositions を呼び出して現金とたくさんの YES を受け取り、すぐにこれらの YES を売却することができます。これはマルチアウトカム市場で最高位のリスクフリーアービトラージ戦略です。


第七章:速度的物理极


最後に、取引の中で最も過酷な次元について話してみましょう:時間。


伝統的なハイフリークエンシートレーディングでは、マイクロ秒(百万分の一秒)が議論されています。Polymarketでは、ミリ秒が議論されています。しかし、ここには巨大で構造的な不平等があります。


Redditのアルゴリズム取引フォーラムを覗いたことがあるならば、Polymarketのボットを開発したすべてのプログラマーが同じことを不満に思ったことに気づくでしょう:「なぜTaker注文を出すときは常に300ミリ秒待たされるのに、Maker注文を出すと25ミリ秒しかかからないの?」


7.1 Makerが速くてTakerが遅い理由


Maker注文(指値注文)を出すとき: あなたの注文(署名データ)がPolymarketのサーバーに送信されます。サーバーは署名を確認し、そのレコードを直接CLOB(中央リミット注文帳)データベースに詰め込みます。そしてすぐにACK(確認)を返します。このプロセスは完全にオフチェーンで行われ、1回のデータベース書き込みのみが必要です。所要時間:〜25ミリ秒


Taker注文(成行注文)を出すとき: あなたの注文がサーバーに送信されます。マッチングエンジンはあなたのオーダーがオーダーブック内の特定のMakerとマッチすることに気づきます。この時点で、Operatorは複雑な決済パイプラインを開始する必要があります:


1. どのようなマッチングパスを使用するかを決定する(COMPLEMENTARY、MINT、またはMERGE)。


2. 両者の署名が含まれたオンチェーン取引データを構築する。


3. 取引をRelayerに送信する。


4. RelayerがGasを見積もり、Nonceを割り当てる。


5. 取引をPolygonノードにブロードキャストする。


6. ノードが取引が残高不足などの理由でRevertされないことを確認するのを待ちます。


このプロセスは複数のマイクロサービスをまたいでおり、時にはブロックチェーンのエッジに触れることさえあります。所要時間:〜250から300ミリ秒


7.2 この 250 ミリ秒は何を意味するのか?


この 250 ミリ秒の物理的な隔たりは、Polymarket のエコシステムを大きく形作っています。


まず、Polymarket でのフロントランは非常に難しいです。 すべてのテイカーオーダーはオペレーターの処理を待つ必要があり、Gas 手数料を上げて先頭に立つことはできません。ここではメンプールフロントランが一時的な課題となっています。


次に、メーカーストラテジーの絶対的な優位性。 キャンセルもメーカーオーダーと同様に、オンチェーンの操作ではなく、わずか 25 ミリ秒しかかかりません。突发ニュースが発生したとき、賢いメーカーは 250 ミリ秒の時差を利用して、テイカーのオーダーが決済される前に、自身のオーダーをキャンセルしてアドバースセレクションを回避できます。


7.3 毎週火曜日の朝の 90 秒間の停止


時間に関する興味深い事実がもうひとつあります。公式ドキュメントによると、米国東部時間の毎週火曜日の朝 7:00 に、Polymarket のマッチエンジンが再起動されます。約 90 秒間、マッチングは停止し、API は HTTP 425(Too Early) エラーを返します。


さらに厳しいのは、V2 がハートビート(心拍)メカニズムを導入したことです。サーバーがクライアントからのハートビートを 10 秒間受信しない場合、そのユーザーのすべてのオープンオーダーが自動的にキャンセルされます。再起動中のこの 90 秒間、メーカーのハートビートが中断され、彼らのオーダーは一斉にクリアされます。


この 90 秒は、システム内での真の「流動性の真空」です。オプションプライシングモデルにとって、この 90 秒のシータ(時価効果の減衰)の評価方法、および第 91 秒にマッチングエンジンが再開された際に最初に板を獲得する方法は、トッププラットフォームと量子的スタジオに残された究極の謎となります。


遅延タイムラインの比較


第八章: V2 大規模リファクタリングと「ゴーストフィル」(Ghost Fill)の究極の戦い


ここまで読み続けてくれたあなたは、すでに Polymarket のコアフレームワークを理解しています。しかし、2026年にこの市場で利益を継続したい場合、ちょうど発生した地殻変動を理解する必要があります。


2026年2月から5月にかけて、Polymarket は叙事詩的なV2アーキテクチャのアップグレードを静かに実施しました。このアップグレードは、担保と手数料の計算式を再構築するだけでなく、より重要なことに、予測市場の最も悪名高いバグ、すなわちゴーストフィル(Ghost Fill)を解決するための究極の戦いを開始しました。


8.1 ゴーストフィルとは?オンチェーンとオフチェーンのステータスの乖離


Polymarket V2のアップグレード前、無数のメーカーメーカーおよび量子ロボットが悩まされる現象がありました: あなたのロボットは、5分足レベルの市場(例: BTC Up/Down 5m)で絶好の機会を見逃し、すぐにテイカー(Taker)リクエストを送信しました。


PolymarketのAPIはすぐに「Matched! Success!」と返信し、あなたのTelegram警告に「FILLED」という狂喜が現れました。しかし、Polygonスキャンを開いてブロックチェーンブラウザーを確認すると、この取引が「REVERTED(失敗)」とマークされていることがわかり、Gas料金が無駄になりました。そして、あなたのポジションは変わりませんでした。


オーダーブックには取引が表示されているのに、ブロックチェーンでは実際には起こらなかったと言っている。これがゴーストフィル(Ghost Fill)です。


このバグの本質を理解するには、第1章で説明した基本アーキテクチャに戻る必要があります:オフチェーンマッチング、およびオンチェーン決済


Aliceの買い注文とBobの売り注文がオフチェーンの中央限界オーダーブック(CLOB)でマッチングされると、システムは単にこれら2つの注文をデータベースに等号で描画します。実際の資産移転には、オペレーターが両者の署名をパッケージ化し、Polygonチェーンに送信してTransferFromを実行する必要があります。


これには致命的な時間差が生じます。この時間差の間に、ユーザーのウォレットの状態が変化する可能性があります。


8.2 ゴースト取引の2つの攻撃パス


V1およびV2の初期に、ハッカーや悪意のある流動性提供者はこのタイムラグを利用して、2つの非常に破壊的な攻撃手法を考案しました:


第1種類:低コストの incrementNonce 攻撃(V1 時代) V1アーキテクチャでは、注文の状態はグローバルなノンス(ランダム数値)で管理されていました。悪意のあるプレーヤーは、オフチェーンで非常に魅力的なスプーフィング注文を大量に出品することができました。本物の買い手がフックしたとき、注文がオフチェーンで一致した後、悪意のあるプレーヤーはオペレーターがチェーンに提出する前に直接 incrementNonce 関数をコールできました。


この操作のコストは非常に低かった(数セントのガス)が、この操作により、そのアドレスのすべての古いノンスの注文が一瞬にして無効になりました。オペレーターが一致した取引をチェーンに提出すると、スマートコントラクトはノンスが一致しないことを検出し、直ちにRevertします。攻撃者は難を逃れ、本物の買い手は取引の機会を逃すだけでなく、誤った板に誘導される可能性もあります。


第2種類:空のウォレットの「ゾンビ注文」(V2 初期) V2のアップグレードにより、グローバルノンスが削除され、単一の注文ハッシュでキャンセル状態が管理されました。これで最初の攻撃パスは防がれました。しかし、ハッカーはすぐにより基本的な脆弱性を発見しました:残高詐欺。悪意のあるユーザーは$1000をウォレットに入金し、$10000相当の注文をブックに署名し、すぐにウォレット内のすべての資金を引き出しました。


Polymarketの注文はオフライン署名されており、署名が有効であり、トークンの承認が取り消されていない場合、これらの注文はオフチェーンのマッチングエンジンにとって「正当」であるとみなされます。しかし、実際には、このウォレットの残高は$0です。


あなたのボットがこれらの「ゾンビ注文」を処理すると、オペレーターがチェーンに提出すると、下位のSoladyライブラリ関数TransferFromは、相手の残高が不足しているためエラー(エラーコード0x7939f424)を返します。あなたの取引は再びRevertされます。


8.3 なぜ伝統的な取引プラットフォームにはこの問題がないのか?


あなたはおそらく尋ねるでしょう:なぜBinanceや伝統的な中央集権型取引プラットフォーム(例:Uniswapなど)にはこの問題がないのでしょうか?


バイナンスは完全な中央集権型であり、あなたの資産はそのデータベースに存在し、バイナンスは絶対的なコントロール権を持ち、マッチングと差し引きはアトミックに同時に発生します。一方、Uniswapは完全なオンチェーンであり、マッチングと差し引きは同じトランザクション内のスマートコントラクトで完了され、それもアトミックです。


一方、Polymarketはハイブリッドアーキテクチャを選択しました:オフチェーンのマッチングはスピードを追求し、オンチェーンの決済は透明性を追求します。そして、ユーザーの資産は完全に自己管理型ウォレット(例:EOAまたはGnosis Safe)に保管され、ユーザーは絶対的な管理権限を持ち、いつでもどこでも資産を引き出すことができます。


マッチングの両端の資金状態がユーザーの真の自己管理型ウォレットに結び付いている限り、「ステート分離」は永遠に存在します。


8.4 究極のソリューション:Deposit Wallet(デポジットウォレット)


2026年5月4日、Polymarketは、重要なプロトコルレベルの大規模なアップデートを発表し、ゴーストトレードの割合をピーク時の30%から0.17%に直接減少させ、ゼロに近づけました。


彼らはそれをどのように達成したのでしょうか?


その答えは、Deposit Wallet(デポジットウォレット)の導入です。


Polymarketはついに、ゴーストトレードを解決する根本的な方法として、ユーザーの資産の「絶対的な自由」を制限することに気付きました。新しいアーキテクチャでは、ユーザーはオフチェーンマッチングに直接自身のネイティブウォレット(EOA)を使用できなくなりました。まず、資金をスマートコントラクトによって制御されるDeposit Walletに入金する必要があります。


この金庫では:


1. 所有権を持っていますが、絶対的な即時処置権はありません


2. オフチェーンで注文を出す際、金庫は論理的に対応する利用可能残高をロックします。


3. 金庫から資金を引き出したい場合、この引き出し操作(ステートリボケーション)自体には物理的な時間コストが割り当てられます。これは、あなたが未解決の注文を相殺していないことを確認するためにスマートコントラクトによって検証される必要があります。


このバッファーレイヤーを導入することで、Polymarketはオフチェーンのマッチング状態とオンチェーンの資金状態を強制的に結びつけ、常に「空のウォレット注文」の可能性を排除しました。これは単なるエンジニアリング的勝利にとどまらず、自己管理と取引効率の間の矛盾に対する深い妥協と再構築であると言えます。


8.5 V2 のその他のハードコアアップグレード


究極の問題 Ghost Fill に対処するために、V2 アーキテクチャには市場の景気を変えるいくつかの重要なアップグレードが含まれています:


· pUSD の権力移譲 4 月 28 日、基礎となる担保物が USDC.e から完全に pUSD に切り替わりました。これにより、Polymarket は基礎資産の金利制御権を取得し、ユーザーに最大 4.00% の年間成果を提供することができるようになりました。pUSD は新しい資本効率のインフラストラクチャとなりました。


· 完璧な式 p(1-p) の実装、V1 時代のおおざっぱな min(p, 1-p) の近似値を放棄し、手数料式を完璧なベルヌーイ分散式 p × (1-p) に変更しました。数学的に完全に滑らかな状態で、アービトラージャーの価格設定モデルがより正確になりました。


· 人為的に設けられた低速レーンの取り外し、初期には、リキッドプロバイダーをAPIボットから保護するために、コードに最大 500 ミリ秒のテイカー遅延がハードコードされていました。V2 エンジン性能の向上とハートビート(ハートビート)メカニズムの導入(10 秒の断線で注文をクリア)により、公式は 2 月末にこの人為的な低速レーンを完全に削除し、Polymarket がミクロ秒単位のHFT(ハイフリクエンシートレーディング)の戦いに正式に参入したことを宣言しました。(これこそが、近々、insiders.bot がAPIをオープンソース化し、この戦いに参加する理由です)


結論:ゼロからこの機械を理解する


注文をクリックする瞬間から:


· あなたの署名 は、オンチェーンのオーダーブックに送信されました。


· Relayer は、あなたのためにGasを消費し、道を切り開きました。


· Operator は、COMPLEMENTARY、MINT、MERGE において、最適なマッチングパスを見つけました。


· 手数料曲線 は、p(1-p) の優雅な式を使用して微小な摩擦コストを取り除きました。


· もしもあなたの操作が複雑な場合、NegRiskAdapter は物質保存の錬金術を施すことさえあります。


· 最終的に、全ては生死を決定するあの 250ミリ秒 の中で決着がつきます。(これがなぜ insiders.bot がトレードの透明性とスピードを非常に重要視するのかの理由でもあります)


あなたのお金は消えていません。それは厳密に ctf-exchange-v2 という精密な機械の物理法則に従い、その行くべき場所に流れています。


次回、Polymarket でばかげたオッズや魅力的なアービトラージの機会を見つけたら、すぐに Buy ボタンをクリックするのではなく、まず頭の中でこの機械の歯車を回してみてください。


これらの基本的な「法」を理解し、正しい「道」を加えると、あなたは必ず無敵になります。


参考文献:
[1] Polymarket 公式ドキュメンテーション:マッチングエンジンの再起動とハートビートメカニズム。
[2] Polymarket 公式ドキュメンテーション:手数料と p(1-p) 計算式。
[3] Polymarket/ctf-exchange-v2 スマートコントラクトソースコード(GitHub)。
[4] NegRiskAdapter.sol:多くの結果への変換の数学的実装。
[5] leolabs.me:「なぜあなたのPolymarketの損益計算が間違っているのか」(分割/統合会計分析)。
[6] Reddit r/algotrading&Binance Square:Polymarket Takerによる遅延撤去の発表(2026年2月)。
[7] Polymarket V2 移行ガイド:USDC.e から pUSD への移行(2026年4月)。


Original Post Link


BlockBeats の公式コミュニティに参加しよう:

Telegram 公式チャンネル:https://t.me/theblockbeats

Telegram 交流グループ:https://t.me/BlockBeats_App

Twitter 公式アカウント:https://twitter.com/BlockBeatsAsia

ライブラリを選択
新しいライブラリを追加
キャンセル
完了
新しいライブラリを追加
自分のみが閲覧可
公開
保存
訂正/通報
送信