美國大選最大贏家 CEO遭FBI突襲 是時候全面了解Polymarket怎么運作的了

按:2024年美國大選最大的加密贏家之一是預測市場Polymarket。Polymarket成功預測特朗普全面贏得美國大選,其成交量超過30億美元。2024年11月14日,大選8天後,FBI突襲了Polymarket CEO Coplan位於紐約的住所,並要求交出電子設備。匿名消息表示,FBI可能懷疑該平台在選舉市場中進行操控。有沒有人能操控Polymarket,涉及到Polymarket到底怎么工運作的機制。solidity开發者Pavel Naydanov在Hackernoon發文“Polymarket Explained"詳解了Polymarket的工作機制。金色財經xiaozou編譯了此文,如下:

Polymarket是最大、最受歡迎的區塊鏈預測市場之一。它支持用戶對各種事件結果進行下注,包括體育、政治、文化等等。

用戶資產存儲在非托管錢包中。該協議並不存儲用戶的私鑰,也無法訪問用戶資產。

1、內部錢包

用戶在第一次使用Polymarket時,他們需要創建一個內部錢包。通常有兩種選擇:

● 使用他們現有的EOA(外部账戶),如Metamask、Coinbase或WalletConnect。

● 通過一種叫做Magic Link的技術使用電子郵件地址。輸入電子郵件並接收一個訪問該服務的特定鏈接。

這個內部錢包是通過專門的智能合約工廠創建的,具有1/1多重籤名功能,這意味着該錢包完全由用戶控制。

使用內部錢包可以讓Polymarket提供更好的用戶體驗,例如一次性啓用多個交易。

2、預測市場

預測市場始於預測。預測是構建用戶場景的基礎。在預測市場中,這種陳述被稱爲條件。它可以是一個問題、陳述、對預期結果、事件、預測等的描述。我們可以把它看作是任何形式的對未來事實的斷言。

預測的例子有:

九月份將發生7.0級地震。

GPT-5會在2024年發布嗎?

Bieber的孩子會是男孩還是女孩?

2024年票房最高的電影是哪部?

ETH價格會在2024年達到1萬美元嗎?

每個預測都有一個驗證截止日期:無論預測是否成真。Polymarket有一個特殊的oracle負責確定每個預測的結果

Oracle的作用是什么?Polymarket採用區塊鏈技術構建,使用oracle將數據傳輸到網絡。Oracle的設計宗旨是讓其結果對於任何一個預測來說都是可信的。

通常,一個預測有多種可能性結果。Oracle將在這些結果中決定預測結果。

結果預測示例如下:

GPT-5會在2024年發布嗎?

是的

不會

2024年票房最高的電影是哪部?

頭腦特工隊2

其他

死侍3

小醜2

卑鄙的我4

沙丘2

瘋狂的麥克斯:狂暴女神

一個典型的預測市場結構如下:


第一步是創建一個市場,並添加一個具有一定期限的新預測(條件)。在此期間,用戶可以選擇他們認爲最有可能的結果。最後一步是,oracle來確定哪組用戶是正確的,哪組是錯誤的。

選擇正確結果的用戶將獲得獎勵,而獎勵來源於所有參與者的貢獻。每個用戶通過對特定結果進行投票,貢獻了一定數量的資產供預測市場使用。所以,選擇錯誤的用戶什么也得不到。

這可能會讓人得出這樣的結論:預測市場本質上就是賭博。是也不是。預測市場背後的主要理念是由Vitalik在他的博客中提出的。他認爲,這些服務可以作爲預測或分析各種事件發生概率的中立來源。人們可以基於這些數據做出明智的管理決策。

3、預測有多准確?

一般來說,預測市場可以相當准確這一觀點得到了有效市場假說(Efficient Market Hypothesis)的支持。根據這一假設,任何資產的價格都直接對應於其真實價值,因爲所有可用信息都已經包含在價格中。

舉一個簡單的例子:

假設投資者知道一種商品的市場價值。只要它是有利可圖的,他們就會繼續購买。漸漸地,需求會增加,商品的價格也會隨之增加,直到該商品的價格達到讓購买不再有利可圖的水平。

研究表明,平均而言,預測市場比社會調查和專家意見要准確得多。預測市場的准確性已經被各領域的衆多研究人員研究過,包括測試理論和實驗室數據、醫療保健和管理決策。

預測市場的參與者廣泛分析各種各樣的信息:新聞、體育、創新、事件、發展趨勢、環境問題、政治等等。他們的經濟動機保證了他們對市場價格(或概率)的影響會進行精確調整以反映預測的真實性。

因此,預測市場被認爲是實時事件概率的最佳源之一。Polymarket就是這樣一種服務,於近期吸引了越來越多的關注。

Polymarket是如何工作的?下面我們來簡單看一下。

爲了理解Polymarket服務是如何工作的,首先我們在Polymarket上點开一個隨機事件瀏覽其界面。

在上圖中,突出顯示了事件標題“8月30日比特幣會超過6萬美元嗎?”以及可能的結果。在這個例子中,只有兩種結果:“是”和“否”。然而,重要的是要切記,還可能有兩種以上的結果。讓我們來看一下下面的截圖,以便更詳細地了解該界面。

多個結果將直接顯示在事件標題下方。右邊的面板顯示了最受歡迎的結果,也就是目前大多數用戶選擇的結果。這樣就可以快速訪問此結果選項了。

“Buy”按鈕是什么意思?

在底層,每個結果都由基於ERC-1155標准的具體份額的代幣表示的。Buy按鈕用於針對所選結果購买代幣,而用戶則需要支付基礎資產USDC。

購买過程可以看作是一種投票形式。用戶通過使用實際資產來支持他們的選擇來對其中某一結果進行投票,這確保了決策的可問責性。相應的賣出(sell)過程則讓用戶可以反向持倉。

每次投票都代表了用戶對特定事件的立場。可以使用各種話語來描述購买過程:“投票”、“打賭”、“立場”、“購买”等等。用戶可以選擇他們覺得最舒服的話語,但所有這些都表明了用戶對某事件的看法。


“Yes”結果的價格爲98.8美分,這表明“比特幣在9月13日超過5.5美元”這一事件發生的概率爲98%。因此,2.3美分的價格則表示比特幣低於5.5萬美元的概率爲2%。

從本質上講,價格反映了某結果發生的概率。用戶的說法就是,價格越高,事件發生的可能性就越大。如果用戶認爲比特幣很有可能超過5.5萬美元,他們可以以98.8美分的價格購买“Yes”代幣。

如果用戶是正確的,比特幣確實超過了5.5萬美元,那么买入的每個“Yes”代幣將價值1美元。因此,用戶將獲得每代幣1.2美分的利潤。與此同時,所有持有“No”代幣的用戶都將面臨投資損失,因爲這些代幣將變得一文不值。

值得注意的是,用戶不需要持倉到最後;他們可以在任何時候以當前市場價格出售他們的shares。

4、技術詳情

現在我們來全方位深入研究協議技術。准備好了嗎?

(1)結果代幣化

我們已經明確Polymarket上的所有事件結果都被代幣化了。讓我們回顧一下我們已經知道的:

● 這種代幣可以稱爲share代幣。

● Share代幣是用基礎資產購买的,因此它們是完全抵押的。

● Share代幣可以賣出兌換回基礎資產。

現在我們來看一些新信息。Share代幣基於Gnosis條件代幣框架(CTF)部署ERC-1155,該框架已經證明了其有效性,並已通過多個協議的測試。

CTF每個事件最多可以支持256個結果。

各預測在CTF中被識別。爲此,它被分配了一個conditionalId。因爲以下三個參數的哈希值,conditionalId是唯一的:

● oracle:決定事件結果的oracle地址。這確保了只有指定的oracle可以解決預測。

● questionId:預測標識符,由預測創建者設置。這可以是一個簡單的計數器,其中每個新預測的增量爲1,也可以是使用文本和其他數據哈希計算的更復雜的方案。

● outcomeSlotCount:預測可能結果的數量。

下圖描繪了CTF(條件代幣框架)的工作原理。


用戶在下注時提供基礎資產並接收share代幣,這在CTF中稱爲條件代幣。在oracle完成預測後,用戶可以根據預測結果從CTF中獲得獎勵。

當用戶接收到一個條件代幣時,他們被認爲已經採取了特定的position(立場)。在CTF中,position表示各預測的一組可能性結果組合。CTF爲每個預測生成這些position,每個position對應一個用戶可選的結果組合。

例如:

2024年票房最高的電影是哪部?

● 頭腦特工隊2

● 其他

● 死侍3

● 小醜2

● 卑鄙的我4

● 沙丘2

● 瘋狂的麥克斯:狂暴女神

用戶可以投票選出《頭腦特工隊2》將成爲票房最高的電影,而《沙丘2》肯定不會成爲2024年票房最高的電影。這種預測組合將被視爲他們的position。

CTF提供了兩種有趣的position處理機制:拆分和合並。拆分機制允許將單個position拆分爲多個獨立結果,而合並機制則將不同的結果合並爲一個position。這些機制爲用戶的頭寸管理增加了靈活性。

在我看來,CTF爲Polymarket提供了四個重要優勢:

● Share代幣用於確認用戶對特定預測結果的投票。

● 它實現了一個靈活的系統,可以將用戶的投票組合爲各種position。

● 根據oracle的信號,結果計算責任被委托給CTF。

● 根據獲勝結果的share代幣金額計算獎勵。

尤其需要注意的是,CTF可以組織相關事件,組合用戶的position。然而,我並沒有在Polymarket中找到這樣的例子。

我真的很喜歡CTF概念,盡管對我來說這個概念很復雜,我並不能完全理解。

(2)訂單

現在,讓我們來看Polymarket最神祕的一面——訂單。

針對購买,Polymarket界面提供三種類型的訂單:

● 市價單——以當前市場價立即購买。

● 限價單——延遲訂單可以讓用戶指定一個價格,一旦達到該價格,將啓動購买。

● AMM訂單——基於池中的儲備金數量以自動確定的價格進行購买,類似於去中心化交易所。

目前,AMM訂單功能似乎不好用。我沒有找到一個允許通過AMM購买的事件。在搜索了該協議的Discord後,我發現了一位用戶最近發布的評論,這讓我對這一情況有了一些了解。請看下面的截圖。

根據協議的文檔,AMM使用了作爲條件代幣框架組件开發的智能合約。因此,AMM被用來確定share代幣的購买價格。

這一基本機制具有流動性要求,以確保價格穩定減少波動。流動性提供者需要一種經濟激勵,從每次購买中獲得獎勵,才能保持系統的運行。

遺憾的是,我是Polymarket新手,但我猜最初,協議因該是完全基於CTF框架的, AMM用於價格確定。隨着時間的推移,該協議开發了一個帶有訂單簿的混合解決方案,另外兩種類型的訂單(限價訂單和市場訂單)开始着手定制解決方案。這種解決方案被稱爲CLOB(中央限價訂單簿)或BLOB(二進制限價訂單簿)。

(3)CLOB和BLOB

CLOB(中央現價訂單簿)或BLOB(二進制限價訂單簿)是一種混合去中心化訂單簿系統。在這個系統中,有一個專門的操作員處理訂單匹配並啓動智能合約的執行。

在不涉及太多細節的情況下,該系統可以描述如下:


用戶創建執行訂單,可以是限價單,也可以是市價單。操作員匹配用戶訂單並啓動智能合約的執行。創建訂單意味着根據EIP-712標准創建一個使用用戶私鑰籤名的數據結構。由於訂單在執行前存儲在鏈下,因此可以對訂單條款進行快速且無成本的調整,甚至可以徹底取消訂單。

對於那些想要了解更多細節的人來說,與訂單簿和訂單匹配相關的所有內容都只能通過API訪問。爲方便起見,Polymarket提供了兩個客戶端:一個面向JavaScript,一個面向Python。

Exchange.sol智能合約是开源合約,負責在CTF框架內創建用戶頭寸。它還支持管理用戶頭寸以及持倉資產之間的轉移,確保協議內的安全性和透明度。


智能合約已經過審計。審計報告附加在repository庫中。

(4)智能合約

Exchange智能合約實際上有一個更具體的名稱——CTFExchange.sol。它不是很大,只有大約100行代碼,但它確實有大量依賴項。


其中大多數都是小型智能合約,只有有限的幾個功能:

● BaseExchange.sol。抽象智能合約,實現了接收ERC-1155代幣的能力,另外還負責防止重入攻擊。

● Auth.sol。角色管理器。爲CTFExchange.sol定義驗證函數和修飾符,以設置角色:admin和operator。

● Assets.sol。定義兩項資產:基礎資產(抵押品)和CTF地址。

● Fees.sol。定義協議費用。

● Pausable.sol。定義中止智能合約操作的能力。是在不可預見的情況下協議認同的一種中心化中形式。僅對admin角色可用。

● AssetOperation.sol。定義基本資產和CTF的操作。包括轉账、拆分和合並position。

● Signature.sol。定義用於驗證訂單處理所用用戶籤名的代碼。

● Hashing.sol。定義用於籤名驗證的訂單參數哈希計算。

● Registry.sol。定義在系統中注冊預測以及爲預測注冊代幣的過程。

請注意,與實際訂單執行相關的一切都部署在智能合約中——Trading.sol。

瀏覽代碼研究智能合約也很簡單。該結構通過函數明確定義了入口點:

● fillOrder()——在創建它的用戶和用戶所選的maker做市商(另一個訂單)之間執行訂單。

● fillOrders()——與fillOrder()相同,但用於訂單列表。

● matchOrders()——操作員選擇兩個不同的訂單並執行。

以上所有函數只能由操作員調用。


無論調用如何進入智能合約,結果都是一樣的:兩個用戶將根據他們的訂單交換代幣。

(5)協議費用

費用針對輸出資產收取。對於二元預測來說,費用是對稱的,這意味着:如果用戶以0.99美元的價格出售代幣,他們將支付與以0.01美元的價格購买代幣的买家相同的費用。

計算公式很簡單(摘自文檔):


(6)流動性獎勵計劃

該計劃的總目標是激勵市場的流動性。

我們知道,要使基於訂單簿的交易所發揮作用,就需要有人創建限價單。限價單提供流動性,允許市價單立即執行。創建限價單的用戶被稱爲market makers(做市商)。限價單與市場價格越接近,市價單就能越快執行,交易量也就越大,這對最終用戶來說當然是有利的。此外,流動性越多,操縱市場的難度就越大。

爲確保足夠的流動性,Polymarket制定了一個特殊的獎勵計劃來激勵用戶創建限價單。

限價單越接近市場平均價格,獎勵就越高。獎勵將在每天午夜(UTC時間)自動支付。

(7)Oracle

oracle用於傳遞預測的結果——無論事件是否發生。oracle是該協議最關鍵的一個組件,但它是由第三方而非Polymarket團隊部署的。該oracle叫做UMA。

UMA是一個去中心化oracle,專門記錄區塊鏈上除無法驗證數據之外的所有類型的數據。oracle被認爲是optimistic模式,數據如果沒有爭議則被認爲是正確的。UMA有自己的解決糾紛的仲裁系統,仲裁者是UMA生態系統的參與者,特別是UMA代幣的持有者。這個系統被稱爲DVM(數據驗證機制)。

以下多步驟過程用於確定預測結果並將其記錄在區塊鏈上:

● 陳述。預測和獎勵一起被添加到oracle中。任何成功質疑預測結果的人都可以獲得獎勵。

● 挑战期。在此期間,任何人都可以對預測結果提出質疑。如果沒有發生挑战,並且時間到期,則認爲預測結果可以進行最終結算,表明其准確性。

● 爭議。任何協議參與者都可以對結果提出異議,要么爲了獎勵,要么爲了公平(只是开玩笑)。實際上,這種情況很少發生,因爲博弈論表明,大多數參與者的行爲都是誠實的。

● 投票。如果爭議被發起,UMA代幣持有者投票解決爭議。UMA是用於投票的協議代幣,參與者將獲得參與獎勵。

● 結算。最後一步是結算過程,即在區塊鏈上實際記錄數據。在此之後,可以認爲預測結果是可靠准確的。

整個協議基於精密的博弈論,任何參與者如果從事惡意行爲在經濟上都是不利的。

舉例如下:

● 提交預測結果進行投票的參與者會爲智能合約提供抵押品。如果他們的結果有爭議,他們將失去抵押品;否則,他們會收回抵押品並獲得獎勵。這就產生了只提交准確結果的強烈動機。

● 對預測結果有異議的參與者也會提供抵押品。如果他們是正確的,他們將收回抵押品並獲得獎勵;否則,他們就會失去抵押品。這就激勵參與者只對那些他們確信是錯誤的結果發起挑战。

● 解決糾紛的參與者。他們必須質押UMA代幣,並會因解決糾紛而獲得獎勵。如果他們投票錯誤或根本不投票,他們就會失去部分質押;否則,他們將得到獎勵。所以,懈怠瀆職是不可能的。

尤其值得注意的是,使用commit/reveal方案,爭議投票過程將分爲兩個階段:

● 提交。參與者通過向智能合約提交他們投票的哈希值來祕密投票。這意味着沒有人可以通過查看哈希值來辨別參與者的投票選擇。

● 披露。在投票階段結束後,參與者展示他們的投票。智能合約驗證投票是否與之前提交的哈希值匹配。

這個兩階段投票過程可以防止選民之間串通一氣,詆毀依oracle或攻擊賴預測結果的服務。

預測結果可以被多次挑战。在這種情況下,UMA允許在先前的爭議結束後重新开啓決策過程。

爭議發起過程如下:


5、結語

看似簡單的押注和預測系統實際上由三個主要模塊組成,各模塊分別由不同的協議和團隊开發:

● CTF(條件代幣框架):管理預測中的組合、position和用戶share。多虧了Gnosis創建出如此靈活的框架,這個框架非常適合預測市場。

● CLOB(中央限價訂單簿):Polymarket的自家解決方案,用於部署訂單簿和限價單。CLOB使用戶能夠有效地參與生態系統,並有助於聚集流動性。

● UMA:這是一個去中心化oracle,具有獨特的爭議解決仲裁系統。UMA是該系統真正的核心組件,通過區塊鏈傳輸預測結果。

這個系統可以看作是一個押注系統,但是當我开始深入研究Polymarket時,我沒有想到我必須把我的研究分爲三個不同的協議,也沒料到要花這么多時間在上面。從技術上講,該協議令人印象深刻而且非常有趣,它成功地結合了來自不同項目的技術,使其對开發人員特別具有吸引力。

我的最終觀點是:我真的希望看到這個協議是有用的,正如Vitalik Buterin所說的那樣。愿它成爲預測、決策和分析工具。然而,盡管具有這樣的潛力,該協議仍然最常用於大選預測,相關預測需求飆升。

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播信息之目的,不構成任何投資建議,如有侵權行為,請第一時間聯絡我們修改或刪除,多謝。

相關文章