比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > TUSD > Info

深度解析:自動做市商(AMM)算法的數學原理及其未來發展_SWAP

Author:

Time:1900/1/1 0:00:00

作者:LeoLiu,GuangwuXie

翻譯:VanessaCao

校對:LeoLiu,GuangwuXie

排版:JaneHu

感謝:FangyuanZhao,ShowenPeng,DW,LianxuanLi,DaveWhite,DanRobinson,VanessaCao,JaneHu

本文由星際密探和DachaleResearch戰略合作伙伴BTXCapital獨家授權星際密探發布,在本文中,我們將首先回顧由Bancor、Uniswap、Balancer和Curve協議實現的四種自動做市商(AMM)算法。還將討論AMM算法的最新發展、可能的改進和未來。

由于本論文過長,本文總共分為上、中、下篇闡述自動做市商算法、現狀及未來迭代的思考。。

目錄

BancorNetwork的聯合曲線概念和交易公式

Uniswap的無常損失計算?

當價格變動在2ρ之間時的正向收益

流動性分布、流動性注入、UniswapV3范圍訂單

Balancer的做市函數和交易公式

智能訂單路由算法

......

BancorNetwork的聯合曲線概念和交易公式:

Bancor1利用聯合曲線的概念來確定價格。聯合曲線是代幣價格與其總供應量之間的關系。

Bancor1?

BancorProtocolContinuousLiquidityforCryptographicTokensthroughtheirSmartContracts

https://storage.googleapis.com/website-bancor/2018/04/01ba8253-bancor_protocol_whitepaper_en.pdf

江卓爾:去中心化網絡硬件能支撐的TPS不夠,因此DEX深度不足&滑點損失問題無法避免:江卓爾發微博表示,1、為什么uniswap上的成交量越來越低了?本質上還是去中心化網絡硬件能支撐的TPS(每秒交易次數)不夠,因此Dex(去中心化交易所)深度不足&滑點損失問題無法避免。

2、世界上最重要的就是守恒定理,損失不可能憑空消失。AMM做市商(流動性挖礦)只是把用戶的滑點損失,轉化為農民的無常損失,因此又必須給農民發交易所“股權 / 代幣 / 分紅”,進而形成了一波龐氏資金盤。

3、但當龐氏破滅時,Dex還是不可能解決TPS不足的致命問題,因此Dex只能作為Cex(中心化交易所)的補充,去填補無法在Cex上幣的大量代幣的長尾市場。

4、在互聯網絡基礎硬件TPS再提升100倍之前,Dex不可能挑戰,更不用說取代Cex,這才是真相。

5、但注意把Dex和DeFi(去中心化金融)區分開來。DeFi有前途的賽道,是那些既需要去中心化,又對TPS要求不高的賽道,例如抵押借貸。

你讓一個交易員掛單一次付1元主鏈手續費,撤單一次再付1元,他肯定受不了,但讓一個抵押借貸者付1元主鏈手續費,那是完全可以接受的。并且去中心化可以解決抵押借貸商家跑路的風險,這是絕對的剛需。[2020/10/25]

聯合曲線BondingCurve:

聯合曲線模型可以理解為描述“代幣買賣價格”與“代幣發行總量”之間的函數關系,可以由智能合約以去中心化的方式自動執行。

https://medium.com/linum-labs/intro-to-bonding-curves-and-shapes-bf326bc4e11a

BancorNetwork選擇的不變量是F,稱為連接權重。在第一個表達式中R是指流動性池中的儲備代幣數量,S是流動性池外的BNT總供應量,P是BNT和儲備代幣的相對價格。我們可以代入P的方程,對兩邊積分2得到P和S之間的關系。這是一個指數表達式,其中指數α與連接權重F有關。F越小,α越大,這意味著價格相對于BNT的總供應量變化得更快。

CoinBene滿幣與螞蟻社區達成深度合作:據官方消息,CoinBene滿幣與螞蟻社區達成深度合作,特邀螞蟻社區旗下兩位金牌分析師白子老師、黑子老師,入駐成為滿幣合約跟單交易員。并進行直播分享講解。直播主要分享各種分析理念,如波浪理論、裸k戰法等的實戰應用,深入淺出,將理論落實到實際,旨在提升投資者的技術分析水平。直播為期一個月,周一到周五,每天三堂課。7月27日19:00 螞蟻社區首堂課《如何用K線驗證趨勢行情》用戶可在一直播觀看,據了解,白子老師,螞蟻社區聯合創始人;黑子老師,螞蟻社區旗下基金技術總監。[2020/7/27]

兩邊積分2

FormulasforBancorsystem

https://drive.google.com/file/d/0B3HPNP-GDn7aRkVaV3dkVl9NS2M/view?resourcekey=0-mbIgrdd0B9H8dPNRaeB_TA

使用這個表達式和簡單的積分,我們可以導出T和E之間的關系,其中R0,S0是R和S的當前值。

如果我們想在代幣A和代幣B之間交換,則將代幣A出售給代幣B。我們首先需要使用代幣A從池A購買BNT代幣。接下來,我們需要使用BNT從池B購買代幣B。下面是計算我們將收到多少代幣所需的精確公式。代幣A和代幣B之間的相對價格可以用BNT代幣和代幣A/B之間的相對價格表示。

優點:Bancor允許在某些池中進行單邊流動性的注入,這由Bancor治理決定。可以存入多少單邊流動性是有限制的,這也是由Bancor治理決定的。在限額內,當用戶以其他代幣的形式存入單邊流動性時,Bancor將補充等值的BNT代幣。這使得用戶提供的有效流動性加倍。如果達到限額,如果人們想要存單邊流動性,就得等有人提取單邊流動性,或者有人把BNT做為單邊流動性注入。

Bancor協議以BNT部分賺取的手續費補償用戶在存入單邊流動性時的無常損失。如果交易費用不能完全補償無常損失,Bancor將鑄造BNT以確保無常損失為零。因此,流動性提供者如果將流動性存入一定的時間,就可以享受穩定的收入。

OKLink同HiCoin達成深度戰略合作:據OKLink官方消息,OKLink同HiCoin達成深度戰略合作,雙方已在技術與生態層面展開深入合作。HiCoin以數字貨幣錢包解決方案為核心,提供全生態整體服務體系。經過2年的發展,已經累積了超100家錢包客戶服務經驗,覆蓋十余個行業,提供三大解決方案:全功能錢包解決方案、資管管解決方案、綜合支付解決方案。

OKLink區塊鏈瀏覽器是由區塊鏈大數據上市公司打造的信息服務應用,旨在呈現快速、精準、全面的鏈上數據,為用戶提供專業化、個性化的數據分析服務。[2020/3/31]

缺點:如上所述,所有交易都需要BNT代幣作為中介。因此,我們將經歷兩次滑點。由于相同的原因,所有流動性池都由BNT和另一個代幣組成,因此缺乏多樣性。BNT代幣價格也可能受到影響,因為需要彈性供應才能實現無常損失補償和單邊流動性存款。

Bancor引入了連接代幣BNT的概念,它連接到所有具有不同連接權重的代幣,對應不同決定價格的聯合曲線。

Uniswap的無常損失計算:

Uniswap使用恒定乘積做市商(CPMM)來決定價格。在我們深入研究UniswapV2和V3使用的算法之前,讓我們先了解什么是無常損失(IL)以及如何計算它。

恒定乘積做市商(CPMM)

ConstantProductMarketMaker

強制要求兩種資產儲備量的乘積必須始終保持不變x*y=k

https://ethresear.ch/t/improving-front-running-resistance-of-x-y-k-market-makers/1281

無常損失

ImpermanentLoss

是指資金在流動性池中面臨的損失。

https://finematics.com/impermanent-loss-explained/

動態 | 雄安中院將積極推動區塊鏈等現代科技成果與司法工作深度融合:據法制日報報道,雄安新區中級人民法院公開開庭審理了上訴人中國平安財產保險有限公司保定中心支公司與被上訴人凌某、王某機動車交通事故責任糾紛一案,雙方經合議庭調解達成協議。今后雄安中院將積極推動5G、人工智能、大數據、區塊鏈等現代科技成果與司法工作深度融合,不斷提升審判質量和效率,讓新區百姓享受到更高水平的司法服務。[2019/3/6]

如果AMM函數是凸的,那么沒有交易費用補償的單筆交易總是會導致流動性提供者賠錢。假設一筆交易導致AMM函數從點1移動到點2。點1和點2的現貨價格是P1和P2。P3為實際交易價格。由于凸函數的性質,P1>P3>P2。無常損失定義為交易后池中流動性提供者代幣的當前價值與流動性提供者的代幣當前價值之間的差值,如果他只是持有他的代幣而不將它們用于流動性提供,則表示為V和Vheld。為方便起見,無常損失和價格將以代幣Y表示。經過一些簡單的推導,很容易證明無常損失總是小于零。

Uniswap3V2使用一個簡單但功能強大的公式來確定交易。池代幣儲備數量的乘積是一個常數。與Bancor相比,它擺脫了連接代幣的依賴。交易完全由流動性池中的代幣數量決定。

Uniswap3

UniswapV2Core

https://uniswap.org/whitepaper.pdf

由于此函數的性質,池中兩個代幣的價值將始終相同。

使用相同的邏輯,不難計算UniswapV2中單筆無手續費的無常損失。假設交易將價格從P更改為Pk。以百分比衡量的無常損失可以單獨表示為k的函數。

毫不奇怪,這個函數總是小于或等于零,正如我們從上面沒有費用的無常損失圖中可以看出的。如果在對數空間中繪制橫軸,則IL(k)將是對稱的。結論是:相對價格變化越大,無常損失就越大。這可以解釋為流動性提供者的更有價值的代幣從池中被買出,留給他們更多價值較低的代幣。

中國軟實力宣布將與TenYun項目展開深度合作:2018年1月11日,TenYun項目在香港啟動其全球路演的首站,并開始平臺原生代幣TYC(TenYun Coin)的首發私募活動。香港上市公司中國軟實力也宣布將與TenYun項目結緣,共同就研發區塊鏈技術及探索區塊鏈技術在金融業的應用上展開深度合作,與TenYun項目發起方——CTOP Blockchain Technology Inc簽署戰略合作框架協議。根據路演首站透露出的信息,TenYun項目由金融及區塊鏈領域的團隊共同打造,該項目采取完善的實名制區塊鏈技術,打造了TENYUN Blockchain作為底層協議技術的框架,建立起與全球實體機構和數字資產交易機構的合作模式。[2018/1/12]

當價格變動在2ρ之間時的正向收益:

接下來,讓我們看看如果我們添加交易費用,IL(k)會如何表現:

導出的無常損失函數IL(k,ρ)看起來與無費用的無常損失函數非常相似。我們可以通過將ρ設置為零來進行合理性驗證,得出相同的結果。典型的UniswapV2費用百分比為ρ=0.3%。在繪制無常損失函數時,我們可以看到在大約k=0.994到1之間有一個高于零的部分。在該地區,無常損失是正的,這意味著流動性提供者實際上獲得了價值。通過引入交易費,當價格在一定范圍內波動時,流動性提供者將獲得正收益。

當價格變動更加波動時,流動性提供者似乎總是會出現虧損。然而,實際情況并非如此。我們知道DaveWhite4等人解決了這個難題。遺憾的是,它超出了這篇介紹性論文的范圍。我們打算在未來進一步研究這個問題。

DaveWhite4

Uniswap’sFinancialAlchemy

https://research.paradigm.xyz/uniswaps-alchemy

至于其他流行的AMM算法的無常損失推導,我們向讀者推薦JiahuaXu?等人的這篇論文。這些推導將是下一次的主題。

JiahuaXu?

SoK:DecentralizedExchanges(DEX)withAutomatedMarketMaker(AMM)protocols

https://arxiv.org/abs/2103.12732

優點:第一個用池中代幣數量的凸函數來確定價格。

缺點:流動性供應均勻分布于所有價格范圍,這意味著資本效率較低。

流動性分布、流動性注入、UniswapV3范圍訂單:

為了提高流動性效用并降低無常損失風險,Uniswap?V3允許用戶僅在特定價格范圍內提供流動性。

Uniswap?

UniswapV3Core

https://uniswap.org/whitepaper-v3.pdf

FromUniswapV3whitepaper

這是通過對UniswapV2函數進行平移來實現的:

FromUniswapV3whitepaper

將函數向下平移a點的y值,向左平移b點的x值,如上圖和等式所示,確保a和b之間的有效交易結果,就像我們使用綠色曲線作為我們的價格決定函數。當價格超出此范圍時,其中一個代幣儲備將被售罄,從而有效地將流動性集中到此價格范圍內。

DanRobinson?發表了一篇關于計算多個AMM的流動性分布的優秀論文。

DanRobinson?

UniswapV3:TheUniversalAMM

https://www.paradigm.xyz/2021/06/uniswap-v3-the-universal-amm/

也可以簡單地證明,兩個流動性提供者在同一價格范圍內的流動性可以簡單地加在一起。

在存入流動性時,如上所示,UniswapV3中每個資產的價值不一定相等。只有當P等于Pa和Pb的幾何平均值時,每個資產的價值才相等。當P小于幾何平均值時,資產X的價值大于資產Y的價值。當P大于幾何平均值時,資產X的價值小于資產Y的價值。

當當前價格完全超出流動性提供者設定的價格區間時,UniswapV3將流動性提供者的輸入算作范圍訂單(RangeOrder),只允許其存入一種代幣。例如,考慮一個由ETH和Dai組成的流動性池。如果設定的價格區間完全高于ETH的當前價格,則只允許用戶存入ETH。如果價格區間完全低于ETH的當前價格,則只允許用戶存入Dai。當價格完全越過流動性提供者設定的價格區間時,他存入的資產將全部轉換為另一種的代幣。由于用戶只能存入一種代幣,范圍訂單只能實現傳統限價訂單中四分之二的訂單。另一方面,買入止損訂單和止損訂單無法實現。截至目前,我們不知道限制范圍訂單代幣類型的目的是什么。

范圍訂單

Range?Orders

本質上并不是真正的訂單,而是LP向資金池某個特定價格點提供的聚合流動性。雖然不是真正的訂單,但「范圍訂單」所表現出的特性,卻很好地模擬了限價單的基本功能。

https://docs.uniswap.org/protocol/concepts/V3-overview/range-orders

優點:UniswapV3引入了流動性分布的概念,允許其用戶在價格范圍內存入流動性。通過集中流動性,提高資本效率。當存入相同價值的資產時,可以獲得更高的流動性和更低的滑點。在某個價格范圍內提供流動性也在某種程度上降低了無常損失的風險。

缺點:用戶在進行范圍訂單時只能存入某些類型的代幣。因此無法實現買入止損訂單和止損訂單。

UniswapV2和V3在其AMM算法中引入了CPMM和流動性分布。提供價格范圍內的流動性本質上使UniswapV3成為一個通用的AMM,能夠通過改變其流動性分布成為任何可能的AMM。

Balancer的做市函數和交易公式:

Balancer?將UniswapV2的雙代幣池擴展到多代幣池。Balancer池中每種資產的價值都持有一個不變的權重,加起來為1。不難證明,這相當于每種資產的儲備數量的冪乘積是一個常數。資產n相對于資產t的價格也可以導出為資產t和n的儲備數量之間的比率,通過它們的權重進行歸一化。

Balancer?

Anon-custodialportfoliomanager,liquidityprovider,andpricesensor

https://balancer.fi/whitepaper.pdf

基于常數不變式,我們可以求導出有不同輸入值的交易公式。在這種記法標準中,資產o始終是買出的資產。資產i是賣出的資產。A和B是打入/接收的代幣和當前的代幣儲備數量。我們還可以根據價格的變化計算打入的代幣或買出的代幣數量。

智能訂單路由算法:

Balancer還引入了智能訂單路由(SOR?)算法。

SOR?

SmartOrderRouterV2

https://docs.balancer.fi/developers/smart-order-router

來源:https://docs.balancer.fi/v/v1/smart-contracts/sor/

該算法的總體思路是將一個訂單分成幾個小塊在不同的Balancer池中進行交易,以獲得更好的交易結果。假設我們要在代幣池1和代幣池2進行交易,如果我們要交易的總金額N低于上圖中的A,我們將只在代幣池1進行交易,因為代幣池1的價格總是比代幣池2價格好。如果總金額超過A,我們將部分訂單在代幣池1中交易,部分在代幣池2中交易。在每個代幣池中交易的數量將使每個池中的價格相等。

很容易證明最優策略總是使每個池中的價格相等的策略。

價格函數,相對于交易量,通常是一個非線性函數。Balancer將價格函數簡化為線性函數。如果有n個代幣池,最優策略可以表示為:

如果存在一個價格函數總是大于或小于范圍(0,N)的其余價格函數,則應從上述計算中刪除該價格函數和相應的池,以確保結果有效。如果價格函數總是較小,那么顯然的最佳策略將是在該池中交換所有代幣。

在這個計算中,不用考慮gas費用。實際上,最優策略應該是在路由收益和gas費用損失之間保持平衡。

SOR算法,我們相信可以在更廣泛的背景下使用。例如,價格函數可以是其他AMM協議池的函數。由于我們目前知識的限制,我們不確定實際的AMM聚合器是否使用相同的邏輯來實現更好的價格。沒有任何價格函數近似的更通用的解決方案將在本文后面討論。

優點:Balancer將2個代幣池推廣到多個代幣池,并引入SOR算法為其用戶實現更好的價格。

缺點:“流動性池的強度取決于其最弱的資產。”一個池中的代幣類型越多,風險就越高。

Balancer是一種多代幣投資組合管理工具,允許靈活的代幣價值分配,具有價格優化算法。

由于本論文過長,Curve的討論及后續內容將于中篇和下篇公布。

Tags:ANCUNIUniswapSWAPHifi FinanceUniftyUniswap WalletKLAYswap

TUSD
Gate.io Startup首發上線Opulous(OPUL)及免費分發規則公告(免費瓜分800,000個OPUL)_GAT

關于Gate.ioStartup免費空投計劃為回饋平臺用戶,Gate.io上線“免費空投計劃”,在Startup區不定期進行區塊鏈項目的免費空投計劃.

1900/1/1 0:00:00
Gate.io 即將首發上線handle.fi(FOREX)交易的公告_Gate.io

Gate.io將于2021年9月27日12:00上線handle.fi(FOREX)交易。handle.fi是一個去中心化的多幣種穩定幣協議,允許用戶創建和交換多幣種穩定幣;稱為fxToken.

1900/1/1 0:00:00
Gate.io首發上線NASDEX (NSDX)及分發規則公告(空投120,000 NSDX)_GATE

關于Gate.io免費空投計劃為回饋平臺用戶,Gate.io上線“免費空投計劃”,在Startup區不定期進行區塊鏈項目的免費空投計劃.

1900/1/1 0:00:00
關于去中心化存儲,你只知道Web3.0?_ARY

相信大家對Web3.0這個詞一點也不陌生了,但是近期推出的Estuary存儲是什么呢?這兩者又有什么區別呢?以下就為大家簡單介紹一下這兩者的相關內容以及他們的區別所在: Estuary存儲 Es.

1900/1/1 0:00:00
ZBG關于部分幣種暫停提幣的公告_HEC

公告編號2021092401各位關心ZBG的投資者們和項目方:CAPT.SVT.CLU.XMPT.SAFEMOON,NFG,DFL-BEP20因錢包維護暫停提幣,具體開放時間以公告為準.

1900/1/1 0:00:00
ZT創新板即將上線SHI_BKS

親愛的ZT用戶: ZT創新板即將上線SHI,并開啟SHI/USDT交易對。具體上線時間如下:充值:已開啟;交易:2021年9月25日17:00?; SHI ZT創新板即將上線ABBKS:據官網公.

1900/1/1 0:00:00
ads