日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

以Vigoss、Perp、dydx为例,解析衍生品在DeFi2.0进程里的演进

發布時間:2023/12/8 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 以Vigoss、Perp、dydx为例,解析衍生品在DeFi2.0进程里的演进 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

撰文:Jerry,Leon,前者為Dachal Research發起人,后者為Dachal Research研究員

關于DeFi2.0的言論越來越多,未來如何發展不得而知,但是我們可以根據DeFi市場現狀,結合衍生品協議升級迭代的脈絡,去探究DeFi2.0的未來一角。

據L2BEAT數據顯示dYdX Layer2總鎖倉量已突破10億美元,占以太坊Layer2總鎖倉量的21.66%。當然,對于衍生品市場而言10億美元總量還是很小的一個體量,按照預估,當前DeFi衍生品的日交易量僅相當于DeFi現貨交易量的1/6,相當于CEX衍生品交易量的1/100。但衍生品交易所的平均交易量更大,因此它們的價值增長甚至超過了過去一年DEX的增長。

如果比照CEX的交易結構,在靜態發展下,理論上衍生品的交易量還有當前規模13倍左右的發展空間。因此,dYdX Layer2總鎖倉量占以太坊Layer2總鎖倉量的21.66%可以視為以dYdX為首的衍生品市場在Layer2時代的張力。

在ETF 通過和上市推動了加密市場上漲但DeFi頭部項目 MKR、LINK、UNI、AAVE 都還遠沒有回到 519 之前的高度的情況下,我們把關注焦點放在衍生品市場,我們將dYdX在 Layer2時代的迭代視為DeFi2.0的演進。本文選擇dYdX、Perpetual和Vigoss三個不同時間段的衍生品協議作為樣本,意圖為大家展示衍生品在DeFi2.0進程里的演進和前景,以及,我們可以借此窺視衍生品會為 DeFi 帶來新的動力嗎?全文概要如下:

第一部分:以鏈上衍生品賽道的龍頭項目dYdX的流動性問題和Layer2的布局介紹,既展示了上一個時代衍生品賽道領先者自身的迭代優勢,也讓我們看到一些遺留問題有待項目方繼續努力去解決。而這值得持續關注。

第二部分:與 dYdX相比, dYdX采用了類似中心化交易所的鏈下訂單簿撮合機制,Perpetual目前采取vAMM形式來解決交易深度。這無疑在DeFi2.0進程中是衍生品賽道一個承前啟后進化。Perp項目V2版本Curie(居里)的迭代也值得關注,這一版本改變了整體業務邏輯,目的是以聚合流動性的方式減小滑點、獲得高資金效率的優勢以及因架設在二層網絡Arbitrum上而獲得高交易速度。

第三部分:在對vigoss進行全景式介紹的基礎上,我們以與flux協議的聯動效應為例,解析在DeFi2.0時代衍生品市場中借貸協議與期權協議如何迭代進化以及前景。未來數字貨幣領域一定會出現復雜的金融工具,vigoss是其中一部分。可以預見的是,vigoss與flux協議的聯動會有很好的化學反應,而這只是vigoss未來開發計劃的一部分。

01dydx:老牌龍頭的迭代

以太坊長期以來優先考慮了 L1 的安全性和去中心化,而不是可擴展性。可擴展性的“不可解決的三角困境”也因此制約著包括 DeFi在內的去中心化實踐活動。但隨著以太坊轉向一條 以 Rollup 為中心的路線圖 ,以太坊生態正在進化——以太坊轉向這一路線圖的意圖是,我們今天在以太坊區塊鏈上的 大部分交易執行 (包括 DeFi、NFTs 等活動) 將轉移到 Rollups 中進行 , Rollups 繼承了以太坊 L1 主網的安全性 ,且由于以太坊 L1 處理了困難的部分, Rollups 得以能夠專注于成為最好的執行層 。

在這個大背景下,我們可以看到早期衍生品合約在向著DeFi2.0的迭代。據L2BEAT當前數據顯示,11月2日,dYdXLayer2總鎖倉量已突破10億美元,占以太坊Layer2總鎖倉量的21.66%。這代表著以dYdX為首的衍生品市場在Layer2時代的張力。dYdX 是最早成立并推出可用產品的去中心化期貨交易所,為訂單簿式 DEX,交易者之間進行點對點交易,由做市商和多空雙方交易者三方博弈。dYdX 架設在以太坊二層網絡 Starkware 上,并采用了 StarkEx 交易引擎,實現了資產的去中心化自托管。

dYdX 能夠提供與中心化交易所接近的交易體驗,dYdX 由 L2 可擴展性引擎 StarkEx 驅動,自從 dYdX 在 L2 網絡部署以來,該交易所上的 ETH-USD 交易對產生的流動性近乎可以與 FTX匹敵,目前其交易量為在交易挖礦的推動下衍生品 DEX 中第一。

雖然這些流動性多數可能是為了參與該平臺 DYDX 代幣獎勵計劃而來,這是一些觀察者對其質疑的所在,當然質疑的另一點是其也采用了與 CEX 相似的運營模式。這部分我們在最后再一并做分析。下面我們先從了解一下它的產品開始。

目前dYdX 的五個產品永續合約、保證金交易、杠桿交易、現貨交易和借貸只有V2 版本的永續合約是架設在二層網絡上的新產品,保證金交易、杠桿交易、現貨交易和借貸架設在 以太坊主網上。在 UX (用戶體驗) 方面,你只需要一個以太坊錢包和一些 ETH 就可以登錄并開始在 dYdX 上交易,這里不需要 KYC,也不需要將你的個人信息存儲到第三方,當然,DEX 是非托管式的——你確實需要將資金轉移到 Rollup 來使用這個 DEX,但你可以控制自己的資金,并在需要時將資金撤回至以太坊主網。這已經吸引了高頻交易人群的關注。

我們主要分析一下其V2 版本永續合約交易產品,細節如下:

杠桿倍率:dYdX 永續合約產品提供了最高 25 倍的多空兩方交易功能,最小杠桿倍率變動為 0.01。
訂單簿 /AMM: 從交易結算形式來看,dYdX 永續合約是訂單簿形式,由做市商提供流動性。
限價 / 止損:dYdX 永續合約具備限價單和止損單功能,可以進行限價交易和止損止盈交易。
持倉:能夠在產品界面上顯示持倉數、杠桿率、已實現盈虧、未實現盈虧、強平價格等數據。
保證金:BTC 和 ETH 交易對,其最高杠桿倍數為 25 倍,因此初始保證金要求為 4%,維持保證金要求為 3%。其他交易對根據其最高杠桿倍率有不同的保證金要求。
強平價格 / 清算價格:用于清算的標記價格是由 Chainlink 的二層價格喂送的指數價格。
存款 / 取款:圖 2-3 左上角顯示了賬戶余額(Account),并有存款(Deposit)和取款(Withdraw)兩個按鈕,由于產品架設在二層網絡 StarkWare 上,因此在 dYdX 永續合約產品交易,需要存入資金后,在余額范圍內進行交易,平倉后資金回到 dYdX 賬戶內,需要進行取款才能回到交易者的以太坊錢包內。
手機 dapp 版本:dYdX 已實現手機 dapp 版本,能夠使用手機錢包進行登錄和交易,界面基本具備電腦網頁端功能。
資金費率(1小時費率):與其他的永續合約一樣,dYdX 永續合約產品有資金費設計,每 8 小時收取一次,但其資金費率表示為1小時的費率,每8小時收取一次1小時費率(不將1小時費率乘以8),資金費率具體計算方式為:

資金費(Premium)=(Max (0,出價沖擊 Impact Bit Price-指數價格)-Max (0,指數價格-賣價沖擊 Impact Ask Price))/ 指數價格
交易費用:dYdX 上 Maker (掛單者)和 Taker (吃單者)費用不同,費率隨交易量增大而遞減,Maker 的費率從 0.05% 到 0, 交易量達到 10,000,000 美元之后費率為 0;Taker 費率從 0.2% 到 0.05%,交易量達到 200,000,000 美元后為 0.05%。
Gas 費用:由于在二層網絡 Starkware 上運行,交易不需要支付 Gas 費用,但在存款 / 取款過程需要支付 Gas。
結算速度:實測非常順滑,這是由于二層網絡的性能優勢,也由于用戶資金已經托管到了 StarkEx 上。
回到上面提及的問題,不可回避的是dYdX 交易量的快速膨脹得益于其交易挖礦獎勵機制根據規則,dYdX 將在 5 年內以每 28 天為一個時間節點分發 383.5 萬枚平臺通證 DYDX,以激勵用戶在該協議進行交易。dYdX的漲幅也帶了了套利空間,更多的流動性因此而來,這被觀察者視為未來的風險。而dYdX似乎在流動性獎勵上面越玩越有心得。11月13日消息,dYdX基金會發推稱,社區投票贊成DIP 3“安全模塊恢復”,第一個鏈上Long Timelock DIP通過。恢復安全模塊的DIP從UTC時間11月20日3:56:42(北京時間11:56:42)開始執行。一旦DIP被執行,安全模塊質押池的功能將被恢復,鎖定的資金將被收回并發送到Rewards Treasury。安全模塊將重置為全新狀態。在該修復執行后,DYDX質押和賺取DYDX獎勵立即生效。

當然,對于dYdX ,更多行業觀察者仍然充滿期待。dYdX 底層技術架構是去中心化的,運營模式相對其他 DEX 更接近于中心化交易所。可預期的是,如果想成為長期的去中心化衍生品 DEX 龍頭,dYdX 在數據的快速增長后,需要走向更加去中心化的運營和產品模式——更迭整個模式,而不僅僅將公司實體的權力移交給基金會。顯然,去中心化的實現不應當依靠項目方與流動性做市商的深度綁定。

由于目前資方和團隊擁有最大規模的可投票代幣(資方占總量 27.7% 的代幣和團隊的 15% 代幣雖然被鎖定但可以投票),因此團隊和資方在當前階段基本可以決定項目的發展方向。dYdX 項目方對于 2022 年的計劃也是讓項目繼續去中心化;dYdX 的交易費用歸屬目前尚未明確,官網信息模糊指向該部分歸項目方所有,其代幣 dYdX 可能不捕獲這部分價值,但這個問題未來可能通過社區提案解決。

當今這個時代,dYdX當之無愧是鏈上衍生品賽道的龍頭項目。它的迭代和自我完善會成為整個行業觀察者的風向標。

02 Perpetual,承前啟后的探索

Perpetual Protocol是一個建立在以太坊上的去中心化期貨(永續合約)Dex。與 dYdX相比, dYdX采用了類似中心化交易所的鏈下訂單簿撮合機制,Perpetual目前采取vAMM形式來解決交易深度。這無疑在DeFi2.0進程中是衍生品賽道一個承前啟后進化。

Perpetual設計的vAMM被稱為虛擬化自動做市商,其vAMM本身并不存儲真正的資金池,真實資產其實存儲在智能合約金庫中(用戶提供),其通過該金庫管理所有支持 vAMM 的抵押品來加強交易深度。這與Uniswap的vAMM相比也有所差異化的改進。Perpetual與中心化衍生品交易所流程基本相似,其不同是Perpetual交易的交易者的對手方是vAMM 本身。

衍生品

Perpetual V1 版本于2020年12月14日上線。在V1版本中,它使用了獨有的vAMM機制進行定價并實現無限流動性,該機制不需要專門的流動性做市商(LP),僅需要合約交易者就可以交易,即它設定了一個合約交易者互為對手方的自動化交易機制,不需要“合約賣家”,解決了合約交易所依賴LP,同時LP容易發生較大損失的問題,具備較強的獨創性。

V1存在著一些問題,比如需要手動調整k值(不夠去中心化)、存在滑點、極端行情曾出現意外等。在V2版本中,Perp與Uniswap V3耦合,Perp V2將直接架設在Uniswap V3上,引入Maker(做市商)角色,使用Uniswap V3式的聚合流動性方式來做市,搭配“默認的做市策略”降低普通LP的做市門檻。并且,V2將實現“無許可的創建市場”機制,即Uniswap經典的自由上幣機制。同時,也就將V2版本架設在了二層網絡Arbitrum上。

經由Perpetual 兩個版本的迭代,我們既可以看到在DeFi2.0進程中衍生品賽道的進化,也可以看到它自己的迭代與完善經歷。

0201 V1 版本

AMM/訂單簿:使用自動化做市商(AMM)或訂單簿形式組織交易,是去中心化交易所的基本分類,Perp使用的是虛擬AMM(vAMM,詳見下文)進行交易,不使用訂單簿,屬于AMM類交易所。

合約類型:Perp提供的合約是永續合約,永續合約是一種期貨合約,為加密貨幣交易領域所獨有,與傳統合約的不同之處是,它永遠不會到期,而會在固定的時間后續訂。即每一個時間段,按照市場價格和持倉情況,多/空方其中一方向另一方收取一次資金費,同時倉位繼續持有,相當于重新開立一份合約。

交易對:目前,Perp V1 提供18個交易對,包括ETH/USDC和BTC/USDC、YFI/USDC、DOT/USDC、SNX/USDC、AAVE/USDC等等。

多/空(long/short):用戶在Perp V1交易中,可以做多或者做空。

杠桿倍數:可選擇的杠桿倍數在1倍-10倍之間,每0.5倍為一檔,比如能夠開3.5倍做多倉位,但不能開3.6倍的。

資金費:與中心化交易所的傳統永續合約設計類似,Perp上的永續合約持倉者每隔一段時間支付/收取一次費用,Perp上的資金費每小時支付一次。(計算方式見下文)

結算和抵押品:Perp使用USDC進行結算和作為抵押品,即它的開倉和結算都不使用其他資產,無論持倉BTC還是AAVE合約,都使用USDC進行開倉和結算。

在交易環節,以虛擬AMM定價,實際開倉/平倉的資金從資金池(Vault)進出,資金池中僅有USDC一種代幣,開倉/平倉僅影響池中USDC數量;

在清算環節,由Chainlink喂價,保證金率低于6.5%時頭寸將被清算,清算后的獲利在保險基金與清算人之間分配。保險基金用于彌補行情劇烈波動時,平倉后穿倉的損失;

Staking提供者在Perp上不作為流動性提供者,僅僅是保險基金的初始提供者,承擔保險基金賠付時的損失風險,同時享有手續費收入。

vAMM相對于AMM和訂單簿,有如下幾個優點:規避了無償損失和做市商損失,增加了預言機喂價的價格發現功能,并且相對于復雜AMM和訂單簿規則都實現了免于對專業做市商和流動性提供者的高度依賴。其代價是類似于AMM機制的L型價格弧線,交易者需要忍受一定的滑點。

V2版本

承上所述,由于DeFi生態的爆炸式增長,使得以太坊主鏈擁堵、gas費用暴漲,以及因為效率問題放大了交易者需要忍受滑點的風險,使用二層網絡以加快交易速度、降低交易手續費已經成為DeFi項目整體確定性選擇。尤其是衍生品類的DeFi項目,由于未來預期交易規模巨大、交易頻繁、對高時效性、低手續費等方面要求較高等特點,更加迫切使用二層網絡部署產品或測試網。

Perp項目V2版本名稱為Curie(居里),其重點是使用Uniswap V3建構了一個架設于Arbitrum上的新Perpetual Protocol,這一版本改變了整體業務邏輯,目的是以聚合流動性的方式減小滑點、獲得高資金效率的優勢以及因架設在二層網絡Arbitrum上而獲得高交易速度。

聚合流動性(Concentrated Liquidity)

Perp的聚合流動性依托于Uniswap V3,V1中原有的 vAMM 邏輯在Uniswap V3上運行,將流動性集中在當前價格附近, 以提高資金效率。這是此次V2版本的重點之一,若成功落地,資本效率會上升多倍。

其具體實現方式是:

Perp V2 中為LP提供杠桿,稱為「Leveraged LPs」(杠桿 LP)。

同時,在Uniswap V3上以v-Token創建池子,比如vUSDC/vETH,v-token是Perpetual Protocol系統生成的代幣,目前僅用于Perp系統內的做市和交易等,這些池子真實的建立在目前的Uniswap架設在Arbitrum的V3上。

若LP向清算所(Clearing House)提供1,000 USDC進行做市,則Leveraged LPs功能可以在10倍范圍內添加vUSDC,即最打可按照10 X為系統添加10,000 vUSDC,這10,000 vUSDC就成為LP可以在系統內放置流動性的總額度(也稱為“信用”),LP可以將其添加到相應資產和區間上,比如可以分為5,000 vUSDC和價值5,000 vUSDC的vETH,添加到相應流動性池中。

在LP確定了對相應資產的分配額度后,系統鑄造相應v-token,按照上述例子,系統鑄造5,000 vUSDC和價值5,000 vUSDC的2 vETH(按照ETH價格2,500美金計算),LP可以按照自己的做市策略將這些v-token分配到Uniswap V3上的相應區間。

另外,LP的這10,000 vUSDC也可以作為交易額度進行使用,即LP可以在系統內以交易者角色在1,000 vUSDC額度內開倉。

Uniswap交易費用:由于清算所在這些池中同時充當LP和交易者,且目前Uniswap V3并未開始收取協議費用,所有交易手續費歸LP,因此Perp在Uniswap V3上的交易凈費用為零。(也就是LP不需要花費Uniswap上的交易費用,但Perp本身仍向交易者收取手續費)

做市商(Maker)

Perp V2版本首次引入了做市商(Maker)角色,其做市方式如上文“聚合流動性”部分所述:Maker在獲得了系統授予的信用之后,可以按照在Uniswap V3上做市的方式,將vUSDC放置在希望做市的價格區間中的Tick上。(Uniswap V3的做市方式詳見相應研報和文章)

收益:做市商將獲得交易者(Trader)向Perpetual Protocol支付的手續費。注意,這部分費用不是“交易者向Uniswap V3支付的費用”,如上文所述,由于Perp在Uniswap V3的池中,是由系統同時實際扮演做市商和交易者角色,因此Uniswap上的費用為0。做市商獲得的是Perp協議本身收取的費用。

這一更改使得在Perp上做市的得失更接近在Uniswap V3 上做市,可能存在無償損失(IL),但由于流動性放置區間在價格附近,因此資金損失比此前的vAMM反而將提升。

但另一個問題是,此前的vAMM能夠提供無限流動性(盡管在行情劇烈波動時,任何AMM提供無限流動性的代價都是極端價格),但引入Uniswap V3 之后,Perp將可能失去無限流動性這一優勢。原本的vAMM無需對手方即可交易,但Uniswap V3模式下的vAMM需要對手方作為流動性來源方可交易。

Perp在這個問題上,準備以保險基金作為補充:由保險基金在無流動性情況下作為對手方。

保險基金

保險基金在V1版本中已經存在,其角色和功能是:在系統發生問題并導致交易者損失時,尤其是結算故障出現時,由保險基金進行賠付。

在V2版本中,保險基金新增了兩項責任:

在無流動性時作為交易對手方與交易者(用戶)進行交易,即上文所闡述的對Uniswap方案的補充,使得流動性獲得一個補充。
在裸頭寸/多空頭寸不平衡時參與支付,即,如果多空頭寸不平衡,比如多頭有100 vETH的倉位,而空頭有120 vETH的倉位,則不平衡的部分由保險基金作為對手方。
實際上,1是2的一種特殊情況,其本質也是多空的不平衡,導致使用保險基金作為對手方。

注意,在V1中,套利機器人理論上能夠搬平Perp系統內由于AMM式交易產生的場內價格與指數價格的偏離,因此保險基金僅是套利機器人故障或者xDai結算問題或者Perp協議故障時使用。

而在V2中,情況2同樣也會被市場上的套利機器人搬平,通常情況下,所以保險基金的作用除了1)情況下使用外,一樣是一種補充。鑒于在V1中,Perp已經通過極端情況下要求交易者對大單拆單的方式(此處僅簡單描述,需了解詳情請查閱相關資料),在519中實現了Perp場內不插針,在V2中,同樣也會有機器人和相關機制存在,預期其機制將使需要保險基金支付的“頭寸不平衡”僅成為一種非常少見的情形。

聯合保證金模式與多資產保證金(Cross-margin&multi-assets collateral)

聯合保證金即“全倉模式”,用賬戶的所有余額來建立多個頭寸,而不像V1中,為每一個頭寸設立單獨的余額(單獨余額相當于是逐倉模式)。

多資產保證金即多幣種保證金。V1采用的是USDC單幣種進行結算,不能使用其他資產進行交易。V2的多幣種保證金,意味著可以用多種資產進行交易,同時,可以用A幣種來進行B幣種的合約交易,例如,交易者Alice可以使用ETH作為抵押品,在BTC-USDC永續合約市場上開多,持有BTC多頭頭寸,結算時需要先計算BTC/USDC的盈虧,再計算ETH/USDC的盈虧——也就是BTC/ETH之間的實際匯率,最后決定Alice拿回來的ETH是多了還是少了,如果BTC對USDC價格下跌了,對ETH反而上漲,有可能Alice拿回的ETH反而增多。

無需許可的市場創建(Permissionless Market Creation)

這一功能實現的是整個去中心化衍生品交易所的共同追求之一:實現像Uniswap一樣的“無限制全自由上幣”。

同時,Perp V2支持Uniswap v3的 TWAP(時間加權平均價格)和Chainlink作為預言機的指數價格來源,這意味著如果一個資產在這些平臺上有一個價格輸入,任何人就都可以從中創建一個永久的市場。彼時資產選擇可能不再局限于加密貨幣——外匯,商品,甚至股票。在V1中只有Chainlink作為喂價來源。

限價單和止損單

這一功能在V1時即確定進行開發。

V2版本在以太坊二層網絡Arbitrum上運行

Arbitrum是采用欺詐證明(與之相對的是零知識證明)進行驗證的一個二層網絡項目,基于Optimistic Rollup,計算在線下,而數據在以太坊主網上,同時100%支持EVM,即對以太坊主網上的項目遷移過去更友好,不過安全性上Optimistic Rollup的方案整體不如zk-Rollup。目前已有多個Dex項目上到了Arbitrum上,包括Uniswap V3、Bancor、Sushiswap等等,以及與Perp同為期貨Dex的Mcdex。

Perp官方在對V2的介紹中稱,V2的速度可能達到V1的65倍,但這一倍數需要謹慎參考,實際情況需要在其V2上線后進行觀察。

Perp V1架設在以太坊側鏈xDai上,按照項目方披露的數據,Perp貢獻的交易量占xDai的70%以上,在二層網絡沒有實際落地的情況下,xDai的確是一個可用方案。而xDai存在交易量瓶頸,隨著Perp交易量進一步增大,極端行情面對交易量瞬時暴增的情況,容易擁堵甚至障礙。這一潛在問題再Arbitrum上或將得到解決。

采用Uniswap V3和Chainlink作為預言機

在V1版本中,Perp僅采用了Chainlink進行喂價,且Chainlink上到了Perp所在的以太坊側鏈xDai上進行低延時喂價。在V2版本中,由于Perp實際使用Uniswap V3,二者天然同在Arbitrum,因此很方便能夠使用Uniswap進行喂價。

03 以Vigoss為例,解析原生產品的進化

vigoss 的原型起始于2020年7月份,原本是Zero One團隊想做杠桿代幣,后來改成杠桿交易,最后又改做成永續合約了,因為普適性更大一些。與幣安、ok等中心化交易所全封閉期貨交易所、dydx半封閉半開放期貨交易所相比,vigoss是在整個行業經歷了做期貨產品到底是一個金融工程問題還是一個協議創新的問題的校正、迭代和優化后作出的選擇,全開放期貨交易所vigoss擁抱defi2.0就變得合情合理了——選擇協議創新就是要往開放性發展,成為鏈上樂高的一個組件。

DeFi2.0+vigoss全部流程“on chain",沒有環節被中心化的環節干擾到。期貨市場工具Vigoss做為DeFi2.0時代原生的衍生品項目,具有一下優勢與特色:

自動虛擬做市。剝離了交易對與資產的關系,因此用戶在交易的過程中可以使用更低的滑點進行交易。
提供15X杠桿,杠桿水平根據每月評估穩步提高,將最終達到50X。
完善的風險控制機制,利用AMM機制,極大程度防止穿倉風險,使區塊鏈中的作惡者如閃電貸攻擊需要付出極大的攻擊成本。
工作原理

衍生品

例子:

虛擬化自動做事做市

Vigoss同樣使用了Uniswap Protocol中 x* y=k的常數積方程來決定當前交易價格。在此基礎上團隊提出(VAAMM:Virtual Activation Automated Market Maker)算法。

進行交易時是由協議自動做市的, 價格的變動嚴格遵守常數積方程x*y=k。
同時協議需要流動性與流動性提供者,交易者的資金是儲存在保證金池中的(Vault),
無需對手方買賣才即可撮合交易。只有當有頭寸買賣的時候,交易價格才會變動。同時一個交易的盈利約等于另外交易或流動性提供者的虧損,反之亦然。
風險控制

因為使用了杠桿交易,即使虛擬化做市的存在,用戶保證金存在保證金池中,用戶也有穿倉的風險,因此,我們設置了如下機制降低這種風險的發生,同時極大的增加了作惡者如閃電貸攻擊者的攻擊成本。

資金費

虛擬做市往往會造成合約中價格與外部市場價格偏離的狀況, 我們設計了如下方法來激勵合約價格回歸外部市場價格。從而平衡多空交易雙方的交易額。

1、當支付資金費時,在每60分鐘,chainlink會對標的進行喂價,協議根據當前的喂價與合約中價格的差額讓多空雙方進行補償。即如果多方價格高于喂價,多方講將會支付多的資金費給空方,以此激勵用戶買入空頭交易對。資金費只會在市場開放的時候觸發(vigoss在項目早期,交易人數少的時候,采用交易員和機器人的方式,對沖套取資金費 穩定增長。)

2、激勵套利者。套利者可以在價格背離的時候在其他他協議中買賣資產,同時在Vigoss協議中反向做多或做空,最終使得價格回歸chainlink喂價。

資金費的主要目的是使Vigoss交易對的價格趨近于外部市場價格。

價格計算公式公示如下:

資金費=頭寸*資金費比率 資金費比率= (過去60分鐘的vigoss交易對平均價格- 過去60分鐘外部平均價格)/24

如資金費比率為正,即多頭向空頭支付資金,反之則為空頭向多頭支付資金。其中外部價格是由chainlink喂價。資金費每60分鐘結算,所以,通過資金費存在,例如,多頭獲利者會想在清算資金費之前關閉合約,因此來避免交資金費給空方,同時套利者看你會在這時買入空方,一次獲得資金費的收益。

不再需要風險金池

風險金池不再需要,風險由 LP 來承擔。

Vigoss將會收取一定比例的交易手續費,測試階段手續費收入100%給到LP。

熔斷

衍生品

未來規劃:預言機-vAMM價格差距過大熔斷。

是否前端會顯示停牌

另外注意,在市場熔斷期間,資金費將不會被觸發。

預言機價格清算

因為Vigoss使用了標記價格來防止市場操作行為或者流動性不足引起的強制平倉。當倉位維持保證金低于6.25%的時候,將可以由清算人進行強制清倉。

例:

當前ETH/USD單價為100,用戶提供10000USD作為保證金使用5倍杠桿,此時用戶頭寸為50000USD,保證金率為20%。當ETH/USD跌破86.25時候,此時保證金率為6.25%,滿足最低維持保證金比率,即用戶的倉位可以被清算。

Vigoss的合約采取公開清算策略,任何清算人都可以在滿足最低維持保證金比率的情況下對交易者倉位進行強制清算。強制清倉觸發時,交易者的委托合約將會被取消,作為激勵,清算人可以獲得1.25%的剩余名義倉位,余下的保證金將會被儲存在LP 資金池中。

在正常市場情況下,Vigoss會使用合約內的市場價格進行清算,當合約內價格與外部預言機價格差距超過10%的情況下,清算價格則會以預言機價格為準,以此來保護交易者。

如果倉位發生穿倉,穿倉倉位的損失優先由 LP 資金池 進行補充。

LP相關機制

Vigoss從一開始引入LP作為流動性提供者,但是由于我們采用vAMM機制,僅需要采用USDT作為單幣質押的幣種。

單幣提供流動性

衍生品

LP提供流動性的USDT將被拆成兩份,其中第二份vUSDT將以100%抵押率按照當前vAMM的價格鑄幣生成vETH與第一份vUSDT組成LP token注入進vAMM池里。

LP風險提示與撤出判斷條件

衍生品

如上圖所示,當LP撤出流動性,如果其撤出的vETH數量少于之前抵押鑄幣的數量,Vigoss自動將撤出的vUSDT中的一部分用于在vAMM中購入vETH補齊鑄造的數量。但若此時撤出的vUSDT無法補足vETH的差額,那么LP將無法撤出流動性。
LP將承擔無常損失的風險。
為了保護交易者,使得vAMM資金池中有足夠的流動性能夠讓交易者平倉,Vigoss會一定程度限制LP大量撤出。

衍生品

注意,在正常的市場條件下,LP足夠分散,那么上述對LP的限制條件并不會觸發。但當vAMM的LP過于集中,那么LP會面臨無法完全撤出流動性的風險。

例:假設某時刻vAMM池中有 10,000 vETH,20,000,000vUSDT. vAMM中vETH/vUSDT的單價為2,000. 此時Alice決定提供400,000USDT作為LP, 那么她的400,000USDT首先將被兌換成兩份vUSDT,其中一份為200,000vUSDT直接進入vAMM池,另一份200,000vUSDT將被用來按此時的vAMM中的vETH價格抵押鑄造出 100vETH進入vAMM池. Alice提供流動性后,vAMM池中有 10,100vETH, 20,200,000vUSDT. Alice提供的流動性占整個vAMM池的1/101 = 0.990099%.

在Alice提供了流動性之后的一段時間里,所有交易員總計新增了500做多倉位,新增了300做空倉位。假設此段時間內沒有新的LP進入,則此時vAMM池中有9,900vETH, 20,608,080.808081vUSDT (vAMM中vETH/vUSD的單價為2,081.624324). 此時Alice打算完全撤出她的流動性,那么Vigoss將按下述過程計算出Alice能得到USDT數目:首先,由于Alice提供的流動性占整個vAMM池的1/101 = 0.990099%,她能撤出 98.019802vETH 和204,040.404040vUSDT. vAMM池中還剩余 9801.980198vETH 和 20,404,040.404040vUSDT. 由于撤出的vETH不足鑄造的100vETH, 故Vigoss會自動將Alice撤出的vUSDT中的4,122.861266vUSDT用于在此時的vAMM中購買出1.980198vETH (購買后,vAMM中還剩余9,800.000000vETH和20,408,163.265306vUSD). 這樣補足了鑄造的100vETH用于贖回抵押的200,000vUSD. 故最終Alice能得到204,040.404040-4,122.861266+200,000=399,917.542774USDT (以及在提供流動性期間賺得的手續費與資金費)。

未來數字貨幣領域一定會出現復雜的金融工具,vigoss是其中一部分,后續發展除了以上開放性發展,還有如下開發計劃:

1 要新增功能杠桿交易,杠桿部分由flux協議信用借款給用戶在vigoss上交易。

2 多鏈發展

3 為所有長尾資產提供永續合約服務

4 為合成資產提供永續合約服務

5 為NFT標的提供永續合約服務

以此可見,DeFi2.0時代的原生產品vigoss擁有多的開發潛力和空間。

以與flux協議的聯動效應為例,我們可以解析在DeFi2.0時代衍生品市場中借貸協議與期權協議如何迭代進化以及前景——在數學上,一切金融產品,無論是股票、債券、期貨合約、期權,還是房地產、抵押債券,全部都可以還原成某種形式的期權。背后起支撐作用的,是布萊克—斯克爾斯—默頓期權定價模型(Black-Scholes-Merton Model)。

從數學的角度,可以將抵押貸款理解為看漲期權和看跌期權的組合。債權人不僅是在提供資金,更是在賣出一種奇異期權:如果擔保品價格(St)上漲,債務人可以用更低價格(L)買回擔保品,債權人必須要以這個行權價賣出。如果擔保品價格下跌,債務人就可以用更高價格(L)賣出擔保品,這時債權人必須用這個行權價買入。因此,收取的利息,既可以理解成是資金的使用成本,也可以理解成是期權賣方為給買方提供便利而索取的保險費。

抵押借貸在數學上等價于一種行權價為借貸本金 L 的「期權」,代入布萊克—斯克爾斯—默頓期權定價模型,解二階齊次線性拋物型偏微分方程, 得到的是:

衍生品

衍生品

衍生品

圖中 L 是一個三元復合函數,為本次抵押貸款視為歐式看跌期權時的價格。Q 為擔保品價值,F 為貸款本金,N 代表正態分布變量的累積概率分布函數。Log 是自然對數函數 ln 的非標準寫法。

如果把借貸市場視為奇異期權買方和賣方的一場博弈,最優的情況,當然是擔保品價格上漲。這時候,借款人可以收回現貨,從現貨增值中獲利;貸出者也可以按期收回本息。整個流程中,比特幣在發揮擔保品價值,而借貸市場也承擔了價格發現的功能。可以預見的是,vigoss與flux協議的聯動會有很好的化學反應,而這只是vigoss未來開發計劃的一部分。

結語

“去年的DeFi+流動性挖礦,引爆了整個加密經濟,給我們帶來了一個風起云涌的DeFi,但大家逐漸發現了流動性挖礦這種短期激勵模式的弊端,流動性提供者和協議長期利益并沒有形成一致,這種矛盾的存在導致DeFi在度過一個絢爛的夏天之后后繼乏力;今年又出現了Gamefi+打金/游戲即挖礦(play to earn),現在在這個賽道活躍的開發者和玩家大都不是為著游戲體驗而來的,大都是奔著挖礦的財富故事而來;明年,可能還會有別的熱點+新的挖礦模式……這不是加密經濟好的進化、演進的方式,相反,我們認為這會透支區塊鏈技術對下一個時代變革使命的力量。本文的敘事方式為開發者在對“DeFi+流動性挖礦”反思的基礎上的演進。”

我們放棄了用這段描述開篇,是因為我們在與vigoss的開發團隊Zero One創始人Robin交流中受到一些啟發。下面是Robin與我們交流的內容整理,我們以此結尾,希望可以給更多朋友以啟發:

我覺得文章開頭是個立場問題。礦圈看DeFi覺得你們都是給我們貢獻手續費的,然而因為DeFi的財富效應他們難以理解。傳統金融看礦圈又何嘗不是呢?或許DeFi接收了btc泡沫,GameFi又接收了DeFi的泡沫,然而每個圈子看對方都是泡沫。今年四五月份滿地土狗借貸、機槍池時候我覺得自己行業也挺泡沫了,不過最近擠走了不少泡沫去了GameFi。

沒有泡沫,不少優質公鏈也難以為繼發展至今,而現在的defi也面臨同樣的情況,大浪淘沙之后純粹的礦幣維系的DeFi都逐漸走向了消亡,后DeFi時代(DeFi2.0)就是純粹拼各家DeFi滿足用戶金融業務需求的能力。交易類、借貸類、保險類,大家一起去掉礦后什么業務能生存下去,基本就是寒冬到來的時候的DeFi基本格局。永續合約協議的發展未來一定是去滿足小幣、新幣、合成資產甚至NFT,而交易對不僅要滿足usdt、usdc用戶,還要迎合更多算穩用戶,在內容上和中心化交易所走差異化競爭,在結構上去搭協議樂高、聚合生態。隨著區塊鏈上出現越來越多復雜且變化多端的金融組合物,永續合約協議才會全面爆發。僅靠dydx依托資本的交易所一家獨秀,這個賽道是極不健康的。

歡迎使用Markdown編輯器

你好! 這是你第一次使用 Markdown編輯器 所展示的歡迎頁。如果你想學習如何使用Markdown編輯器, 可以仔細閱讀這篇文章,了解一下Markdown的基本語法知識。

新的改變

我們對Markdown編輯器進行了一些功能拓展與語法支持,除了標準的Markdown編輯器功能,我們增加了如下幾點新功能,幫助你用它寫博客:

  • 全新的界面設計 ,將會帶來全新的寫作體驗;
  • 在創作中心設置你喜愛的代碼高亮樣式,Markdown 將代碼片顯示選擇的高亮樣式 進行展示;
  • 增加了 圖片拖拽 功能,你可以將本地的圖片直接拖拽到編輯區域直接展示;
  • 全新的 KaTeX數學公式 語法;
  • 增加了支持甘特圖的mermaid語法1 功能;
  • 增加了 多屏幕編輯 Markdown文章功能;
  • 增加了 焦點寫作模式、預覽模式、簡潔寫作模式、左右區域同步滾輪設置 等功能,功能按鈕位于編輯區域與預覽區域中間;
  • 增加了 檢查列表 功能。
  • 功能快捷鍵

    撤銷:Ctrl/Command + Z
    重做:Ctrl/Command + Y
    加粗:Ctrl/Command + B
    斜體:Ctrl/Command + I
    標題:Ctrl/Command + Shift + H
    無序列表:Ctrl/Command + Shift + U
    有序列表:Ctrl/Command + Shift + O
    檢查列表:Ctrl/Command + Shift + C
    插入代碼:Ctrl/Command + Shift + K
    插入鏈接:Ctrl/Command + Shift + L
    插入圖片:Ctrl/Command + Shift + G
    查找:Ctrl/Command + F
    替換:Ctrl/Command + G

    合理的創建標題,有助于目錄的生成

    直接輸入1次#,并按下space后,將生成1級標題。
    輸入2次#,并按下space后,將生成2級標題。
    以此類推,我們支持6級標題。有助于使用TOC語法后生成一個完美的目錄。

    如何改變文本的樣式

    強調文本 強調文本

    加粗文本 加粗文本

    標記文本

    刪除文本

    引用文本

    H2O is是液體。

    210 運算結果是 1024.

    插入鏈接與圖片

    鏈接: link.

    圖片:

    帶尺寸的圖片:

    居中的圖片:

    居中并且帶尺寸的圖片:

    當然,我們為了讓用戶更加便捷,我們增加了圖片拖拽功能。

    如何插入一段漂亮的代碼片

    去博客設置頁面,選擇一款你喜歡的代碼片高亮樣式,下面展示同樣高亮的 代碼片.

    // An highlighted block var foo = 'bar';

    生成一個適合你的列表

    • 項目
      • 項目
        • 項目
  • 項目1
  • 項目2
  • 項目3
    • 計劃任務
    • 完成任務

    創建一個表格

    一個簡單的表格是這么創建的:

    項目Value
    電腦$1600
    手機$12
    導管$1

    設定內容居中、居左、居右

    使用:---------:居中
    使用:----------居左
    使用----------:居右

    第一列第二列第三列
    第一列文本居中第二列文本居右第三列文本居左

    SmartyPants

    SmartyPants將ASCII標點字符轉換為“智能”印刷標點HTML實體。例如:

    TYPEASCIIHTML
    Single backticks'Isn't this fun?'‘Isn’t this fun?’
    Quotes"Isn't this fun?"“Isn’t this fun?”
    Dashes-- is en-dash, --- is em-dash– is en-dash, — is em-dash

    創建一個自定義列表

    Markdown
    Text-to-HTML conversion tool
    Authors
    John
    Luke

    如何創建一個注腳

    一個具有注腳的文本。2

    注釋也是必不可少的

    Markdown將文本轉換為 HTML。

    KaTeX數學公式

    您可以使用渲染LaTeX數學表達式 KaTeX:

    Gamma公式展示 Γ(n)=(n?1)!?n∈N\Gamma(n) = (n-1)!\quad\forall n\in\mathbb NΓ(n)=(n?1)!?nN 是通過歐拉積分

    Γ(z)=∫0∞tz?1e?tdt.\Gamma(z) = \int_0^\infty t^{z-1}e^{-t}dt\,. Γ(z)=0?tz?1e?tdt.

    你可以找到更多關于的信息 LaTeX 數學表達式here.

    新的甘特圖功能,豐富你的文章

    Mon 06Mon 13Mon 20已完成 進行中 計劃一 計劃二 現有任務Adding GANTT diagram functionality to mermaid
    • 關于 甘特圖 語法,參考 這兒,

    UML 圖表

    可以使用UML圖表進行渲染。 Mermaid. 例如下面產生的一個序列圖:

    #mermaid-svg-g5daJv8fF567bxFq .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-g5daJv8fF567bxFq .label text{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .node rect,#mermaid-svg-g5daJv8fF567bxFq .node circle,#mermaid-svg-g5daJv8fF567bxFq .node ellipse,#mermaid-svg-g5daJv8fF567bxFq .node polygon,#mermaid-svg-g5daJv8fF567bxFq .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-g5daJv8fF567bxFq .node .label{text-align:center;fill:#333}#mermaid-svg-g5daJv8fF567bxFq .node.clickable{cursor:pointer}#mermaid-svg-g5daJv8fF567bxFq .arrowheadPath{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-g5daJv8fF567bxFq .flowchart-link{stroke:#333;fill:none}#mermaid-svg-g5daJv8fF567bxFq .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-g5daJv8fF567bxFq .edgeLabel rect{opacity:0.9}#mermaid-svg-g5daJv8fF567bxFq .edgeLabel span{color:#333}#mermaid-svg-g5daJv8fF567bxFq .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-g5daJv8fF567bxFq .cluster text{fill:#333}#mermaid-svg-g5daJv8fF567bxFq div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-g5daJv8fF567bxFq .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-g5daJv8fF567bxFq text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-g5daJv8fF567bxFq .actor-line{stroke:grey}#mermaid-svg-g5daJv8fF567bxFq .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-g5daJv8fF567bxFq .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-g5daJv8fF567bxFq #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-g5daJv8fF567bxFq .sequenceNumber{fill:#fff}#mermaid-svg-g5daJv8fF567bxFq #sequencenumber{fill:#333}#mermaid-svg-g5daJv8fF567bxFq #crosshead path{fill:#333;stroke:#333}#mermaid-svg-g5daJv8fF567bxFq .messageText{fill:#333;stroke:#333}#mermaid-svg-g5daJv8fF567bxFq .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-g5daJv8fF567bxFq .labelText,#mermaid-svg-g5daJv8fF567bxFq .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-g5daJv8fF567bxFq .loopText,#mermaid-svg-g5daJv8fF567bxFq .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-g5daJv8fF567bxFq .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-g5daJv8fF567bxFq .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-g5daJv8fF567bxFq .noteText,#mermaid-svg-g5daJv8fF567bxFq .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-g5daJv8fF567bxFq .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-g5daJv8fF567bxFq .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-g5daJv8fF567bxFq .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-g5daJv8fF567bxFq .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .section{stroke:none;opacity:0.2}#mermaid-svg-g5daJv8fF567bxFq .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-g5daJv8fF567bxFq .section2{fill:#fff400}#mermaid-svg-g5daJv8fF567bxFq .section1,#mermaid-svg-g5daJv8fF567bxFq .section3{fill:#fff;opacity:0.2}#mermaid-svg-g5daJv8fF567bxFq .sectionTitle0{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .sectionTitle1{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .sectionTitle2{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .sectionTitle3{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-g5daJv8fF567bxFq .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .grid path{stroke-width:0}#mermaid-svg-g5daJv8fF567bxFq .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-g5daJv8fF567bxFq .task{stroke-width:2}#mermaid-svg-g5daJv8fF567bxFq .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .taskText:not([font-size]){font-size:11px}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-g5daJv8fF567bxFq .task.clickable{cursor:pointer}#mermaid-svg-g5daJv8fF567bxFq .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-g5daJv8fF567bxFq .taskText0,#mermaid-svg-g5daJv8fF567bxFq .taskText1,#mermaid-svg-g5daJv8fF567bxFq .taskText2,#mermaid-svg-g5daJv8fF567bxFq .taskText3{fill:#fff}#mermaid-svg-g5daJv8fF567bxFq .task0,#mermaid-svg-g5daJv8fF567bxFq .task1,#mermaid-svg-g5daJv8fF567bxFq .task2,#mermaid-svg-g5daJv8fF567bxFq .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutside0,#mermaid-svg-g5daJv8fF567bxFq .taskTextOutside2{fill:#000}#mermaid-svg-g5daJv8fF567bxFq .taskTextOutside1,#mermaid-svg-g5daJv8fF567bxFq .taskTextOutside3{fill:#000}#mermaid-svg-g5daJv8fF567bxFq .active0,#mermaid-svg-g5daJv8fF567bxFq .active1,#mermaid-svg-g5daJv8fF567bxFq .active2,#mermaid-svg-g5daJv8fF567bxFq .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-g5daJv8fF567bxFq .activeText0,#mermaid-svg-g5daJv8fF567bxFq .activeText1,#mermaid-svg-g5daJv8fF567bxFq .activeText2,#mermaid-svg-g5daJv8fF567bxFq .activeText3{fill:#000 !important}#mermaid-svg-g5daJv8fF567bxFq .done0,#mermaid-svg-g5daJv8fF567bxFq .done1,#mermaid-svg-g5daJv8fF567bxFq .done2,#mermaid-svg-g5daJv8fF567bxFq .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-g5daJv8fF567bxFq .doneText0,#mermaid-svg-g5daJv8fF567bxFq .doneText1,#mermaid-svg-g5daJv8fF567bxFq .doneText2,#mermaid-svg-g5daJv8fF567bxFq .doneText3{fill:#000 !important}#mermaid-svg-g5daJv8fF567bxFq .crit0,#mermaid-svg-g5daJv8fF567bxFq .crit1,#mermaid-svg-g5daJv8fF567bxFq .crit2,#mermaid-svg-g5daJv8fF567bxFq .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-g5daJv8fF567bxFq .activeCrit0,#mermaid-svg-g5daJv8fF567bxFq .activeCrit1,#mermaid-svg-g5daJv8fF567bxFq .activeCrit2,#mermaid-svg-g5daJv8fF567bxFq .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-g5daJv8fF567bxFq .doneCrit0,#mermaid-svg-g5daJv8fF567bxFq .doneCrit1,#mermaid-svg-g5daJv8fF567bxFq .doneCrit2,#mermaid-svg-g5daJv8fF567bxFq .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-g5daJv8fF567bxFq .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-g5daJv8fF567bxFq .milestoneText{font-style:italic}#mermaid-svg-g5daJv8fF567bxFq .doneCritText0,#mermaid-svg-g5daJv8fF567bxFq .doneCritText1,#mermaid-svg-g5daJv8fF567bxFq .doneCritText2,#mermaid-svg-g5daJv8fF567bxFq .doneCritText3{fill:#000 !important}#mermaid-svg-g5daJv8fF567bxFq .activeCritText0,#mermaid-svg-g5daJv8fF567bxFq .activeCritText1,#mermaid-svg-g5daJv8fF567bxFq .activeCritText2,#mermaid-svg-g5daJv8fF567bxFq .activeCritText3{fill:#000 !important}#mermaid-svg-g5daJv8fF567bxFq .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-g5daJv8fF567bxFq g.classGroup text .title{font-weight:bolder}#mermaid-svg-g5daJv8fF567bxFq g.clickable{cursor:pointer}#mermaid-svg-g5daJv8fF567bxFq g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-g5daJv8fF567bxFq g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-g5daJv8fF567bxFq .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-g5daJv8fF567bxFq .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-g5daJv8fF567bxFq .dashed-line{stroke-dasharray:3}#mermaid-svg-g5daJv8fF567bxFq #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq .commit-id,#mermaid-svg-g5daJv8fF567bxFq .commit-msg,#mermaid-svg-g5daJv8fF567bxFq .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-g5daJv8fF567bxFq g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-g5daJv8fF567bxFq g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-g5daJv8fF567bxFq g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-g5daJv8fF567bxFq g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-g5daJv8fF567bxFq .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-g5daJv8fF567bxFq .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-g5daJv8fF567bxFq .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-g5daJv8fF567bxFq .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-g5daJv8fF567bxFq .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-g5daJv8fF567bxFq .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-g5daJv8fF567bxFq .edgeLabel text{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-g5daJv8fF567bxFq .node circle.state-start{fill:black;stroke:black}#mermaid-svg-g5daJv8fF567bxFq .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-g5daJv8fF567bxFq #statediagram-barbEnd{fill:#9370db}#mermaid-svg-g5daJv8fF567bxFq .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-g5daJv8fF567bxFq .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-g5daJv8fF567bxFq .statediagram-state .divider{stroke:#9370db}#mermaid-svg-g5daJv8fF567bxFq .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-g5daJv8fF567bxFq .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-g5daJv8fF567bxFq .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-g5daJv8fF567bxFq .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-g5daJv8fF567bxFq .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-g5daJv8fF567bxFq .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-g5daJv8fF567bxFq .note-edge{stroke-dasharray:5}#mermaid-svg-g5daJv8fF567bxFq .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-g5daJv8fF567bxFq .error-icon{fill:#522}#mermaid-svg-g5daJv8fF567bxFq .error-text{fill:#522;stroke:#522}#mermaid-svg-g5daJv8fF567bxFq .edge-thickness-normal{stroke-width:2px}#mermaid-svg-g5daJv8fF567bxFq .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-g5daJv8fF567bxFq .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-g5daJv8fF567bxFq .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-g5daJv8fF567bxFq .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-g5daJv8fF567bxFq .marker{fill:#333}#mermaid-svg-g5daJv8fF567bxFq .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-g5daJv8fF567bxFq {color: rgba(0, 0, 0, 0.75);font: ;}張三李四王五你好!李四, 最近怎么樣?你最近怎么樣,王五?我很好,謝謝!我很好,謝謝!李四想了很長時間, 文字太長了不適合放在一行.打量著王五...很好... 王五, 你怎么樣?張三李四王五

    這將產生一個流程圖。:

    #mermaid-svg-j4jz7L4H4dJdoFJr .label{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);fill:#333;color:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .label text{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .node rect,#mermaid-svg-j4jz7L4H4dJdoFJr .node circle,#mermaid-svg-j4jz7L4H4dJdoFJr .node ellipse,#mermaid-svg-j4jz7L4H4dJdoFJr .node polygon,#mermaid-svg-j4jz7L4H4dJdoFJr .node path{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-j4jz7L4H4dJdoFJr .node .label{text-align:center;fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .node.clickable{cursor:pointer}#mermaid-svg-j4jz7L4H4dJdoFJr .arrowheadPath{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .edgePath .path{stroke:#333;stroke-width:1.5px}#mermaid-svg-j4jz7L4H4dJdoFJr .flowchart-link{stroke:#333;fill:none}#mermaid-svg-j4jz7L4H4dJdoFJr .edgeLabel{background-color:#e8e8e8;text-align:center}#mermaid-svg-j4jz7L4H4dJdoFJr .edgeLabel rect{opacity:0.9}#mermaid-svg-j4jz7L4H4dJdoFJr .edgeLabel span{color:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .cluster rect{fill:#ffffde;stroke:#aa3;stroke-width:1px}#mermaid-svg-j4jz7L4H4dJdoFJr .cluster text{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr div.mermaidTooltip{position:absolute;text-align:center;max-width:200px;padding:2px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:12px;background:#ffffde;border:1px solid #aa3;border-radius:2px;pointer-events:none;z-index:100}#mermaid-svg-j4jz7L4H4dJdoFJr .actor{stroke:#ccf;fill:#ECECFF}#mermaid-svg-j4jz7L4H4dJdoFJr text.actor>tspan{fill:#000;stroke:none}#mermaid-svg-j4jz7L4H4dJdoFJr .actor-line{stroke:grey}#mermaid-svg-j4jz7L4H4dJdoFJr .messageLine0{stroke-width:1.5;stroke-dasharray:none;stroke:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .messageLine1{stroke-width:1.5;stroke-dasharray:2, 2;stroke:#333}#mermaid-svg-j4jz7L4H4dJdoFJr #arrowhead path{fill:#333;stroke:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .sequenceNumber{fill:#fff}#mermaid-svg-j4jz7L4H4dJdoFJr #sequencenumber{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr #crosshead path{fill:#333;stroke:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .messageText{fill:#333;stroke:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .labelBox{stroke:#ccf;fill:#ECECFF}#mermaid-svg-j4jz7L4H4dJdoFJr .labelText,#mermaid-svg-j4jz7L4H4dJdoFJr .labelText>tspan{fill:#000;stroke:none}#mermaid-svg-j4jz7L4H4dJdoFJr .loopText,#mermaid-svg-j4jz7L4H4dJdoFJr .loopText>tspan{fill:#000;stroke:none}#mermaid-svg-j4jz7L4H4dJdoFJr .loopLine{stroke-width:2px;stroke-dasharray:2, 2;stroke:#ccf;fill:#ccf}#mermaid-svg-j4jz7L4H4dJdoFJr .note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-j4jz7L4H4dJdoFJr .noteText,#mermaid-svg-j4jz7L4H4dJdoFJr .noteText>tspan{fill:#000;stroke:none}#mermaid-svg-j4jz7L4H4dJdoFJr .activation0{fill:#f4f4f4;stroke:#666}#mermaid-svg-j4jz7L4H4dJdoFJr .activation1{fill:#f4f4f4;stroke:#666}#mermaid-svg-j4jz7L4H4dJdoFJr .activation2{fill:#f4f4f4;stroke:#666}#mermaid-svg-j4jz7L4H4dJdoFJr .mermaid-main-font{font-family:"trebuchet ms", verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .section{stroke:none;opacity:0.2}#mermaid-svg-j4jz7L4H4dJdoFJr .section0{fill:rgba(102,102,255,0.49)}#mermaid-svg-j4jz7L4H4dJdoFJr .section2{fill:#fff400}#mermaid-svg-j4jz7L4H4dJdoFJr .section1,#mermaid-svg-j4jz7L4H4dJdoFJr .section3{fill:#fff;opacity:0.2}#mermaid-svg-j4jz7L4H4dJdoFJr .sectionTitle0{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .sectionTitle1{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .sectionTitle2{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .sectionTitle3{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .sectionTitle{text-anchor:start;font-size:11px;text-height:14px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .grid .tick{stroke:#d3d3d3;opacity:0.8;shape-rendering:crispEdges}#mermaid-svg-j4jz7L4H4dJdoFJr .grid .tick text{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .grid path{stroke-width:0}#mermaid-svg-j4jz7L4H4dJdoFJr .today{fill:none;stroke:red;stroke-width:2px}#mermaid-svg-j4jz7L4H4dJdoFJr .task{stroke-width:2}#mermaid-svg-j4jz7L4H4dJdoFJr .taskText{text-anchor:middle;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .taskText:not([font-size]){font-size:11px}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutsideRight{fill:#000;text-anchor:start;font-size:11px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutsideLeft{fill:#000;text-anchor:end;font-size:11px}#mermaid-svg-j4jz7L4H4dJdoFJr .task.clickable{cursor:pointer}#mermaid-svg-j4jz7L4H4dJdoFJr .taskText.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutsideLeft.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutsideRight.clickable{cursor:pointer;fill:#003163 !important;font-weight:bold}#mermaid-svg-j4jz7L4H4dJdoFJr .taskText0,#mermaid-svg-j4jz7L4H4dJdoFJr .taskText1,#mermaid-svg-j4jz7L4H4dJdoFJr .taskText2,#mermaid-svg-j4jz7L4H4dJdoFJr .taskText3{fill:#fff}#mermaid-svg-j4jz7L4H4dJdoFJr .task0,#mermaid-svg-j4jz7L4H4dJdoFJr .task1,#mermaid-svg-j4jz7L4H4dJdoFJr .task2,#mermaid-svg-j4jz7L4H4dJdoFJr .task3{fill:#8a90dd;stroke:#534fbc}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutside0,#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutside2{fill:#000}#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutside1,#mermaid-svg-j4jz7L4H4dJdoFJr .taskTextOutside3{fill:#000}#mermaid-svg-j4jz7L4H4dJdoFJr .active0,#mermaid-svg-j4jz7L4H4dJdoFJr .active1,#mermaid-svg-j4jz7L4H4dJdoFJr .active2,#mermaid-svg-j4jz7L4H4dJdoFJr .active3{fill:#bfc7ff;stroke:#534fbc}#mermaid-svg-j4jz7L4H4dJdoFJr .activeText0,#mermaid-svg-j4jz7L4H4dJdoFJr .activeText1,#mermaid-svg-j4jz7L4H4dJdoFJr .activeText2,#mermaid-svg-j4jz7L4H4dJdoFJr .activeText3{fill:#000 !important}#mermaid-svg-j4jz7L4H4dJdoFJr .done0,#mermaid-svg-j4jz7L4H4dJdoFJr .done1,#mermaid-svg-j4jz7L4H4dJdoFJr .done2,#mermaid-svg-j4jz7L4H4dJdoFJr .done3{stroke:grey;fill:#d3d3d3;stroke-width:2}#mermaid-svg-j4jz7L4H4dJdoFJr .doneText0,#mermaid-svg-j4jz7L4H4dJdoFJr .doneText1,#mermaid-svg-j4jz7L4H4dJdoFJr .doneText2,#mermaid-svg-j4jz7L4H4dJdoFJr .doneText3{fill:#000 !important}#mermaid-svg-j4jz7L4H4dJdoFJr .crit0,#mermaid-svg-j4jz7L4H4dJdoFJr .crit1,#mermaid-svg-j4jz7L4H4dJdoFJr .crit2,#mermaid-svg-j4jz7L4H4dJdoFJr .crit3{stroke:#f88;fill:red;stroke-width:2}#mermaid-svg-j4jz7L4H4dJdoFJr .activeCrit0,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCrit1,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCrit2,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCrit3{stroke:#f88;fill:#bfc7ff;stroke-width:2}#mermaid-svg-j4jz7L4H4dJdoFJr .doneCrit0,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCrit1,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCrit2,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCrit3{stroke:#f88;fill:#d3d3d3;stroke-width:2;cursor:pointer;shape-rendering:crispEdges}#mermaid-svg-j4jz7L4H4dJdoFJr .milestone{transform:rotate(45deg) scale(0.8, 0.8)}#mermaid-svg-j4jz7L4H4dJdoFJr .milestoneText{font-style:italic}#mermaid-svg-j4jz7L4H4dJdoFJr .doneCritText0,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCritText1,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCritText2,#mermaid-svg-j4jz7L4H4dJdoFJr .doneCritText3{fill:#000 !important}#mermaid-svg-j4jz7L4H4dJdoFJr .activeCritText0,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCritText1,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCritText2,#mermaid-svg-j4jz7L4H4dJdoFJr .activeCritText3{fill:#000 !important}#mermaid-svg-j4jz7L4H4dJdoFJr .titleText{text-anchor:middle;font-size:18px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr g.classGroup text{fill:#9370db;stroke:none;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family);font-size:10px}#mermaid-svg-j4jz7L4H4dJdoFJr g.classGroup text .title{font-weight:bolder}#mermaid-svg-j4jz7L4H4dJdoFJr g.clickable{cursor:pointer}#mermaid-svg-j4jz7L4H4dJdoFJr g.classGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-j4jz7L4H4dJdoFJr g.classGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr .classLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.5}#mermaid-svg-j4jz7L4H4dJdoFJr .classLabel .label{fill:#9370db;font-size:10px}#mermaid-svg-j4jz7L4H4dJdoFJr .relation{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-j4jz7L4H4dJdoFJr .dashed-line{stroke-dasharray:3}#mermaid-svg-j4jz7L4H4dJdoFJr #compositionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #compositionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #aggregationStart{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #aggregationEnd{fill:#ECECFF;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #dependencyStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #dependencyEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #extensionStart{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr #extensionEnd{fill:#9370db;stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr .commit-id,#mermaid-svg-j4jz7L4H4dJdoFJr .commit-msg,#mermaid-svg-j4jz7L4H4dJdoFJr .branch-label{fill:lightgrey;color:lightgrey;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .pieTitleText{text-anchor:middle;font-size:25px;fill:#000;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .slice{font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr g.stateGroup text{fill:#9370db;stroke:none;font-size:10px;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr g.stateGroup text{fill:#9370db;fill:#333;stroke:none;font-size:10px}#mermaid-svg-j4jz7L4H4dJdoFJr g.statediagram-cluster .cluster-label text{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr g.stateGroup .state-title{font-weight:bolder;fill:#000}#mermaid-svg-j4jz7L4H4dJdoFJr g.stateGroup rect{fill:#ECECFF;stroke:#9370db}#mermaid-svg-j4jz7L4H4dJdoFJr g.stateGroup line{stroke:#9370db;stroke-width:1}#mermaid-svg-j4jz7L4H4dJdoFJr .transition{stroke:#9370db;stroke-width:1;fill:none}#mermaid-svg-j4jz7L4H4dJdoFJr .stateGroup .composit{fill:white;border-bottom:1px}#mermaid-svg-j4jz7L4H4dJdoFJr .stateGroup .alt-composit{fill:#e0e0e0;border-bottom:1px}#mermaid-svg-j4jz7L4H4dJdoFJr .state-note{stroke:#aa3;fill:#fff5ad}#mermaid-svg-j4jz7L4H4dJdoFJr .state-note text{fill:black;stroke:none;font-size:10px}#mermaid-svg-j4jz7L4H4dJdoFJr .stateLabel .box{stroke:none;stroke-width:0;fill:#ECECFF;opacity:0.7}#mermaid-svg-j4jz7L4H4dJdoFJr .edgeLabel text{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .stateLabel text{fill:#000;font-size:10px;font-weight:bold;font-family:'trebuchet ms', verdana, arial;font-family:var(--mermaid-font-family)}#mermaid-svg-j4jz7L4H4dJdoFJr .node circle.state-start{fill:black;stroke:black}#mermaid-svg-j4jz7L4H4dJdoFJr .node circle.state-end{fill:black;stroke:white;stroke-width:1.5}#mermaid-svg-j4jz7L4H4dJdoFJr #statediagram-barbEnd{fill:#9370db}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-cluster rect{fill:#ECECFF;stroke:#9370db;stroke-width:1px}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-cluster rect.outer{rx:5px;ry:5px}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-state .divider{stroke:#9370db}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-state .title-state{rx:5px;ry:5px}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-cluster.statediagram-cluster .inner{fill:white}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-cluster.statediagram-cluster-alt .inner{fill:#e0e0e0}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-cluster .inner{rx:0;ry:0}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-state rect.basic{rx:5px;ry:5px}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-state rect.divider{stroke-dasharray:10,10;fill:#efefef}#mermaid-svg-j4jz7L4H4dJdoFJr .note-edge{stroke-dasharray:5}#mermaid-svg-j4jz7L4H4dJdoFJr .statediagram-note rect{fill:#fff5ad;stroke:#aa3;stroke-width:1px;rx:0;ry:0}:root{--mermaid-font-family: '"trebuchet ms", verdana, arial';--mermaid-font-family: "Comic Sans MS", "Comic Sans", cursive}#mermaid-svg-j4jz7L4H4dJdoFJr .error-icon{fill:#522}#mermaid-svg-j4jz7L4H4dJdoFJr .error-text{fill:#522;stroke:#522}#mermaid-svg-j4jz7L4H4dJdoFJr .edge-thickness-normal{stroke-width:2px}#mermaid-svg-j4jz7L4H4dJdoFJr .edge-thickness-thick{stroke-width:3.5px}#mermaid-svg-j4jz7L4H4dJdoFJr .edge-pattern-solid{stroke-dasharray:0}#mermaid-svg-j4jz7L4H4dJdoFJr .edge-pattern-dashed{stroke-dasharray:3}#mermaid-svg-j4jz7L4H4dJdoFJr .edge-pattern-dotted{stroke-dasharray:2}#mermaid-svg-j4jz7L4H4dJdoFJr .marker{fill:#333}#mermaid-svg-j4jz7L4H4dJdoFJr .marker.cross{stroke:#333}:root { --mermaid-font-family: "trebuchet ms", verdana, arial;}#mermaid-svg-j4jz7L4H4dJdoFJr {color: rgba(0, 0, 0, 0.75);font: ;}鏈接長方形圓圓角長方形菱形
    • 關于 Mermaid 語法,參考 這兒,

    FLowchart流程圖

    我們依舊會支持flowchart的流程圖:

    Created with Rapha?l 2.3.0開始我的操作確認?結束yesno
    • 關于 Flowchart流程圖 語法,參考 這兒.

    導出與導入

    導出

    如果你想嘗試使用此編輯器, 你可以在此篇文章任意編輯。當你完成了一篇文章的寫作, 在上方工具欄找到 文章導出 ,生成一個.md文件或者.html文件進行本地保存。

    導入

    如果你想加載一篇你寫過的.md文件,在上方工具欄可以選擇導入功能進行對應擴展名的文件導入,
    繼續你的創作。


  • mermaid語法說明 ??

  • 注腳的解釋 ??

  • 總結

    以上是生活随笔為你收集整理的以Vigoss、Perp、dydx为例,解析衍生品在DeFi2.0进程里的演进的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 一区二区三区视频在线播放 | 免费古装一级淫片潘金莲 | 秋霞7777鲁丝伊人久久影院 | 三女同志亚洲人狂欢 | 亚洲一区二区激情 | 久久久久1 | 国产爽视频| 伊人色综合久久久 | 免费观看久久久 | 黄色在线视频网址 | 日本三级韩国三级三级a级按摩 | 国产精品久久久久久久9999 | 欧美日韩在线播放视频 | 日日操影院 | 动漫av在线| 性按摩玩人妻hd中文字幕 | 日韩电影二区 | 欧美三级中文字幕 | 无码人妻精品丰满熟人区 | 欧美成年人 | 国产一区二区三区黄 | 污视频网址 | 久久精品伊人 | 欧美9999 | 911精品国产一区二区在线 | 黑人欧美一区二区三区 | 亚洲天堂99| 亚洲欧美日韩在线一区 | 五月婷婷免费视频 | 伊人精品在线视频 | 蜜桃臀av一区二区三区 | 人人插人人爽 | 白嫩初高中害羞小美女 | 色综合天天色 | 裸体av淫导航 | 婷婷伊人 | 色婷婷在线影院 | 美日韩免费视频 | 国产黄色大片 | 午夜在线观看一区 | 中文字幕无码av波多野吉衣 | 激情五月综合色婷婷一区二区 | 男女h网站 | 大尺度av | 日韩成人综合 | 亚洲黄色免费 | 中文字幕国产精品 | 欧美精品日韩少妇 | 日日夜夜国产精品 | 一级黄色网 | 色屁屁草草影院ccyycom | 免费成人黄色av | 国产经典自拍 | 国产在线精品一区二区三区 | 国产精品黄色片 | 少妇人妻一级a毛片 | 国产日韩成人内射视频 | 夜夜爽夜夜叫夜夜高潮漏水 | 日韩七区 | 亚洲爱v | 999xxxxx | 精品久久久久久一区二区里番 | 日韩第三页 | 亚洲天堂激情 | 婷婷深爱激情 | 国产又大又粗又爽 | 你懂的网址在线观看 | 香蕉久久一区二区三区 | 国语对白做受欧美 | 亚洲图片一区 | 日本一区二区三区免费在线观看 | 九色国产精品 | 亚洲国产精品网站 | 欧美群妇大交乱 | 精品人妻一区二区色欲产成人 | 少女与动物高清版在线观看 | 9999精品视频 | 1024视频污 | 久久久久亚洲av无码专区首jn | 日韩一区二区免费看 | 40一50一60老女人毛片 | 久久免费激情视频 | 亚洲av无码一区二区三区性色 | 丰满人妻中伦妇伦精品app | 欧美午夜理伦三级在线观看 | 日本性猛交| 日韩在线视频你懂的 | h欧美| 特黄特色大片免费播放器使用方法 | 欧美日本亚洲韩国国产 | 亚洲精品资源在线 | 欧美在线aa | 国产成人精品免高潮费视频 | 久久综合久久综合久久综合 | 国产亚洲精品av | 自拍偷拍视频网站 | 白浆一区 | 拍真实国产伦偷精品 | 激情内射亚洲一区二区三区爱妻 |