撰文:雷達熊,DODO創始人
一個有效的市場包含巨量信息,這些信息承載了市場對價格的判斷。但是鏈上計算資源有限,要在鏈上實現一個高度靈活的市場,就好像要把大象塞進冰箱。
把大象塞冰箱這種事情并不罕見,互聯網歷史上已經有過幾次壯舉。例如圖像壓縮,音頻壓縮。
壓縮的本質是提取最重要的特征,拋棄不重要的細節信息。
那么,一個市場最重要的特征是什么,是流動性。流動性可以表示為一張深度圖。
從下圖我們看到,深度圖可以抽象為兩個三角形,而描述這兩個三角形,只需要中間價和斜率即可。
OP Mainnet排序器將于8月29日凌晨升級,預計停機五分鐘:8月25日消息,Optimism 宣布將于北京時間 8 月 29 日 1:00 升級 OP Mainnet 排序器,以實現零停機(zero downtime)部署。屆時預計 OP Mainnet 將出現五分鐘的停機時間。[2023/8/25 10:02:01]
我們盯住右邊的賣盤梯形深度,它的最大特點是,被買走的BaseToken越多,價格越高。因此,這種線性深度可以表示為
其中i是第一個參數「midprice」,k是第二個參數「slope」。
B表示當前的BaseToken庫存,B0表示初始BaseToken庫存,(B0-B)/B0用來表示有百分之多少的BaseToken被消耗掉了。
這一公式可以使得價格隨著BaseToken被賣出的數量線性增長。
但是,線性真的是描述流動性最好的方法嗎?并不是,線性描述有兩個局限:
行情 | FUC近十五分鐘內漲幅15.51%:據FUBT交易平臺數據,FUC近十五分鐘內漲幅15.51%,報收于1.28FBT,請注意控制風險。據介紹,FUC依托于FUBT全球生態,致力于構建行業產業發展及資源管理服務為一體的生態空間。FUC恒定發行總量1億,流通時間始于2017年6月。非小號數據顯示,FUBT平臺僅2019年共回購銷毀5100萬FUC,銷毀完成后FUC的流通總量縮減為4900萬,占原有發行規模的49%。[2020/1/28]
真正的市場,大部分流動性集中市場中間價附近,而線性描述并沒有反應這種不平衡的分布。即使價格遠遠偏離市場中間價,也應該有流動性,而線性描述下的價格是有上下限的。我們為價格曲線引入了非線性。在不擴充參數的前提下,使深度分布更符合市場規律,靈活度更高。
行情 | 以太坊價格十五分鐘內上漲5.8%:根據huobipro數據顯示,目前以太坊價格出現短時間大幅上漲,十五分鐘內價格由278.61美元上漲至294.80美元,價格漲幅達到5.8%。[2018/8/22]
最簡單的非線性解決方案,就是使用乘法而非加法。
這個公式可以滿足隨著B的減小,P不斷增大,直至無窮大。但是要怎么把斜率的影響加進去呢?
這就需要對B0/B這一項做改造了。B0/B≥1,我們用一個參數對其進行縮放,在保持此數值大于等于1的同時,可以控制它「大于1的程度」。
上式中,k的取值范圍是,決定了價格的斜率。
當k=0時,價格完全不變當k=1時,價格斜率退化到上一個版本的公式k越大,價格變化越敏感。k越小,價格變化越不敏感。但是還有一個小問題,這里的P是邊際價格,對邊際價格的積分才是用戶需要支付的資產數量。上式中,B0/B這項積分后出現了對數函數,這會使后續計算變得很復雜。為了避免這一麻煩,我們再進一步:
行情 | BTC五分鐘內下跌1.05%:BTC五分鐘內下跌1.05%,下跌金額為78美元,其中火幣PRO上現價為$7343.71,請密切關注行情走向,注意控制風險。[2018/7/18]
在B0/B外面加一個平方項,這樣積分后就變成了一個簡單的除法。
令人驚嘆的是,當k=1時,這條曲線正是AMM所定義的bondingcurve。這種巧合使我們相信,這是一套更加觸及市場本質的算法。
同理,對于左半邊的深度圖,我們用對稱的做法,將basetoken替換為quotetoken,將乘法替換為除法:
我們將左右兩邊的深度圖結合起來,就得到了PMM算法的完全版本,整理一下:
PMM算法是對Orderbook市場的高度壓縮,參數簡單,卻極度靈活。
BTC五分鐘內上漲1.0%:BTC五分鐘內上漲1.0%,上漲金額為64美元,其中火幣PRO上現價為$6449.74,幣安價格$6452.67,OKEx價格$6456.73,請密切關注行情走向,注意控制風險。[2018/6/17]
這使得我們在冰箱如此狹小的空間內,擁有了堪比大象的能力。
下面我來列舉,通過調整參數和充提規則,這套算法可以實現哪些usecase。
UseCase1跟隨外部市場價格的主動做市
這一usecase的應用場景是擁有巨大外部市場的主流幣,例如ETHBTC等
PMM可以實現主動調整盤口價格,減少IL。獲得比AMM更高的資金利用率,并且持有單幣種就能提供流動性
設置如下:
將價格i設置為外部市場價格將k設置為小于1的數字允許任何人單邊充提這一UseCase我們稱之為DODOClassicPool。
UseCase2輕資本需求的自動做市算法
這一usecase應用于沒有主觀定價能力的長尾幣市場,將定價權完全交給taker
通常來講,長尾幣都是新資產,在AMM框架下沒有足夠的賣盤流動性,因而導致其流動性長期匱乏
設置如下:
將價格i設置成起始發行價任意設置k第一筆充值可以以任意資產比例,且不改變市場價后續充值必須按照當前資產比例同時操作兩種資產這一UseCase我們稱之為DODOVendingMachine。
UseCase3完全自由的做市算法
這一usecase為那些雄心勃勃,想要大展拳腳的做市商準備。
在此usecase下,資金池的全部資金都歸做市商所有。所有參數都可以調整,做市商可以根據他的判斷為資產靈活定價。同時做市商可以任意充提單一幣種,而不影響市場價格。
例如:
在ETH=700USDT附近做市,使用很小的k獲得非常有競爭力的流動性,并賺取大量手續費。當察覺到ETH有上漲預期時,撤出ETH庫存以減少單邊風險。但這一操作并不削弱買盤流動性。新資產發行項目方只提供代幣而不提供資金。在1$開始銷售代幣。為了讓更多人以合理價格買到代幣,設置了較小的k,使得代幣上漲溫和。隨后項目方發現需要使用資金,則可以直接提出資金池中的資產,而不損害賣盤流動性,即用戶仍然可以買到大量廉價代幣。設置如下:
這一UseCase我們稱之為DODOPrivatePool。
UseCase4流動性眾籌
我們可以將新資產發行分為兩階段:
不開啟現貨交易,所有參與發售的人都以相同的價格獲得代幣以上一階段的結束價格開啟現貨交易,使用上一階段剩余的代幣和資產建立DODOVendingMachine這一UseCase我們稱之為CrowdPooling。
UseCase5退化為AMM
當滿足以下條件時,PPM算法表現和AMM相同。
這也意味著,AMM是PMM的一種特殊情況。推導過程如下:
AMM的價格公式是xy=k,其中k是常數,x、y則分別代表兩種代幣的數量。為了避免字母上的歧義,我們把AMM公式中的恒定乘積定義為Const,并將其改寫為y=Const/x。
其中y代表quotetoken庫存,x代表basetoken庫存,價格可以寫為對y求導。
接下來回到k=1的PMM公式,我們可以將其寫成:
我們發現,PMM價格公式的分子上為常數,分母為basetoken的庫存。只要令
AMM的定價公式,與PMM的定價公式就一致了!
UseCase6穩定幣交易
設置如下:
算法表現可以與curve相同,并且更靈活,可以比curve更接近剛性兌換,或更接近AMM。
我不認為以太坊是山寨幣——因為它確實有創新之處,也確實解決了個實際問題。以太坊的野心很大,它不再滿足于自己“只是一個賬簿”,它想成為一個”分布式計算機“——概念好像比”數據庫“大多了!1994年.
1900/1/1 0:00:00波爾圖全名叫“波爾圖足球俱樂部”,外號“巨龍”,成立于1893年9月28日,創始人是葡萄酒商人安東尼奧·德阿爾梅達.
1900/1/1 0:00:00馬航事件已過去很久了,大陸、馬來西亞和澳大利亞決定在印度洋進行搜尋的新階段,馬航客機的飛行路線將被重新檢查評估,但MH370的陰謀論卻在這時候又傳出,而曾在4任總統任期.
1900/1/1 0:00:00當加密愛好者和投資者打算投資加密貨幣時,他們通常會重點關注加密貨幣的長期發展。這是必不可少的,因為除非您是尋求短期投資的日常交易者,否則您的投資必須取得成功.
1900/1/1 0:00:007月30日,第13期賽迪全球公有鏈技術評估指數發布,互鏈脈搏授權首發。本期公有鏈技術評估指數調研期間,比特幣價格重回高峰,因此帶動比特幣排名上升.
1900/1/1 0:00:00ADA、SOL和MATIC連續放置了兩個每日紅色蠟燭。Polygon(MATIC)創下一年新低,而SHIB創下兩年新低。加密貨幣市場在過去24小時內下跌5%至2個月低點.
1900/1/1 0:00:00