一個匿名的中國團隊給出了自己的答案,他們說預言機的報價難題有解藥了。

撰文:LeftOfCenter

都說 Uniswap 是 DeFi 世界中的天然預言機基礎設施,其交易對只要具有一定的規模,就會驅動相當數目的搬磚者爲了套利往返於主流交易所和 Uniswap 某個交易池之間,不斷將利差磨平,進而成爲一個天然的預言機基礎設施。

然而,一個匿名的中國團隊卻不同意這種觀點,他們認爲,Uniswap 不是一個好的預言機,其根本原因在於,Uniswap 作爲預言機提取的是成交交易的價格,而你無法確認這些成交的交易價格中是否存在利差,以及多大利差,尤其是,如果出現惡意操縱,那麼價格的偏離會更大。

爲了解決預言機難題,這家匿名團隊提出了自己的去中心化預言機解決方案「NEST」。

粗粗看去,這是一種挺類似 Uniswap 的方案——當然,NEST 的團隊一定會狠狠地否定你的這種認知。在他們設計的 NEST 的系統中,存在專門向系統報價的「礦工」,這種「礦工」有點像 Uniswap 系統中流動性提供者,他們根據交易對向系統注入資產,提供可供任何人吃單的交易對報價,同時,這個報價要接受市場的套利檢驗,也就是說,如果礦工報價與主流交易所價格存在利差,就會被套利者吃掉,剩下的沒被成交的訂單報價纔可被認爲是準確報價。這些沒有被吃單的交易價格會被 NEST 系統採用,以與 Uniswap 相反的方式逆向篩選出精準報價

數據顯示,考慮 5 分鐘的延時,NEST 預言機提供的 ETH/USDT 報價與火幣交易所的平均偏差在千分之 3 到千分之 4 左右

如果說 Uniswap 不是一個好的預言機,那要如何改善?
近期 NEST 預言機鏈上報價與火幣交易所價格數據對比圖

以抵押借貸起家、上線不到半年的去中心化預言機項目 NEST,目前已取得了讓我們眼前一亮的成績:鏈上數據 顯示最近 30 天,NEST 的交易對報價資產規模達到77490 枚 ETH,摺合 1557 萬美金,這一個月中參與報價的總資產規模達到了 3115 萬美金,與之對比,兩個月前報價資產規模爲 25240 枚 ETH。而這僅僅是處於 2.0 早期階段、只開通的單個報價交易對(初期只支持 ETH/USTD 報價對)所達到的規模。

由於單位時間內的報價次數等於報價資產規模除以單次報價規模(10ETH),30 天的報價資產規模增長,意味着單位時間內的報價次數在增長。

這是一個讓人樂觀的趨勢。報價次數的增長,會導致報價頻率變高,報價連續性增長。這樣,鏈上數據穩定性變強。

與此同時,NEST 的報價頻率也從兩個月前 50 個區塊報一次價,提升到了目前 20 個區塊報一次價。隨着礦工的數目增長,未來報價頻率可能提高到 1 個區塊報一次價。隨着報價頻次提高,報價間隔時間也越來越短,目前大概 4 分鐘左右會產生 1~2 單新的報價。

那麼,NEST 實現精準預言機報價的原理是什麼?存在哪些惡意風險?如何在啓動之後短短半年時間實現快速增長?

更進一步,這個體系如何激勵 NEST 礦工長期持有系統代幣?以及 NEST 未來的增長點又是什麼?

爲了回答這些問題,鏈聞潛水 NEST 社區,和社區中匿名的開發者聊了聊,試圖弄清楚這些問題背後的答案。

來,讓我們一個一個回答這些問題。

1,NEST 到底是什麼?

簡單來說,NEST 是一個去中心化的預言機協議,其最大亮點是,用去中心化的方式提供精準且經過「驗證」的加密資產報價,從而解決開放金融中的預言機難題。我們必須再次重複一下這個讓人眼前一亮的數據:鏈上數據顯示,考慮 5 分鐘的延時,NEST 預言機提供 ETH/USDT 報價與主流交易所的平均偏差在千分之 3 到千分之 4 左右。

目前市面上的主流預言機,報價模式基本上都是由節點上傳,並通過投票進行驗證。這種機制最大的弊端在於,無法保證其上傳的價格一定是正確的。因爲在一個完全去託管、去信任的世界,任何一點中心化的風險,都有可能帶來整個系統的崩潰。

與之對比,NEST 預言機提供的價格則是由無需許可的礦工參與報價產生:它無需允許,任何人可對目標交易對報價、套利者吃單驗證,然後協議基於算法生成精準的預言機報價。

而這個設計精巧的套利驗證機制,正是 NEST 保證價格真實度的核心。

具體來說,當報價礦工報出目標資產的價格後,如果價格和主流交易所的報價存在利差,會讓搬磚者產生套利的動機吃單,這樣一來,可激勵礦工報出儘可能準確的價格。

這意味着,沒有被吃單的交易就沒有套利空間,是和主流交易所價格接近的報價,這些報價最終被系統基於一定算法採用,從而形成準確的報價數據。這個驗證機制類似於一個篩選器,可將無套利機會的報價篩選出來,爲 DeFi 開發者用於其他應用中。

作爲 NEST 的核心競爭力,該報價系統可解決鏈上價格事實缺失的行業性問題。在即將到來的 NEST 3.0 上線後,該預言機可被多個 DeFi 產品調用,提供去中心化價格信息,並支持一系列 DeFi 產品,包括:

1)利率市場,比如:自動結算型抵押借貸;
2)交易市場,比如:閃兌、DEX 等去中心化交易;
3)保險市場,比如:保險產品;
4)衍生品市場,比如:期權、永續期權、遠期、互換等;

那麼,NEST 到底是如何實現安全準確的價格數據上鍊,進而解決區塊鏈的預言機問題的呢?

2,NEST 預言機原理初探

回答剛纔的問題,需要要從 NEST 的原理說起。

NEST 通過市場參與者對某個交易對報價生成鏈上事實,讓任何人都可以參與報價「挖礦」,並獲得系統中原生代幣 NEST 獎勵。

目前, NEST 支持 USDT/ ETH 單個交易對的報價。其報價的實現過程如下:

  • 假如目前市場價格是 200 USDT = 1 ETH,那麼,提供報價的礦工需要向報價合約單中同時轉入 2000 USDT 和 10 ETH 的報價資產;
  • 轉入成功之後,該報價合約單會在報價市場中顯示 25 個區塊的時間(大約 5 分鐘);
  • 在這一段時間內,任何人都可以按照該礦工的報價數據進行兌換。比如,其他用戶可以往報價合約中轉入 2000 USDT 兌換出 10 ETH,也可以往報價合約中轉入 10 ETH 兌換出 2000 USDT。

每個參與報價過程的用戶,都是這個預言機系統中的「礦工」。在這種機制下,只有正確進行報價,才符合這些礦工的經濟收益。

爲什麼這麼說?

因爲如果礦工的報價與市場真實價格偏離較大,那麼就給其他人提供一個套利機會。一旦其他人利用礦工報價與市場真實價格之間的偏差進行套利,就會讓報價礦工損失資金。通過這種套利懲罰機制,可以促使參與報價的礦工都會按照市場公允價格進行報價,從而實現向報價系統輸送真正有效的價格信息。

在這裏,按照該礦工的報價數據進行兌換的用戶可以被稱爲「吃單者」,這些吃單者實際上就是「驗證者」,驗證報價單與市場價格之間是否有套利空間。如果有,報價數據偏離市場價格比較多,就吃單套利;如果沒有,說明報價數據是真實有效的。到最後,沒有被吃單的報價數據會被報價系統採用。反之,被套利者完全吃掉的報價單,其報價數據將自動捨去,不參與鏈上價格形成。

目前在 NEST 系統中,每一單報價在鏈上的生命週期爲 25 個區塊,大概 5 分鐘左右。5 分鐘過後,報價礦工可以從報價合約中取回報價資產,進行下一次的報價。

通過這種方式,NEST 的報價系統提取沒被完全吃單的有效價格,進而在鏈上形成價格事實。

每一個系統都要考慮可能存在的惡意動機行爲。在 NEST 報價系統中,有可能出現惡意吃單者,他們爲了由於驅利動機會蓄意製造出偏離市場價格的報價。

爲防止惡意吃單行爲,NEST 系統採用了「吃單雙倍報價機制」即吃單者在吃單的同時必須要發起一筆自己的報價,且報價資金規模爲吃單資金規模的 2 倍。比如,驗證者吃掉了一個 10 ETH 的報價單,那麼他需要再報出一個 20 ETH 規模的報價單出來,報價的價格是他自己認可的市場價。

此時,如果吃單者是惡意攻擊者,要達到自己的目的,那麼他在吃單時的報價數據應該是偏離市場數據的;此時,一個放大的套利機會就出現了,攻擊者的惡意報價單會被市場上的套利者迅速消化掉,此時市場上的套利者會報出理性的報價單出來,進而價格數據迴歸正常,攻擊失敗。如果攻擊者自己搶吃自己的單子,那麼其往後的成本將幾何級數增長,暴露給市場驗證者的套利空間將越來越大,攻擊者自己吃單成功的概率將越來越小,陷入攻擊死亡螺旋,最終只能停止攻擊,攻擊失敗。

而如果是正常的吃單套利,套利成功後的吃單者會以 2 倍於吃單資產規模報出一個與主流交易所相同的市場價,從而進行價格修正,讓價格迴歸正常。

如果 ETH 在短時間價格出現大幅下跌,礦工報價可能會被吃單,甚至出現多條價格鏈,然後在經歷多次吃單後將價格恢復正常。

下圖鏈上數據顯示了一次市場大幅波動時 NEST 報價系統的表現。5 月 10 日早上 8 點左右,中心化交易市場上的 ETH 價格在短時間內下跌超 10%,NEST 預言機隨之也出現了 2 條價格鏈:A 價格鏈 和 B 價格鏈。A 價格鏈:初始報價 A0,在價格短時間大幅度下跌後被驗證者吃單,驗證者報價 A1,A1 又被其他驗證者吃單,出現新報價 A2,A2 完成價格修正,迴歸正常。B 價格鏈:初始報價 B0,在價格短時間大幅度下跌後被驗證者吃單,驗證者報價 B1,B1 又被其他驗證者吃單(部分吃單),出現新報價 B2,B2 完成價格修正,迴歸正常。
如果說 Uniswap 不是一個好的預言機,那要如何改善?

可以看出,此時 NEST 出現了兩條價格鏈,這說明報價競爭激烈,並出現了多次吃單將價格恢復正常,這說明驗證者很積極,資金非常充足。

目前 NEST 2.0 版本僅支持 USDT/ ETH 單個交易對的報價,而即將上線的 3.0 版本中,其報價系統將支持各種 ERC20 代幣 與 ETH 交易對的直接報價。

在 NEST 報價系統中最終被採用的有效價格數據,存在於以太坊各個報價區塊中,DeFi 開發者可以通過合約調用獲取近期的報價序列,通過對價格序列的處理和計算,獲取多種市場價格數據以及波動率數據。這些常用的預言機數據可以包括:及時價格、均價、加權均價、波動率等。

這些鏈上數據在 NEST 2.0 系統中僅供 NEST 開發者內部使用。NEST 的開發團隊計劃將在 NEST 3.0 上線後,完全將這些鏈上數據開放給外部開發者使用。屆時,外部開發者每調用一次數據,需要支付一筆 ETH 費用,這部分手續費收入會直接進入 NEST 系統收益池,用於 NEST 代幣持有者每週的 ETH 收益分配。

從這個價值捕獲的體系設計來看,NEST 預言機被 DeFi 開發者調用所能產生的價值,是 NEST 預言機價值的核心體現,也是決定整個生態是否可持續發展的關鍵因素。

3,如何吸引早期礦工入場?

雖然 NEST 是一個以去中心化預言機用例爲核心競爭力的項目,未來希望爲 DeFi 生態提供價值,但在項目早期啓動階段,最大的挑戰是:如何吸引礦工入場,成爲預言機的報價者?原因很簡單,這種通過博弈設計實現最終準確報價的系統中,如果參與者數量不足,無法進行有效博弈。

NEST 系統的設計,採用了「收益權模型」, 即爲報價礦工提供以 ETH 計量的每週收益獎勵。這些礦工參與周收益分配有一個條件,就是在合約中鎖定其原生代幣 NEST ,且佔比越高,ETH 的收益分配佔比就越高。

NEST 系統收益資金池共有 4 個收入來源,包括報價礦工支付的手續費、驗證者吃單的手續費、DeFi 應用調用預言機所支付的費用以及 NEST 3.0 上線後閃電貸所產生的手續費。具體來說,這 4 個來源分別是:

  • 報價礦工每次向系統支付的報價手續費,爲 ETH 報價規模的 1%,目前最小報價規模爲 10 ETH,所以每單報價手續費收入最少爲 0.1 ETH;
  • 驗證者吃單的交易手續費,爲吃單 ETH 規模的 2‰ (千分之二);
  • NEST 預言機被調用產生的價值,每調用一次需要支付一筆 ETH 費用,具體收費規則將在 NEST 3.0 上線後作出詳細說明;
  • NEST 系統內的資金池在 NEST 3.0 後會支持閃電貸,並收取一定比例的手續費;

化名爲「Bruce」的 NEST 社區成員告訴鏈聞,由於預言機賽道大多是使用權模型,因此在初始分發需要釋放一定的代幣出來,在這個背景下,NEST 以分紅模型出現是必須的。這樣,當 3.0 版本上線後,用戶可使用 NEST 代幣開啓特定的 ERC20/ETH 報價交易對,每一個 ERC20/ETH 交易對都有自己的支付代幣nToken,須持有 NEST 代幣以競拍方式按需開通

礦工報價必須支付 ETH 作爲手續費,才能挖到 NEST,想要獲取 ETH 系統收益分配,則必須持有 NEST。Bruce 介紹說,礦工須支付 1% 佣金的目的是希望挖礦行爲不要變成比拼 Gas 的行爲(高低可能差距幾倍),這也是該設計的初衷,因爲 Gas 是千分之一的數量級別,這樣 Gas 的變化並不是成本的核心影響因素。

他說,支付 ETH 作爲報價手續費的方式,有利於維護系統的安全性。因爲礦工的每一次報價,都要付出真金白銀,並且承擔作惡的高風險成本。此外,用戶想要獲得更多 ETH 系統收益分配,就必須持有 NEST 代幣,這會在一定程度上限制原生代幣的賣盤壓力,讓系統更加穩定。

更重要的是,對於一個具有使用價值的項目來說,在早期下游調用還沒有起來的情況下,用共識範圍更廣的外生資產 ETH 作爲收益獎勵,這會讓礦工更有動力參與系統貢獻,降低參與風險。因爲就算是參與者長期價值期待落了空,項目的可持續業務能力沒有期待中那麼好,但短期來看,參與者至少可以獲得一週一次的 ETH 獎勵。由於 ETH 這種外生資產本身的流動性、用例場景、共識範圍、影響力都比原生資產 NEST 更大,因此,可解耦礦工對原生資產價值增長的部分依賴,減少了 all-in (「全身心投入」)一個項目的風險。

最後,由於 ETH 收益獎勵是按照鎖倉 NEST 的比例來計算的,因此這又會讓礦工更有動力賺取原生代幣 NEST。

NEST 白皮書顯示,NEST 收益分配合約根據每位用戶持有 NEST 代幣的佔比來計算與之對應的 ETH 分配數量,持有 NEST 佔比越高,ETH 收益分配就越多,每週進行一次系統收益分配。

4,如何賺取 NEST?

那礦工要如何賺取更多的 NEST 代幣呢?首先需要了解一下 NEST 代幣的釋放機制。

NEST 代幣是標準的 ERC20 代幣,總量上限爲 100 億枚,其釋放機制是 100% 通過 NEST 預言機報價挖礦的方式釋放,無預留、無預挖,無 ICO、無私募。分配機制則是 礦工 80%,開發者 5%,守護者節點 15% 。舉例來說明,假設這一單報價挖礦釋放的 NEST 的數量是 100 枚,那麼會有 80 枚分配給礦工,5 枚分配給開發者,15 枚分配給守護者節點。

根據鏈上數據顯示,目前已經被挖出來的 NEST 總量爲:13.94 億枚,佔總量的 13.94%

如果說 Uniswap 不是一個好的預言機,那要如何改善?
當前以太坊區塊高度已經超過了 1000 萬,由此可見,已經進行了一次衰減,目前的單位區塊獎勵爲 360 枚 NEST 代幣。

單筆交易對報價挖礦計算公式爲:N = (e / E)* (M / C),其中, e 代表的是礦工支付的單筆報價手續費, E 代表的是該報價交易對的手續費之和,M 是打包報價交易的區塊中包含的 NEST 挖礦獎勵數量, C 是該區塊中所包含的報價交易對類型數目。

其中, 打包報價交易的區塊中包含的 NEST 挖礦獎勵數量 M = K * 360, K 是該區塊距離上一個含有報價交易的區塊的高度差,而目前單位區塊獎勵爲 360 枚 NEST 代幣。這意味着,如果在一段時間內如果沒有報價挖礦單出現,那麼新出現的第一筆挖礦會獲取之前未挖出的所有 NEST 獎勵。通過這種方式,可以激勵礦工進行持續報價挖礦,維持 NEST Protocol 網絡的穩定與安全。

上線初期,只有 USDT / ETH 和 HT / ETH 兩種報價類型(目前 HT/ETH 已關閉),所以 C 目前最大值爲 1;此外,e / E 的比值意味着參與報價時礦工付出的手續費越多,挖礦獎勵佔比就越多。

5,經濟模型頗爲精巧

總結一下,對於報價礦工來說,影響 NEST 代幣獲取數量的因素包括:
1)參與時間:挖礦越早獎勵越多,因爲釋放機制是遞減通縮,且挖出代幣總理恆定,永不增發 ;
2)報價礦工支付的手續費:礦工支付手續費佔總手續費比率越高,即 e/E,獲得的 NEST 越多;
3)競爭激勵程度:報價頻率越低,NEST 獎勵越多,假設已經 30 分鐘沒人報價了,前面大概累積了 150 個區塊的 NEST 獎勵,那麼此刻可挖出 150*360 枚 NEST。

其中,只有第二點「報價礦工支付的手續費」是礦工本身可以發揮主觀能動性去持續改善的,即讓自己支付手續費佔總手續費比率越高,獲得的 NEST 代幣越多,客觀上會導致 NEST 平臺上 ETH 資產規模越來越大。

由此可得出,每週一次的 ETH 收益分配有兩大決定性因素,分別是DeFi 協議調用 NEST 預言機支付的服務費規模和持幣人自己持有的 NEST 佔比。

在下游效用還未發揮出來時前者並不存在。由於預言機暫未開放給外部使用,預言機提供的價值還沒有轉化爲營收,不存在被 DeFi 協議調用的收益。但礦工對項目長期價值的預期,即相信預言機被 DeFi 調用的次數會不斷增長,會成爲項目的長期價值,這會增長礦工挖礦獲取代幣的驅動力,並增加長期持有 NEST 代幣的信心。

也就是說,NEST 的價格預言機將成爲 DeFi 生態中的有效解決方案,爲開放金融注入可持續價值,這是作爲 NEST 社區核心貢獻者的報價礦工們的普遍共識同時,也是長遠看中的關鍵點。

而後者則是一種激勵手段,要挖到更多 NEST 代幣的決定性因素則是不斷增加自己的報價資產規模,客觀上會促進平臺資產規模的增加,安全性增強,同時須持有 NEST 代幣才能領取系統收益分配,因此進一步減少拋售 NEST 代幣的行爲。

可以發現,NEST 設計者巧妙地將 ETH 收益池的價值和礦工對項目未來的期待綁定了起來,讓礦工有動力不斷挖礦,同時客觀上促進了平臺上的資產規模增長。

隨着成爲 DeFi 生態中基礎設施的一部分,NEST 作爲預言機用例的增長,會促進增長 ETH 收益池的增長,並帶動 NEST 代幣增值。

Bruce 告訴鏈聞,礦工意識到 NEST 這個代幣的價值,這纔是核心。

NEST 3.0 上線後,將會新增多種報價交易對,每一個交易對都有自己的代幣 nToken。也就是說,NEST 3.0 上每一種 ERC20/ETH 交易對都會有自己的報價軌道,調用該軌道的預言機則需要支付特定軌道的代幣 nToken,開通一個 nToken 軌道,需要進行拍賣,競拍資金爲 NEST 代幣。

此外,系統中還有一種守護者節點幣 NestNode,該治理代幣主要用於防範代碼層面的攻擊,一旦出現黑客攻擊影響到合約安全,可用來實現合約分叉治理。NestNode 總量恆定爲 1500 個,擁有 NEST 系統的投票治理權和 15% 的 NEST 挖礦收益權,持有者可以自由進行轉讓和交易。

也就是說,NEST 將成爲系統中其他代幣的唯一交易媒介,它可以和每個交易對的特定代幣 nToken 交易,也可以和守護者節點幣 NestNode 交易,還可以用於系統治理,以及系統每週 ETH 收益的分配權,這就像連通其他代幣的一個橋樑,將會產生越來越大的流動性。

Bruce 稱,這樣NEST 就是一個完全原生的鏈上資產,沒有任何中心化風險,這是一個系統工程。

6,匿名團隊

NEST 這個項目另一個特點是,這是一個由匿名團隊開發的項目,團隊核心成員不提供個人信息。

NEST 1.0 由一個匿名開發團隊於 2018 年 12 月 19 日發起,當時這還是一個抵押借貸的 DeFi 協議;升級後的 NEST 2.0 於 2019 年 11 月 30 號上線,這時產品方向做了調整,正式開始做 NEST 預言機。

目前,NestCore 開發者小組是一個純技術的研發小組,其中包括區塊鏈系統架構師、智能合約開發者、經濟模型設計師、交互設計師,並無其他人員。核心開發團隊拒絕接受採訪,稱自己是一個純粹的開發者小組,要求小組成員身份均匿名,此舉「只爲 NEST Protocol 去中心化發展之路掃清障礙」。

按照 NestCore 的開發計劃,NEST 將在近期上線在 NEST 3.0 版本,該版本將會支持任意的 ERC20 Token/ETH 的預言機報價。

目前 NEST 3.0 版本在 測試網已經上線,同時也將該版本的合約代碼進行了開源。

綜上,NEST 設計了一個履行多種功能的多代幣系統,通過多代幣系統尋求功能上的解耦,這會整個系統更加安全,包括解決功能代碼漏洞的投票治理 NEST 代幣、解決治理資產關聯合約漏洞的分叉治理代幣 NestNode ,以及每一個特定報價交易對的數種費用代幣 nToken,而這所有代幣想要交易都需與 NEST 代幣掛鉤,這讓系統中所有流動性都嫁接到其核心資產 NEST 代幣上,從而讓 NEST 代幣成爲一種沒有中心化風險的原生鏈上資產。

對於一個具有長期使用價值的項目來說,在早期價值還沒凸顯出來時,NEST 採用了「收益權模型」進行初始代幣分發,同時巧妙地引入了一種共識範圍更廣的外生資產 ETH 作爲系統收益獎勵,可讓礦工更有動力參與系統貢獻,降低參與風險。

同時,礦工持有 NEST 才能獲得 ETH 收益分配,而獲得 ETH 則有賴於長期生態價值的增長和本身提供的資產規模,這可刺激資產規模的增長,並進一步提升系統的安全性,從而漸進式實現以用例支撐的預言機長期價值上,最終從「收益權模型」過渡到「使用權模型」。

從截止當前的運行效果和設計機制來看,NEST 基於一種博弈機制激勵礦工在鏈上生成了真實有效的價格事實,解決 DeFi 所需的鏈上價格數據缺失的難題,該機制可防止惡意報價,真實反映鏈下市場中的公允價格,或者說無限接近公允價格,這可爲 DeFi 生態提供價值具有可持續發展的潛力。長遠來看,可爲 NEST 代幣的價值提供支撐。

目前來看,NEST 預言機的安全仍需要更多礦工加入。越多礦工加入,才能越好保證安全。NEST 有一個鏈式防攻擊策略,隨着驗證者報價規模越大,作惡者成本會成幾何級數增長,陷入攻擊死亡螺旋,最終攻擊失敗。

但和所有無需信任的網絡一樣,沒有百分之百的安全,既然惡意吃單對手方是整個市場礦工,那麼這就意味着需要更多礦工加入,才能維持最大限度的安全,也就是說,NEST 共識越大,NEST 網絡越安全。這也是 NEST 系統必須要實現網絡效應,纔會更具魯棒性的原因。

聲明:目前 NEST 代幣未上架任何中心化或去中心化交易所。本文作者及鏈聞團隊也未持有 NEST 代幣。儘管很想持有,但是買不到。