在閱讀本文前建議先閱讀SynthetixLitepaper和一文讀懂Defi熱門項目Synthetix。這里先簡單的介紹幾個術語,Synthetix是一個Defi項目的名稱,SNX是一種擴展了ERC20協議的代幣,也是Synthetix的激勵代幣。Synth是指合成資產,比如sUSD、sBTC、iBTC等都是合成資產,其中s開頭的是指做多,i開頭的是指做空。債務池是指所有Synth的匯總,在Synthetix引入超額抵押借貸之后,要扣減借貸產生的Synth。債務池對應的抵押物SNX能捕獲Synthetix交易合約產生的費用以及流動性挖礦產生的SNX,因此抵押SNX是有利可圖的。
SNX
Synthetix的運行需要SNX,那么SNX是怎么產生的呢?根據icodrops的數據SNX在2018年3月啟動ICO,初始發行100000000個,其中60%通過公開市場銷售。
從2019年3月開始Synthetix啟動了貨幣供應計劃到2023年8月SNX的總供應量將會從100000000個增長到260263816個。新增的SNX會按比例分配給抵押了的SNX持有者,SNX獎勵的細節會在后文講述。
Synth
Synth有三種途徑產生:
第一種是通過超額抵押鑄造,這種方式的抵押物只有SNX,產生的Synth只有sUSD。
第二種是通過超額抵押借貸,這種方式目前的抵押物只有ETH,產生的Synth有sUSD和sETH。
第三種是通過交易。比如當你通過SNX抵押出sUSD之后如果想持有sBTC,那么可以在Synthetix的交易合約中先銷毀sUSD然后鑄造出sBTC,sUSD兌換sBTC的價格由Oracle提供。
抵押和交易產生Synth沒有數量限制,而借貸產生的Synth有數量限制。借貸產生的債務不會進入債務池,也無法享有交易產生的手續費和流動性挖礦獎勵。
SNX超額抵押鑄造
SNX通過超額抵押可以鑄造出sUSD,抵押后的SNX無法被轉移,然后通過銷毀sUSD可以解鎖SNX使其重新能夠流通,如果SNX的抵押率不足則會面臨被清算的風險。
鑄造
抵押賬戶上的SNX鑄造sUSD的公式如下:
amount(sUSD)=amount(SNX)*price(SNX)*I-Ratio
韓國金融研究院:虛擬資產可能成為韓國金融穩定的主要威脅:金色財經報道,韓國金融研究院(Korea Instituteof Finance)的一份報告顯示,由于加密行業與傳統金融的聯系日益緊密,韓國蓬勃發展的加密領域有朝一日可能會威脅到該國的金融。韓國金融研究所表示,加密貨幣行業目前對該國金融市場的影響“微乎其微”,但這種情況即將改變。該研究院的高級研究員LeeDae-gi在報告中寫道:考慮到韓國越來越多地接觸加密貨幣以及出現相關刑事案件,虛擬資產可能成為金融穩定的主要威脅。
Lee引用了國際貨幣基金組織(IMF)經濟學家TaraIyer的數據,他說加密貨幣和股市之間的相關性越來越強,這可能會放大加密貨幣對金融市場的影響。(Forkast)[2022/9/7 13:14:09]
Synthetix中很多運算上都是以sUSD作為計價單位,而I-Ratio是發行率。假定SNX的價格是100,那么抵押100個SNX產生的sUSD是2000個。
賬戶上所有可用來抵押的SNX由三個部分組成:
collateral(SNX)=amount(synthetix)+amount(synthetixEscrow)+amount(rewardEscrow)
amount(synthetix)是指SNX合約的余額,amount(synthetixEscrow)是指SNX托管合約的余額,amount(rewardEscrow)是指SNX獎勵合約的余額。
抵押的SNX是被轉移到哪個合約上了嗎?不是的,抵押之后賬戶的SNX合約余額依然不會發生變化。但是當需要轉移賬戶上的SNX時,合約會判斷可以被轉移的SNX數量。
tranferable(SNX)=amount(synthetix)-debt(SNX)
debt(SNX)是指以SNX作為計價單位的債務數量。由于債務池中的資產價格是在波動的,所以債務池的總債務數量也會波動,為了計算當前時刻賬戶的債務數量需要記錄賬戶在債務池中的占比ownership。
debt=ownership*totalDebt
比如說賬戶在t0時刻的ownership是10%,totalDebt是100sUSD,則在t0時刻賬戶的debt是10sUSD。當t1(t1>t0)時刻totalDebt上升到200sUSD,則賬戶的debt變成了20sUSD。債務總量上升一般是債務池中資產價格的上漲導致的。debt(SNX)上升會導致tranferable(SNX)下降,賬戶的債務比上升。賬戶的債務比上升到一定程度就無法從FeePool中提取手續費和流動性挖礦獎勵。當賬戶的債務比上升到一定程度的時候任何人都可以對這筆債務進行清算。
火幣研究員陳圣樺:供應鏈中的信息孤島現象等問題阻礙了部分企業享受供應鏈金融服務:在今日金色聯合火幣舉行的線上分享會中,針對“大部分中小企業沒有享受到供應鏈金融的服務其阻礙是什么”的問題,火幣研究院研究員陳圣樺表示,首先是,供應鏈中的信息孤島現象嚴重。第二,核心企業信用跨級傳遞難。第三,傳統票據使用場景有限,流轉困難。第四,貿易真實性易造假。第五,合約約束力有限,履約風險高。更多詳情見原文鏈接。[2020/4/17]
為了記錄每個賬戶的債務占比,Synthetix引入了兩個關鍵性的數據結構:IssuanceData和debtLedger
issuanceData記錄每個賬戶的債務信息。initialDebtOwnership是指賬戶的債務在債務池中的占比,debtEntryIndex是debtLedger中對應的index。任何時候對賬戶進行新增債務或者銷毀債務操作都會延展debtLedger,并重新設置賬戶的initialDebtOwnership和debtEntryIndex。
令在debtLedger的index=i時的總債務為t(i),debtLedger為d(i),賬戶A的債務為d(A),在index=i+1時
initialDebtOwnership(A)=d(A)/t(i+1)
debtEntryIndex(A)=i+1
d(i+1)的遞推公式為:
d(i+1)=d(i)*,i>0
d(0)=1,i=0
如下圖所示賬戶A給系統新增第一筆債務100sUSD,系統總債務是100sUSD,賬戶A的債務占比是1
然后當B增加900sUSD之后,d(1)=d(0)*t(0)/t(1)=0.1,如下所示
此時賬戶A的債務占比計算公式為:
debtOwnership(A)=*initialDebtOwnership(A)=*1=0.1
事實上當賬戶A的debtEntryIndex為i,對于任意debtLedger的index為j(j>i)時計算賬戶A的債務占比公式為:
debtOwnership(A)=*initialDebtOwnership(A)
公式右側的推導過程如下:
動態 | Gnosis產品研究員疑似回應ETH遭Coinfloor下架一事:12月18日,Gnosis產品研究員、ethhub.eth開發者Eric Conner發推疑似回應英國交易所Coinfloor將下架以太坊一事。他表示,將從“EricEx”(戲稱,Eric的交易所)上下架比特幣,因為沒有人聽說過它。目前還沒有其他加密貨幣能與以太坊的記錄、行業支持或品牌認知度相媲美,所以專注于Ethereum對其來說非常有意義。12月17日消息,英國比特幣交易所Coinfloor計劃于下月下架以太坊,未來將僅支持比特幣交易。[2019/12/18]
*initialDebtOwnership(A)=**..**initialDebtOwnership(A)=**..**initialDebtOwnership(A)=*=d(A)/t(j)
而d(A)/t(j)正好就是賬戶A在index=j時的債務占比。
銷毀
一般情況下鑄造sUSD之后再銷毀會有一個等待期,這個等待期目前是1天。銷毀sUSD能降低debt(SNX),從而使tranferable(SNX)變大。銷毀的過程跟鑄造類似,比如賬戶B銷毀200個sUSD,系統總債務變為800sUSD,B的債務占比變成0.875
而A的債務占比根據公式計算為0.125
debtOwnership(A)=*initialDebtOwnership(A)=*1=0.125
debtOwnership(A)=d(A)/t(2)=100/800=0.125
清算
賬戶的債務比C-Ratio是指賬戶的債務與賬戶上可用的SNX之間的比值:
C-Ratio=debt(SNX)/collateral(SNX)
債務池中的資產的報價單位都是以sUSD,因此debt(SNX)會同時受到資產價格和SNX價格的影響。也就是說假如SNX價格不變,債務池中的資產價格上漲則debt(SNX)會變大。相對的,如果SNX價格下跌,而債務池中的資產價格不變,debt(SNX)也會變大。
當賬戶的C-Ratio超過一定的閾值會被清算,任何人都可以對C-Ratio超過閾值的賬戶進行清算。但是清算有一個緩沖期,在緩沖期內等待被清算的賬戶依然可以通過增加collateral(SNX)或者銷毀一定的債務來降低C-Ratio。
聲音 | 清華大學金融研究中心主任:中國鏈圈和幣圈相互分離極為正常:清華大學中國金融研究中心主任、人民網區塊鏈研究院特聘專家何平表示,在中國,鏈圈和幣圈相互分離極為正常,后者可能蘊含更多風險,只有監管方控制風險,才能樹立新的創業典范。區塊鏈行業更多專注應用開發,專注于提升整個行業的運營效率,區塊鏈技術的安全有序發展,還要引進大量創新創業人才。(人民網)[2019/10/28]
被清算的賬戶會施加一定比率的罰金p。假定被清算賬戶是A,清算賬戶是B,清算過程是將B的sUSD銷毀,然后將A的(1+p)倍等值的SNX轉移給B,因此B的清算收益率是p。清算的目標是使賬戶A的C-Ratio恢復到初始的I-Ratio。令賬戶A的債務為D,抵押物為C,罰金比率為p,I-Ratio為r,需要清算掉的債務為F,則F必須要滿足如下公式:
(D-F)/(V-(1+p)*F)=r
從而得到
F=(D-V*r)/(1-(1+p)*r)
ETH超額抵押借貸
通過抵押ETH可以從Synthetix系統中借出sETH和sUSD,抵押1個ETH可以借出0.8個sETH或者借出0.67個sUSD。為了控制風險,借出的sETH和sUSD總量是有上限的,sETH最多能借出5000個,sUSD最多能借出1000萬個。贖回債務需要付出一定的利息,產生的利息會轉換成sUSD注入到FeePool中分配給SNX的抵押持有者。如果ETH價格下跌導致抵押率不足,則債務會面臨被清算的風險。
Synthetix交易
在Synthetix中除了sUSD和sETH可以通過鑄造或者借貸發行外,其它的Synth都是通過交易產生的。Synthetix交易對以(src,dest)來表示,src指將會銷毀的Synth,dest指將會發行的Synth,比如(sUSD,sBTC)意味著銷毀sUSD然后發行sBTC。這點跟訂單簿或者AMM區別很大,由于沒有對手方所以Synthetix也不會有滑點和深度的問題,但風險就在于流動性可能不足,舉個極端的例子:
系統總債務暴漲到10100sUSD之后,A和B分別承擔5050sUSD的債務。為了保證債務比符合0.2的要求賬戶A必須要補充價值24750sUSD的SNX,對A來說這是沒啥意義的,也不會有人愿意清算這筆債務。賬戶B可以銷毀5050sUSD的債務來解鎖價值500sUSD的SNX,但是剩下的4950sUSD只有名義上價值500sUSD的SNX作為抵押,使得sUSD基本上毫無價值,所以這筆獲利也無法兌現。
德研究員在比特幣的區塊鏈上發現兒童內容:20日訊,德國大學的研究人員發現并下載比特幣區塊鏈——當時的大小為122GB,之后掃描了他們稱為“令人反感的內容”,他們發現:在區塊鏈上所有交易中,只有1.4%的交易記錄了118.5 MB的非財務數據。只有更小的22.6 MB數據中包含了在適用軟件上查看的可讀文件。在數據中,兒童內容存在于三個文件中;這274個鏈接定向到了在“暗網”上找到的網站列表。除了維基解密數據的備份之外,研究人員還發現了六個與婚禮有關的圖像,609個包含公共聊天日志的交易,和討論比特幣和洗錢的電子郵件與論壇帖子。[2018/3/20]
除了流動性問題還有另外一個問題,那就是單個交易對發生報價錯誤會導致全體SNX抵押者極大的損失。比如上面那個BTC價格暴漲的例子,可能真實的價格是101,但是由于報價錯誤導致價格暴漲了100倍。如果抵押的SNX足夠多,則B就獲利巨大,而損失則由全體SNX持有人承擔。再加上沒有深度限制,B如果發現Oracle還在mempool中的交易價格為10000,而真實價格為101,則B可以提前以100的價格買入足夠多的sBTC,等到Oracle的報價上鏈,再以10000的價格賣出sBTC,這個過程SNX抵押者的損失會無限放大。也許Oracle是誠實的,但Oracle也可能犯錯,然后上報一個跟真實價格差異巨大的價格。
為了避免這個問題SIP-65引入了一種價格保護機制,Synthetix會記錄每個Synth上一次交易的報價lastExchangeRate,使用lastExchangeRate與當前交易時的報價currentRate進行對比。如果倍數超過一定的閾值交易會失敗,這個交易對會被暫停直到protocalDao查明原因再重新恢復交易。
正常情況下行情不會在短時間內有一個超過3倍的插針,所以由于價格保護機制導致交易對被暫停實際上是非常罕見的情況。但是因為以太坊擁堵導致Oracle的價格不能及時的上鏈倒是可能經常發生。一旦價格不能及時上鏈就會有被套利的空間,比如
在上圖所示過程中先觀察到未上鏈的Oracle報價會比鏈上最新的報價高10%,所以立即買入1sBTC,然后等Oracle的報價交易上鏈再以這個價格賣出1sBTC,這樣就可以無風險套利10%。為了緩解這個問題SIP-37引入了交易修正機制,通過交易得到的dest必須等待一個交易窗口期之后才能賣出。比如上面這個例子假設在交易窗口期內t1時刻Oracle的報價上鏈了,那么再賣出1sBTC時需要先對TX0的交易進行修正。TX0會重新以1sBTC=110sUSD的價格來核算,賬戶需要給系統退還100*(1/100-1/110)約為0.09個sBTC。之所以說是緩解而不是解決是因為Oracle的報價可能過了窗口期都沒能上鏈,那么套利還是會發生。反過來如果鏈上價格比實際價格高,那么購買1個sBTC就虧了,這個時候系統會將差價返還給賬戶。交易修正除了在交易過程中會引入,凡是需要轉出或者銷毀Synth的地方都會引入,比如轉出Synth、鑄造sUSD、銷毀債務、清算債務。
FeePool
FeePool負責收集交易產生的費用和流動性挖礦產生的獎勵,費用和獎勵的分配要依照SNX抵押者在債務池中的債務占比來決定。比如產生了100sUSD的交易費用,賬戶A的債務占比是10%,那么賬戶A就可以分配10sUSD的交易費用。假如賬戶A剛發行債務把獎勵取走,然后就立即把債務銷毀,那A就基本上不用承擔債務池膨脹的風險而獲得收益。實際上這個風險就由其它一直進行SNX抵押的賬戶在承擔,顯然這對其它賬戶來說是不公平的。
為了解決這個問題FeePool引入了結算周期的概念,結算周期有兩類,一類是已經封閉的結算周期,一類是開放的結算周期。封閉的結算周期內的費用和獎勵可以領取,開放的不行。一個開放的結算周期達到7天后就可以開啟新的結算周期,然后這個開放的結算周期就變成了封閉的結算周期,而之前封閉的結算周期內的費用和獎勵延展到這個新產生的封閉結算周期中。結算周期的數據結構如下:
FeePool會緩存賬戶的債務占比信息,然后找到離費用周期結束的debtLedgerindex最近的債務占比來計算費用和獎勵。如下圖所示,F0和F1是已經封閉且延展過的的結算周期,F2是可以提取獎勵和費用的結算周期,F3是正在開放的結算周期,d10是F2結束時刻對應的debtLedger,d0是由賬戶A的債務變更引發的。
賬戶A如果提取獎勵和費用,其占比的計算公式為:
p=(d10/d0)*initialDebtOwnership(A)
也就是計算賬戶A在d10時的債務占比。如果賬戶A有多次債務變更操作,比如d0和d5
則p的計算公式為:
p=(d10/d5)*initialDebtOwnership(A)
也就是說取盡可能離d10近的債務變更操作對應的debtLedger值。
FeePool這種工作模式會帶來一個問題,如果F0和F1有未提取的費用和獎勵延展到F2,那么可以在F2中發行債務,然后等F2進入封閉期提取費用。令F0、F1和F2未提取的費用分別為f0、f1和f2,賬戶A在F2期間的費用占比為p,則賬戶A可以提取非費用為
f=p*(f0+f1+f2)
也就是說雖然賬戶A在F0和F1期間對系統不承擔任何債務,但依然能拿到一部分費用。所以當費用周期結束后應該盡可能的把賬戶上的費用和獎勵提取干凈,否則會便宜后面周期發行債務的賬戶。
提取費用和獎勵的前提是賬戶的債務比不能過高,這個閾值目前是1.01*I-Ratio。費用是直接打到賬戶地址上,而SNX獎勵是放在了第三方托管合約上。
SNX供應計劃
SNX獎勵由SNX供應計劃合約注入到FeePool,然后FeePool發放給SNX托管合約,被托管的獎勵要延遲一年才能領取。為什么要給抵押SNX的賬戶獎勵呢?首先我們看一下比特幣的激勵機制,比特幣給礦工獎勵,礦工通過挖礦來保障比特幣網絡的安全。在比特幣總量沒有達到2100萬個之前,比特幣跟央行的法幣一樣是一個通脹幣,只不過通脹速率逐年降低而已。那為什么持有者認為比特幣是有稀缺性呢?原因在于通脹預期是固定的,也即所有人都知道比特幣的發行規律,并且知道當發行完2100萬個之后就不再發行。所以一個去中心化的激勵機制中,一定時間內的貨幣發行并不可怕,只要貨幣發行是對網絡的核心價值有用,然后發行計劃是有預期那么對整個網絡就是有正面意義的。
在SNX網絡中最核心的價值就是抵押物,只有足額的抵押物才能有更多的做多和做空交易,才能產生更多的交易手續費從而提升網絡的價值形成一個正向循環。基于此SNX從2019年3月開啟了投放SNX的計劃,這個投放計劃類似于比特幣也是按周期獎勵減半:
但貨幣新增突然斷崖式的下降會可能會對系統產生一個不可預測的不好結果。比如在比特幣網絡上如果減半周期疊加幣價低迷,那么減半周期到來時很多老的礦機因為無利可圖而關機,這個會導致比特幣算力出現斷崖式下降。為了避免這個問題,Synthetix后來又優化了貨幣投放計劃:
這個優化首先是讓貨幣供應速率平緩下降,其次是在貨幣供應計劃結束后繼續以2.5%每年的速率增發SNX。
Synth價格
Synth分為做多的Synth和做空的Synth,sBTC的價格就是Oracle的報價,其中sUSD的價格總是1。做空的價格跟基準報價有關:
如圖所示,黑色的箭頭表示sBTC的價格走勢,紅色的箭頭表示iBTC的價格走勢。當sBTC的價格為120時,iBTC的價格為200-120=80;
當sBTC的價格為10時,iBTC的價格為200-10=190,但由于190超過的upperLimit,所以最終iBTC的價格為180。如果frozenAtUpperLimit為false,則iBTC的價格不會被鎖定在上邊界,等到sBTC價格上升時,iBTC的價格會回落。反之,iBTC的價格就會一直被鎖定在上邊界。
反向價格信息由系統提供,并且反向價格信息也可以根據需要更新,比如說重新設置基準價。
結束語
Synthetix是一個非常優秀的Defi項目,它可以讓我們交易各種資產的風險敞口,由于是與系統對賭所以交易的深度極佳。以太坊的特性使得開發一個復雜的Defi項目變得十分困難,在這個黑暗森林里不僅僅面臨合約邏輯錯誤這種基礎性風險,還面臨交易搶跑、Oracle報價延遲、報價錯誤等業務性風險。Synthetix在這方面做了非常多的努力,比如通過交易熔斷來控制單個交易對報價錯誤的風險、通過交易修正來緩解Oracle報價不及時的問題。Synthetix對去中心化項目的激勵問題理解的也非常深刻,為什么激勵?怎么激勵?這些都需要想清楚,而不僅僅是增發token去割韭菜,激勵過程也要注意減少一些不必要的經濟學博弈。在項目的開發上,Synthetix對Gas的優化也做了一些努力,比如緩存全局債務總量來減少計算量。
Synthetix也有一些需要改進的地方,在費用和獎勵的分配上更有利于巨鯨賬戶,這點倒是可以參考sushi的分配方式進行優化。使用Proxy的模式雖然便于遷移,但是業務上需要向后兼容容易帶來代碼的復雜性。隨著功能的越來越復雜,代碼出現邏輯錯誤的可能性也會越來越大。
本文鏈接:https://www.8btc.com/article/6589014
轉載請注明文章出處
關于B2Core? B2Core負責組織外匯經紀商和加密數字交易所的工作、員工和管理員的后臺、交易者的前臺、客戶的驗證功能和注冊以及各種支付功能等任務.
1900/1/1 0:00:00上周BTC遭遇一輪29000美元的探底后,很多人都以為行情到頭兒了,年末暴跌魔咒要應驗了。但周末的一波大反攻,讓所有人又都看到了希望,“大餅不愧是大餅!”“以太也在暴漲啊!”“牛又回來了?”..
1900/1/1 0:00:00如非必要,近期不要前往疫情中高風險地區。春節農村返鄉人員需持7天內有效新冠病核酸檢測陰性結果,返鄉后實行14天居家健康監測,期間不聚集、不流動,每7天開展一次核酸檢測.
1900/1/1 0:00:00當地暫無官方政策發布,若有,會第一時間更新。疫情政策變化頻繁,出發前請撥打當地疾控部門電話:0771-7969216春節農村返鄉人員需持7天內有效新冠病核酸檢測陰性結果,返鄉后實行14天居家健.
1900/1/1 0:00:00一、觀點 幣圈迎來全面反彈,此時更為重要的不是加補倉位,而是盯緊各幣種的“看跌位”,一旦破位即刻出局,讓浮盈成為真正的利潤.
1900/1/1 0:00:00BTC行情分析: 小時圖來,行情凌晨受阻后一根大陰柱幣價從BOLL上軌拉下中軌,隨后震蕩上行,目前已經上行至布林通道中上軌,布林通道開口向上,MACD快慢線在零軸上方形成金叉,能量柱呈多頭縮量.
1900/1/1 0:00:00