撰文 | Banach

時間| 2021.01.24

出品| NEST愛好者(nestfans.com)獲作者授權發布


大家在開發DEX 的時候,本質是設計一個交易算子,這個算子可以是線性,也可以是非線性,同樣大家在設計利率算子的時候,本質上也是在設計一個交易算子,同樣存在線性和非線性的區別。但這種區別,大部分人還不容易理解。


線性的含義,是指我們在完成交易的時候,使用了均衡價格,交易只是在這個價格下,資產組合的一種簡單的線性變換。為何在這個時候要線性,因為使用了均衡價格理論上接受了無套利假設,在這種情況,合理的金融交易都是線性的,如果出現非線性的結果,比如STP = Y 中,T 是非線性的,那麼得到的Y 就是不可定價資產組合,或者說是存在套利機會的資產組合。原則上使用了預言機的交易模型,其交易算子應該是線性的,否則會被套利。換個角度來說,只要是完備市場,定價有效的情況下,只有線性的交易算子才會無套利。


但線性代表一個特徵:任意池子都是平等且該算子無法token 化,因為被複製後完全一樣。這裡需要提一句,所謂的協議在鏈上捕獲價值和token 化是一個概念的兩個表達方式,就是這個協議具備了某種構建新均衡的能力,如果只是在已有均衡上做線性變換(為了無套利,只能如此),則是不可能捕獲價值的。想像一下,當每個鏈上資產都接受給定的均衡價格的時候,這些資產完成交易,在哪個合約裡都是等價的,不需要在指定的合約內完成,因為這些交易都是簡單的線性變換,那麼任何一個交易合約或者交易算子都是不可能捕獲價值並token 化的。在不考慮自動對沖的情況下,複製一張CoFiX 合約,可以完成和CoFiX 完全一樣的功能,所謂的流動性分散在哪張合約裡都是不重要的(不考慮GAS ),鏈上是一個完全開放的世界,線性變換意味著處處等價。


如果採用非線性交易算子就不一樣了。這個時候,按照上面的分析,是不需要預言機的,非線性算子試圖完成三件事:定價、交易和沈淀價值(token 化)。由於非線性交易算子在設計上更加開放,因此原則上可以設計成與規模相關的自增強屬性從而沉澱價值(CoFiX 就不需要這一點,關於CoFiX 如何token 化,見後面觸發算子),這就帶來幾個問題:其一是當市場逐漸完備時,非線性交易算子本質上是在極小的交易規模裡擬合線性算子;其二是當市場不完備時,這種非線性交易算子的設計,成本和效率是否足夠?其三是非線性的價值輸入由誰來提供?這種價值輸入是否會在線性交易算子的競爭下逐漸流失?


前面提到,當市場完備的時候,無套利的交易就是線性的,因此非線性算子在完成交易的時候,其合理性完全取決於市場有效性,一旦市場足夠完備,那麼採用非線性交易算子的合約,本質上是在極小區間裡擬合線性算子。我們看到當前很多AMM 採用了所謂的固定乘積的交易模型,XY = K ,這是一個典型的規模相關的非線性交易算子,即只有當做市商池子足夠大時,局部模擬線性交易才成為可能,也就是如果AMM 的交易對像是完備市場的話,其核心意義在於規模效應後擬合的有效性(套利損失小),這種有效性並不是很本質,相比較之下CoFiX 更加本質和自然。


之所以如此,是因為很多人希望把定價權放在鏈上,這是一種錯覺,因為當市場完備的時候(簡單的說就是供給需求極其巨大,沒有人能操縱市場),中心化交易所的優勢就非常明顯了,或者更本質一點,鏈上每個行為都是拍賣後的產物,這和定價交易服務的需求差距太大,定價交易是一種極致的活動,即使正常的中心化交易所都對計算存儲和通信提出了最高要求,何況鏈上的離散性和拍賣屬性,這是不能用於完備市場的有效定價的。那換成不完備市場呢?比如那些大家常說的尾部資產?新項目?這個時候,核心的問題不在被套利,或者說不存在這樣有效性的檢測和需求,那這個時候的需求應該是快速低成本形成價格並完成較大量的交易。約束條件主要是兩個成本:快速形成價格的成本,完成較大規模交易的成本。注意這裡的成本不是營銷成本、流量成本,而是純粹交易算子內生成本,以XY = K 這樣的交易算子為例,這種成本包含在AMM 資金池形成的成本和滑點的相關性裡,這種內生的成本、效率區分出各種交易算子的價值。


除此之外,一個重要的問題是,這些非線性交易算子同時把定價和交易放在一起,還需要經受接受預言機(價格算子)的線性交易模型的競爭,這種競爭下,至少交易效率是完全不能對比的:預言機下的交易算子交易效率遠遠超越非線性交易算子。剩下的可比較的優勢,就是定價成本和效率,這一塊可以展開深入和全面的研究,但直覺上也是線性算子處於優勢。


繼續討論非線性交易算子的第三個問題,價值輸入問題這個問題也非常致命,如果從完備市場來說,一定是有大量的小額交易(擬合線性算子)輸入價值,從而補償非線性算子在均衡價格波動時候的套利損失,這種約束條件是非常苛刻的,因為大量的小額需求(相對AMM 池子,或者池子足夠大,一切普通交易相對看起來很小)往往會因為鏈上邊際成本增加而被淘汰出市場,等於長期來講不利於這種鏈上算子的生存。如果市場是高度不完備的,確實存在大量不在乎價格滑點的交易者,那麼任何非線性算子都可以實現這一交易需求,這裡面重要的反而是盡可能大量的完成交易(價格不敏感) ,這又變成類線性模型,比如在穩定幣的交易上,不得不改變XY = K 的模型,讓非線性的特性降低,對於沉澱價值不利。


從以上三個特點上來看,交易算子的非線性化並不是一個有價值的方向,或者說在鏈上沉澱去中心化價值的協議群裡,非線性交易算子並不是我們要去尋找的那一類非線性算子:交易就不應該這樣做。有意思的是前面提到了利率算子,也是一個交易算子,這個算子和純粹的二級市場買賣交易略有差異,這種差異源於利率套利的困難性:沒有足夠的期限結構交易市場讓你去實現套利。這也是為何很多人認為鏈上做借貸比做交易更靠譜的原因,並不是因為什麼本質的理由,而是因為套利有效性或者套利難度導致的。目前區塊鏈上的利率市場十分稀薄,還沒有交易到有效的地步,這個時候又沒有好的利率預言機,因此用非線性算子給利率進行定價,就存在一定的價值,但這種價值是一種權宜之計,並不是什麼本質創新。


非線性交易算子也是可以進行改進的,這種改進需要引入遞歸信息,即歷史成交信息中捕捉一些有價值的成分,從而降低套利風險,這一部分目前市場研究的非常少,但是已經有很多人意識到可以基於遞歸算子和非線性交易算子結合來降低當前DEX 的所謂無常損失等等,這些思想並不困難,困難的是對每個算子背後的核心風險進行深度分析,並對交易目標清晰建模,這是NEST社區致力的方向:將所有的金融服務統一在算子理論下,得到更多有效的數學方程,讓產品設計更加有效和完整,推動鏈上金融世界的發展。