網絡手續費
我們講單例模式首先要了解單例著重要解決什么問題。這個問題是網絡手續費。不需要太深入到opcode計價表,區分calldata和storage,我們只需要記住一個事實:跨合約調用是昂貴的,寫數據是昂貴的。舉個例子來說,如果我們觀察一個user->A->B->C的uniswapv2的路由交易,我們需要訪問幾個合約呢?對于用戶來說,只想完成A-C的兌換,我們一起來算:
router合約
userA資產減少變更,需要去Atoken合約登記一下,寫入新余額
調用pairA->B
pairA->B的B資產轉移到用戶user地址,需要去Btoken合約登記一下transfer,寫新余額
pairB-C的的B資產增加,user的資產減少,去Btoken合約登記一下
調用pairB->C
pairB->C的C資產減少,B資產增加
除了傳遞兌換信息的router調用外,其他的6次:兩次pair調用,token的結算4次。單例要解決的就是這六次的調用。我們有機會減少嘛?
加密貨幣總市值下降至1.1萬億美元:金色財經報道,據CoinGecko數據顯示,當前加密貨幣總市值為1.1萬億美元,24小時跌幅達3.1%,24小時交易量為757.75億美元,當前比特幣市值占比為40.2%,以太坊市值占比為17.3%。[2023/2/25 12:28:31]
pool不再是一個地址
我們在v2和v3時,pool是一個通過工廠合約創造的智能合約。里面有流動性的數據和負責交易的接口。而在v4中,多個pool都在poolmanager下面的存儲。當我們構造一個新的pool時,并沒有構造一個新的智能合約,而是在poolmananger下多了一些數據。
按照傳統軟件工程的觀點,這么設計耦合嚴重,所有的代碼功能塞到一個文件/智能合約里是不太好的。但是對于無情的gas計價程序來說,這么做能省下不少gas,這就是好設計。
但是這么做也有一個明顯的問題,就是原來一個pool管理兩種資產,現在一個poolmanager管理無數個資產。怎么才能算清楚我賬上的10個Atoken是屬于哪個pool的呢?這和下一個問題也有關系。
從菜市場到賭場
我們回到7次調用的問題,我們只解釋了單例為什么能解決pair的調用。對于V2V3的模式來說,更像是菜市場買菜。我們每一次swap都要錢貨兩清。然后去下一個檔口賣不同的菜。但是對于以太坊的ERC20來說,錢貨兩清這一動作是要支付手續費的。
某LOOKS巨鯨提取350萬枚LOOKS并轉入MEXC:金色財經報道,Lookonchain監測數據顯示,某LOOKS巨鯨提取350萬枚LOOKS(103萬美元),并轉移到MEXC。
據悉,該巨鯨從MEXC和DEX買入LOOKS,平均買入價0.25美元。該巨鯨目前質押380萬枚LOOKS(111萬美元)和3128萬枚X2Y2(590萬美元),是X2Y2的最大質押者。[2023/2/13 12:03:23]
我們現實生活中有另一種辦法管理多個檔口的方法,就是賭場籌碼。籌碼可以出入口清算,至于個別用戶是如何虧的、如何賺的,負責兌換的服務員毫不關心,我們只在進門出門清算,中間的輸贏并不需要上報銀行系統劃轉資產。而v2v3的菜市場模式中,我們則支付了eth來把每筆的清算都寫進區塊鏈了,自然就貴了。當然這也不是什么新鮮的方案,這是我們熟悉的CEX方案。
但是相較于CEX,一個智能合約籌碼清算方案有額外的優勢:如果我們極端一些,如果我們在A檔口贏了10U的籌碼,但是在你跑步去前臺清算的路上,賭場倒閉了,那么我們的錢就沒有了。notyourkey,notyourmoney。但是dex不一樣,你化身閃電俠,一筆鏈上交易的結構中跑了很多swap的操作,你會光速但是按照順序跑完入金,兌換籌碼,下場,出場結算。evm落后的單線程保護你跑得贏,跑得快。當然,我們焦慮也是多余的,一個去中心化交易所是不會倒閉的,更為重要的優勢是這一筆交易是可以鏈接其他DeFi的,雖然業務走的多,但是還是Defilego世界的一環。
景順:美聯儲若暫停加息,市場對風險資產的偏好會增加:12月14日消息,景順首席全球市場策略師 Kristina Hooper認為,如果美聯儲明年一季度按下加息的暫停鍵,市場對風險資產的偏好會增加。這種情況下,通常發達市場股價表現比新興市場更好,小盤股的表現比大盤股更好,周期性股票要比防御性股票表現好。在固定收益的部分,較高風險的債券會高于投資級的債券,而投資級的債券又高于政府債券的表現。美元會開始走弱。(證券時報)[2022/12/15 21:45:20]
我們基本講清楚了單例是如何解決我們說的7次調用的問題。至于籌碼是如何記賬的,為什么大家還在說復式記賬法,這部分就需要深入代碼講了。我們先略過。我們再來復習一下user->A->B->C的uniswapv4的路由交易:
調用router
outer找poolmanager
兌換籌碼
去poolmanager找pool的內部位置
交易
重復2/3步驟兩次
兌換籌碼
那么我們這次調用了幾個合約呢?4個。router、poolmanager、tokenA、tokenC。我們使用了poolmanager來規避了額外的兩次pair調用和兩次tokenb的記賬。
英國投資協會敦促政府批準區塊鏈交易基金:7月7日消息,英國資產管理行業正在推動政府建立一個使用區塊鏈技術的新類別的基金。代表英國資產管理行業的行業機構投資協會(Investment Association)周四呼吁政府和倫敦金融城監管機構“加快”審批區塊鏈交易基金,此類基金面向投資者發行數字代幣,而不是傳統的基金份額。據悉,投資協會為全球范圍內的客戶監管近10萬億英鎊(17.5萬億美元)資產。(AFR)[2022/7/7 1:57:37]
HOOK
一個pool有下面八個時點(v4-core/contracts/interfaces/IHooks.sol):
beforeInitialize/afterInitialize(before/afterthestateofapoolisinitialized).
beforeModifyPosition/afterModifyPosition(Thehookcalledbefore/afterapositionismodified)
beforeSwap/afterSwap(Thehookcalledbefore/afteraswap)
beforeDonate/afterDonate(Thehookcalledbefore/afterdonate)
BSCFA宣布Lucky Floki獲得BSC STAR白名單:據官方消息,BSCFA官方渠道宣布,Lucky Floki成為BSC STAR白名單項目。
BSC STAR是BSCFA(公益基金組織)發布的一個明星項目評選,主要挑選GameFi/NFT/社交/元宇宙類項目進行評比,最終評選冠軍項目將獲得300W美金的天使輪融資。
據悉,Lucky Floki是BSC鏈上的一款Meme代幣,在Unicrypt進行Presale。[2022/6/18 4:37:03]
在這8個時點,pool的創建者可以插入自己的代碼。注意,用戶可以在hook規定好的行為中,選擇注冊自己期待使用的時點和方法。當其他人觸發,例如其他用戶交易后,用戶可以被動的執行代碼。注意,hook定義權在pool的構建者,并不是pool的用戶能定義的。當然用戶可以用腳投票選一個自己喜歡的。
這里我故意先使用了非常抽象而不是非常具體的描述方式,因為過于具體會限制想象力。我們馬上會給出具體的例子。
我們進一步學習代碼后,需要大家注意的是下面幾點:
構造一個pool,需要指定hook。
hook也沒有后續修改的方法。pool和hook綁定。當然hook也可以是一個可升級合約。
如果想做一個符合自己需求的hook,那要構造一個新的pool
僅僅是hook不同,同一個交易對可以有多個pool
官方給了幾個例子,其中比較有學習意義的是現價單的hook。其實不需要看代碼,limitorder做了下面的一些事情
管理用戶注冊的:
placeorder
kill
withdraw
管理時點的:
afterswap:觸發后,查找是否有可執行的limitorder,fill訂單。
這就是limitedorderhook的全部功能。
我們認為hook只是一種業務描述思路,如果你想做的業務可以分解成用戶行為注冊,和時點被動觸發行為,那么你的業務就可以遷移到uniswapv4中。可以是限價單,可以是時間加權AMM。
從這個角度出發,我們完全可以處理業務,不能局限于交易場景。借貸、期權、穩定幣、NFT都可以用hook重構。swap處理瞬時業務,ModifyPosition處理跨期業務。swap兌換了什么、modifiyposition了什么其實沒那么重要。
這里我臆造一個hook作為例子:功能是通過hook,使我把資產留在里面,不著急退出uniswap低手續費平臺。
1.管理用戶注冊
mint/burn會構造單邊流動性,把資產以lp形式存進去
2.管理時點
beforeswap時點中創造巨大搶跑優勢,或者用高昂的動態手續費,阻止普通用戶swa
那么我的pool是沒有交易者會來的,這是一個靜態的資金池,我的資產通過lp形式暫時存在了uniswap里,后續我可以提取出來處理用于其他交易。減少了清算次數。
用hook重寫業務是一個很確定的方向。為了確保長期競爭優勢,uni的grant支持也會強很多。
現在已經有一些項目蓄勢待發,等待v4上線了。例如下面的借貸協議將和uniswapv4一起上線。
Uniswapv4是什么
對于v4,我們盲人摸象地做兩個比較:
univ4和layer2:
?相同點:
低手續費優勢
eth生態兼容
?不同點:
v4項目方需要用hook的方式重寫
一筆交易內進入低手續費環境再返回eth主網,調用其他主網上服務
不需要跨鏈橋
univ4和云交易所:
?相同點:
一起開pool,共享低手續費環境
共享流動性
?不同點:
v4不限制業務類型,不一定是交易所
v4共享流動性需要外包給好的路由提供商
v4無準入
我們認為應當以平臺的視角來定義uniswapv4。當達到臨界點后,在eth手續費的壓力下,v4可能是一個比layer2好的方案,會有更多金融業務主動或者被動的從主網遷移到uniswapv4平臺。尤其金融業務其實相對不復雜,但是安全性要求更高,可以在eth主網閃電撤出,緩解eth主網的緊急需求。這個角度講,uniswap已經打贏了dex戰爭,v4的競爭對手是cex云交易所,matic這種平臺級別的競爭對手。
那么代價呢?
流動性代幣:沒有流動性代幣了。或者說這個記賬單位不能脫離uniswap范圍,項目方要在uniswapv4的生態里解決問題。
流動性碎片化:v3一個資產對有三個不同手續費池,而v4則是完全不同的,這對router和maker的管理要求更高了。這個的解決辦法除了市場博弈也要看uniswap社區能不能有一些標準化的方案,URC。
LINK是今天少數幾個處于綠色狀態的例外之一。過去24小時內,比特幣價格再次惡化,跌至18天低點29,650美元。大多數山寨幣也紛紛變紅,ETH接近跌破1900美元。SOL拋售的大盤股最多.
1900/1/1 0:00:00離上次發挖礦的教程曾經過去兩個多月了。這兩個多月發作了什么事情呢?特斯拉買入15億美刀BTC美圖也不修圖買BTC和ETH去了 美國一大波ETF申請中 加密幣買賣所coinbase快要上市了20多.
1900/1/1 0:00:00比特幣價格近期的大幅反彈可能即將到來。這是因為比特幣正接近測試關鍵支撐區域,該支撐區域很可能為另一次強勁反彈奠定基礎。在異常低迷的七月,比特幣一直在走低.
1900/1/1 0:00:00在最近的Shapella升級之后,股權證明區塊鏈現在首次啟用了提款,導致ETH持有者的活動激增,他們急切地將自己的代幣抵押給網絡驗證者.
1900/1/1 0:00:00來自Glassnode的鏈上數據顯示,比特幣鯨魚最近打破了之前在減半周期中保持的模式。 比特幣鯨魚的增長以前在每個周期都在減少根據鏈上分析公司Glassnode的數據,當前周期與過去幾個周期所遵.
1900/1/1 0:00:00以太坊擴展團隊StarkWare于7月12日為其StarkNet第2層網絡部署了QuantumLeap升級.
1900/1/1 0:00:00