這篇文章旨在作為Flare上創建和贖回FXRP的簡化指南。它的目的是讓人們直觀地了解該系統及其安全機制,並沒有強調每一個細節,完整白皮書可以在這裡找到。由於 XRP社區是第一個採用 Flare網絡的社區,因此以下所有示例都將使用 FXRP ,但均可以替換為 LTC 、 Doge和 XLM ,統稱為F - Asset 。
設置
發起人
一個發起人:Alice想在Flare上的一個應用程序中使用她的XRP
Alice擁有一個種植燕麥的農場。她擔心燕麥價格下跌,她的農場的收入會受到影響。她想用她擁有的一些XRP與Flare上的去中心化衍生品應用進行交易,這樣她就可以減輕燕麥價格下跌給她的業務帶來的風險。 Alice將在Flare上用她在XRP賬本上的XRP代幣鑄造FXRP 。在FXRP系統中, Alice被稱為發起人。
代理人
代理人:Bob和Charlie向FXRP系統提供Spark作為抵押品。
Bob和Charlie擁有Spark代幣,他們想在上面賺取回報。他們向FXRP系統提供Spark代幣作為抵押品。 Bob和Charlie被稱為代理人。
FXRP系統參數
Flare Time Series Oracle (FTSO) -在下文中被稱為Flare Oracle -向FXRP系統提供XRP/Spark比率,即1個XRP可以購買多少Spark 。再加上系統中的抵押品數量和抵押品比率,這定義了系統可以發行多少FXRP 。
在這個例子中,比方說,參數如下:
可以發行的FXRP的數量被稱為發行能力。它是由可用的抵押品數量除以XRP/Spark匯率,然後進一步除以抵押品比率決定的。
將上表中的數字插入方程,我們得到:
這意味著FXRP系統有足夠的抵押品來發行200個FXRP 。
抵押品保留交易
Alice儲備了足夠的抵押品來鑄造100FXRP
為了安全地使用FXRP系統, Alice必須為她希望發起的FXRP數額保留抵押品。這就是所謂的抵押品保留。 Alice在Flare上也有一個地址,並與FXRP系統完成一筆交易,指定。 1 )她想創建的FXRP數量,(在本例中為100FXRP ), 2 ) XRP分類賬上的發起賬戶, 3 )接收FXRP的Flare賬戶,包括4 )抵押品保留費。抵押品保留費是根據XRP被鑄成FXRP的價值,以Spark方式支付的0.1%費用。
抵押品需要確保被保留,以便從抵押品保留交易完成的那一刻起,有2.5倍價值的XRP被鑄成FXRP ,鎖定在Spark代幣中。一杯費用需要被支付,因為如果發起人( Alice )沒有成功完成交易,抵押品反而可以用來給到其他成功的發起人,代理人可以同樣的獲得創造費用。
交易公式
交易公式規定了Alice需要在XRP賬本上進行的交易
當Alice完成抵押品預訂交易時,她會收到一個交易公式。該交易公式指定了Alice需要在XRP分類賬上進行的交易,以創建FXRP。重要的是,交易公式指定了XRP賬本上的最後賬本索引號(last ledger index number) ,指示Alice的XRP必須到達代理人那裡。最後的分類賬索引號是很重要的,因為當Alice在XRP分類賬上進行交易時,她可以使用一個稱為最後分類賬索引的功能。這個功能意味著,如果由於某種原因,XRP賬本上的交易在最後一個賬本索引號之前沒有最終完成,那麼Alice將保留她的XRP,她的總損失是她為保留抵押品而支付的0.1%費用。
創建交易
Alice的創作交易
在XRP賬本上, Alice向交易公式中列出的代理髮送了她希望鑄成FXRP的XRP數量+預先指定的創建費。在這種情況下, Alice想鑄造100個FXRP ,創建費被設定為5% 。因此, Alice向代理髮送了總共105個XRP 。在這種情況下,交易公式規定,創設費在代理商之間平均設置。當然,這不會永遠是這樣的。
狀態連接器系統
FXRP系統從狀態連接器系統接收XRP Ledger的狀態。狀態連接器節點由每個Flare網絡驗證者獨立運行,它們以安全和去中心化的方式觀察外部系統的狀態。 Alice的創建交易是通過狀態連接器系統輸入到FXRP系統的。
Alice收到FXRP
當狀態連接器系統向FXRP系統報告Alice的交易已經在XRP賬本上最終完成時, FXRP就會被鑄成貨幣並發送到Alice在抵押品預訂交易中指定的Flare地址。
XRP/Spark利率上升
目前的FXRP系統看起來如下:
XRP/Spark比率現在從10增加到12
發出100個FXRP ,按新的匯率保證FXRP所需的抵押品的數量是:
2500個Spark已經被鎖定在100個已發行的FXRP上,所以FXRP系統現在又鎖定了500個Spark代幣以應對價格的上漲。
Alice使用衍生品應用程序
Alice對沖燕麥的價格
Alice花了50FXRP向Dana購買燕麥價格的看跌期權。看跌期權是一種金融工具,如果某樣東西的價格在一定時間內下跌,期權所有者可以從中獲益。燕麥的價格上漲了,這對Alice的農場收入來說是件好事,但這意味著Alice從Dana那裡買的看跌期權到期後就沒有價值了。 Alice並不介意她為了保護自己的收入而損失了50FXRP給Dana 。
用FXRP贖回XRP
Dana贖回
Dana在與Alice的交易中賺了50FXRP 。 Dana現在想把這些錢贖回到XRP分類賬中。
Dana將她的50FXRP發回FXRP系統,同時附上: XRPL上的入賬地址和Flare上的入賬地址( Spark ),以防贖回失敗。這個例子假設贖回費為零。贖回費率由Spark管理控制,應該是零或非常低。 )
一旦Dana對FXRP系統的交易完成後,代理會被發送一個代理贖回公式Agent Redemption Formula(ARF ) ,其中規定了他們需要在XRP賬本上進行的交易,以及該交易需要由哪個賬本索引號來最終完成。
成功贖回
贖回到XRP分類帳
代理商通過ARF中指定的分類賬索引號向Dana發送50個XRP 。當FXRP系統通過狀態連接器系統觀察到時,這就解鎖了抵押品。
在這個例子中,由於代理是平等的,所以Bob和Charlie各解鎖了750個Spark 。
FXRP系統現在看起來如下。
在上表中,之前3000個Spark被鎖定在100個已發行的FXRP上,現在只有50個FXRP被發行,另外50個已經被成功贖回,所以只有1500個Spark被鎖定。
贖回失敗
Bob的贖回失敗
現在我們說, Bob最近花了太多時間在潛水上,忽略了他作為代理人的職責。 Dana沒有收到全額的50XRP ,而是按指定的分類賬索引號只收到25XRP 。
Dana得到了補償
為了讓Dana補充她丟失的XRP , FXRP系統向她發送所丟失的XRP在Spark中的價值(當時的匯率是12個Spark兌換1個XRP )和1%的補償費,以說明交易成本(補償費由Spark管理部門製定)。
這就意味著:
Bob因作為代理人的失敗而受到重罰。 Bob在FXRP系統中鎖定了1500個Spark 。針對這些抵押品,之前已經發行了50個FXRP 。 Dana缺少的25個XRP是由Bob的抵押品的一半,即750個Spark擔保的。從Bob的抵押品中提取的303個Spark是發給Dana的補償,另外223.5個Spark被燒掉作為懲罰。這使得Bob在FXRP系統中擁有1973.5個Spark ,其中750個Spark仍被鎖定以保證25個FXRP 。
Dana現在可以用她的303個Spark去交易所購買缺少的25個XRP ,或者,在一個純粹的去中心化的環境中,她可以用她的Spark代幣從Alice那裡購買25個FXRP ,然後把它們兌換回FXRP系統。 (在有許多代理和活躍的FXRP去中心化市場的環境中,後者選項更有意義)。
Bob在這裡的經濟損失是已經支付的代替XRP的Spark代幣,加上已經燒毀的Spark代幣,加上補償費( Spark ),減去他保留的XRP和他收到的XRP的創建費。 Bob損失的XRP相當於比他保留的XRP多18.125 。因此, Bob在經濟上有很大的動力去兌現代理人贖回的義務。 Dana雖然有一個令人沮喪的經歷,但沒有損失。
Bob離開FXRP系統
在贖回失敗之前, FXRP系統中有5000個Spark代幣,其中3000個是為100個已發行的FXRP提供擔保。贖回失敗後,系統的總抵押金額減少到:
這使得Bob在系統中擁有抵押品有以下變化:
50FXRP仍在發行,其中Bob的比例份額為25 FXRP 。因此, Bob在系統中鎖定了以下抵押品:
FXRP系統目前的情況如下:
Dana現在決定要成為一名代理人,向FXRP系統發送5000個Spark 。
Dana向FXRP系統發送抵押品
Dana增加的5000個Spark使FXRP系統的發行能力提高了:
現在的總發行量是:
FXRP系統現在看起來如下:
Bob現在想辭去代理人的工作,全職從事潛水工作。 Bob在他的XRP賬本地址中有52.5個XRP , Alice用它來發行她的100個FXRP (其中他沒有發送25個給Dana而受到懲罰)。 Bob現在向FXRP系統表示,他希望發起新的FXRP ,同時在這個過程中排除自己作為代理人(這樣他就可以立即贖回FXRP )。 Bob完成了這個過程,向XRP賬本上的代理( Charlie和Dana )發送了26.25個XRP ,在Flare上發起了25個FXRP 。
然後,他贖回這25個FXRP ,這使他在系統中的FXRP為零,並使他的所有抵押品( 1973.5Spark )可以從系統中撤出。
Bob自我贖回
Bob現在已經離開了系統,不再是一個代理人。他帶著從FXRP系統返還給他的1973.5個Spark代幣(因他之前贖回失敗而受到懲罰)和XRP賬本上來自Alice的剩餘26.25個XRP代幣離開。
當Alice在未來的某個時間點來贖回她剩餘的50個FXRP回到XRP分類帳時,所有的代理可能已經改變了,巨大的Spark可能已經在發行和贖回FXRP方面發生了變化,但為了贖回她的FXRP , Alice不需要知道或跟踪任何這些。 Alice只需要將她的FXRP發送到FXRP系統,指定XRP賬本地址,如果贖回失敗,則指定Flare地址,如果有贖回費,則指定贖回費。
違反抵押品比率
在這裡,我們將描述,如果代理人可用於FXRP系統的抵押品的價值,根據已發行的FXRP的數量進行分攤,低於所需的抵押品水平,會發生什麼。讓我們定義一個新的場景:
在新的情況下,我們現在有三個代理人, Charlie 、 Dana和Eve ,他們總共發行了1200個FXRP ,並在系統中擁有以下數量的抵押品。該系統看起來如下。
抵押率可按以下方式計算:
例如,對Charlie來說,這就是:
在XRP賬本上,每個代理人還持有以下XRP :
成功修正抵押品違約
XRP/Spark匯率現在有一個衝擊性的價格變動,即一個XRP買15個Spark 。這是XRP對Spark的瞬時增長50% 。
現在每個代理人的位置是:
(注意,在衝擊性的價格變動之前, Charlie保持著2.5倍發行價值的最低絕對抵押品。在瞬間50%的價格變動下, Charlie仍然鎖定了比FXRP發行值更大的抵押品。)
Charles和Eve違反了抵押品要求(即他們的抵押品比率已低於2.5 ),必須在一個被稱為抵押品叫價帶( collateral call band )的有限時間內採取行動。下表顯示了他們的狀況:他們必須按超額FXRP 一欄所示的金額減少他們的FXRP持有,或按抵押品赤字一欄所示的金額增加他們的抵押品。
所需抵押品是指支持FXRP所需的抵押品,按新的XRP/Spark價格分攤,並符合2.5的抵押品比率要求。
Charlie選擇減少他的FXRP倉位,減少70FXRP 。記住, Charlie在XRP賬本上有200個XRP 。所以Charlie發行了70個FXRP ,支付了73.5個XRP ,這是想要的FXRP數量+預設的5%創建費。然後, Charlie立即用自己的賬戶贖回FXRP ,將他發行的FXRP的分攤額度從200減少到130 ,使他的抵押品比率超過2.5 。如果系統中沒有抵押品供Charlie發行新的FXRP ,他可以通過交易所使用XRP購買FXRP 。
另一方面, Eve決定增加她在系統中的抵押品。 Eve向FXRP系統增加了5000個Spark ,使她的抵押品比率回到2.5以上。
連帶違約整改失敗
如果Charlie或Eve沒有在規定的時間內修正他們違反抵押品比率的行為,他們的Spark抵押品將被FXRP系統用來回購針對他們的抵押品所分攤的全部FXRP金額。
為了看到這一點,讓我們看一下Eve的案例。在FXRP系統中, Eve有15000個Spark作為抵押品, XRP/Spark匯率為15 ,她的抵押率為:
這低於規定的比例,但仍是已發行的FXRP分攤給Eve賬戶的價值的兩倍。
系統將使用Eve的抵押品出價,用Spark代幣購買500FXRP 。第一次出價是按照當時的XRP/Spark匯率,如果這個出價的任何部分在n個區塊結束時沒有被接受(其中n是一個系統參數),出價會增加10% 。這個過程重複進行,直到整個500FXRP被系統回購。然後, FXRP被燒毀, Eve的抵押品的剩餘部分被返還給她。
FXRP抵押品系統的安全基礎集中在兩個必要因素上:
1)代理人對所需行動的違約損失總是比執行所需行動的損失大。
2 )如果一個代理人確實違約,該系統為其他人創造了強大的利潤激勵來糾正這種情況。
抵押率是維護系統安全的關鍵。
在抵押品違約分析中,我們已經看了價格的瞬時50%變化。要看這個例子意味著什麼,重要的是要記住,加密貨幣市場每天24小時,每年365天開放, FXRP系統將在高度頻繁(分鐘)的基礎上重新計算所有參數(並向代理人發出指令)。因此,為了使上述情況真正發生, XRP/Spark匯率的50%變化需要在FXRP重新計算期間發生,即在1分鐘內。
一般來說,預計在FXRP重新計算之間,絕大部分XRP/Spark匯率的變化幅度會小得多。值得注意的是,即使在這個極端的分析中, XRP/Spark匯率在不到一分鐘的時間內增加了50% ,所有的經濟安全激勵措施都保持不變。 在波動較大的時期,可以調整FXRP系統參數以增加重新計算的頻率,然後系統可以更迅速地執行行動,減少對支撐系統安全的經濟激勵的任何降級的可能性。