來源|?bertcmiller
請看由EmGithub提供的rawsAssetsOracle
請看由EmGithub提供的rawdYdXLiquidator.sol
我花了大量時間嘗試最小化我的gas消耗。很多我的設計選擇都是以此為依據。關于這份合約的策略,有幾點需要注意
我沒有發送很多單獨償還和兌換的交易,相反,我選擇把多筆償還打包在一個交易里,這使得我的固定gas開銷可以在多筆償還里分攤,由此提高我的交易捆的競爭力。
我需要以最佳方式把ETH兌換成USDC再兌換成sUSD,并需要決定是在有函數exactInput還是exactOutput的Uniswapv3上交易。無論我怎么做都會在某個地方產生滑點,因此我選擇有函數exactOutput的,以避免調用balanceOf。
在這些交易的精確性和gas效率之間存在折衷。只要我能償還我的閃電貸,缺乏精確性也沒什么問題,而且因為我要在gas效率上競爭,我選擇了對它優化。
還有一些“戰術上”的東西需要注意:
對所有東西的批準都前向負載到我的合約里的構建函數。這樣,我可以在部署的時候支付開銷,并減少執行時使用的gas。
香港證監會:虛擬資產交易平臺營運營牌照自6月1日起申領:金色財經報道,據香港證監會消息,6月1日《適用于虛擬資產交易平臺營運者的指引》生效。香港證監會表示歡迎已準備好遵守證監會標準的虛擬資產交易平臺營運者申領牌照。無意申領牌照的營運者,則應著手以有序方式結束其于香港的業務。這標志香港大力推進的全球虛擬資產中心建設獲重大進展。業內人士已整裝待發。部分迫不及待表示將第一時間提交申請。(中國基金報)[2023/5/28 9:47:20]
我不從我的賬戶燒毀gastoken,而是從我的合約燒毀,同樣是為了提高gas效率。
函數名稱都是指定的,它們的函數選擇器的前導符為0x,使用函數選擇器也能稍微減少gas的使用。
與直接添加require語句相比,函數修改器需要消耗稍微多一點gas。
這份合約還有一些可以被優化的方法,例如使用gas費用而不用coinbase轉賬。
0xSisyphus非常慷慨提出給我借ETH,我就不用使用閃電貸了,這能大大節省gas。但隨著時間推移,大額的貸款都還錢了,因此總的機會就減少了。我決定不接受0xSisyphus借的錢,因為機會不再大到使這樣做是明智的。
安全公司Dedaub因披露Uniswap重入漏洞獲得4萬美元漏洞賞金:1月3日消息,安全公司 Dedaub 團隊宣布獲得 Uniswap Labs 的 4 萬枚 USDC 安全漏洞賞金,因為其披露 Uniswap 的一個嚴重漏洞,該漏洞有重入并耗盡用戶的資金的可能性。不過,Uniswap 團隊已解決該漏洞并在所有鏈上重新部署了 Universal Router 智能合約,資金是安全的。
Uniswap 在 2022 年 11 月份發布通用路由器Universal Router智能合約,可將 ERC20 和 NFT 兌換統一到一個交換路由器中,用戶可以執行異構操作,例如,在一筆交易中交換多個 Token 和 NFT。
Dedaub 表示,該路由器為各種 Token 操作嵌入了腳本語言,此類命令可能包括向第三方(可能不受信任的)接收人的傳輸。如果在傳輸過程中的任何時候調用第三方代碼,該代碼可以重新進入 UniversalRouter 并在合約中臨時認領任何 Token。Dedaub 建議 Uniswap 為新路由器的核心執行添加一個重入鎖,并重新部署。[2023/1/4 9:50:22]
總結:在這個階段,我創建了一份智能合約,以執行捕獲可得的MEV機會。要做到這點,需要認真思考正確的策略,以及如何最小化gas的使用。這份合約是經過多次迭代開發出來的,同時我進行數據上的工作,還把它放在了一個測試環境(Hardhat)里。
福克斯新聞主持人:當貨幣作為控制社會手段時,我理解了比特幣:金色財經報道,據Bitcoin Magazine消息,福克斯新聞主持人Tucker Carlson表示,當中央銀行使用貨幣作為控制社會的手段時,我理解了比特幣。比特幣是“一條可用的逃生路線”。[2022/12/18 21:51:49]
償還MEV和優化gas價格的經濟學
有了一份精心設計的合約和對機會的深入了解,我需要改進我實現這個機會的策略。回顧一下,Flashbot的MEV-Geth客戶端能有效運行競拍,其中gas價格最高的交易捆勝出,會被打包到鏈上。這一重要事實意味著,我需要最大化我的交易捆的gas價格,而不是我支付的ETH總額。
記住了這點,并使用我之前收集到的數據,我制作了一個電子表格來優化我的gas價格。我的合約既有固定的gas開銷,也有可變的gas開銷。固定的gas開銷用于取出閃電貸和做兌換。可變的gas開銷來自我想要償還的貸款數。我很自然地認為在某一點上,償還一筆貸款的邊際收益將低于gas開銷。我運行了幾次測試,以得出實際數字。以下是我的結果:
請注意,這個結果有點令人驚訝——僅償還前4筆(共30筆)的sUSD貸款是最省gas的。此后的每筆貸款都會產生更多的整體利潤,但會降低我的交易捆的gas價格,并降低其競爭力。如果有其他人試圖一次性償還前10筆sUSD貸款,它們的gas消耗效率會降低接近30%!
紐約梅隆銀行和高盛在HQLA x區塊鏈平臺上執行首筆證券借貸交易:金色財經消息,紐約梅隆銀行和高盛在HQLA x區塊鏈平臺上執行首筆證券借貸交易,這兩家公司都是HQLA x的投資者。[2022/7/20 2:26:34]
考慮到未償的sETH貸款更少了,只做sUSD貸款而不把sUSD和sETH合并到一筆交易是最合理的。因此,潛在的回報更少了,支付給礦工的錢也更少了,這使得它們的gas效率相對較低。看到這些發現,我不禁笑了。如果其他人貪婪,一下償還了所有的貸款,或很懶惰,分開償還,那么我就會贏。
然而,其他的貸款還在那里,且償還起來也是有利可圖!我再次嘗試優化我的gas價格,發現如果我償還前4筆sUSD貸款,接下來最省gas的做法是一并償還后6筆最大的sUSD貸款,再分別償還最大的兩筆sETH貸款。此外,假設我贏了,我可以使用從之前的交易捆中獲利的ETH,而不再需要閃電貸了。
Flashbots競拍和我的交易捆排序策略
重復一下情況:我既要在gas效率上競爭,又希望通過償還每筆貸款來最大化我的收益。最佳策略是在每個交易捆中提交幾筆償還,分幾個交易捆進行。這些交易捆會在Flashbots競拍中被各自評估。然而,每筆交易都取決于來自pDAO的交易,是它使得貸款可以被任何人償還。
歐易OKX與Trading View建立合作伙伴關系:據官方消息,歐易OKX與Trading View正式建立合作伙伴關系,用戶可在Trading View賬戶直接接入歐易OKX進行交易。當前,用戶可通過Trading View直接訪問歐易OKX上超過260種加密貨幣,同時歐易OKX在Trading View上增加了640個現貨交易對和100個加密衍生品。
歐易OKX全球首席營銷官Haider·Rafique表示:歐易OKX是全球首家與Trading View進行交易對關聯的頭部加密貨幣交易所。我們希望為交易用戶帶來更好的工具及見解。通過建立合作關系,TradingView客戶可在不離開網站情況下通過歐易OKX進行交易,同時歐易OKX用戶可以充分利用歐易OKX內的TradingView圖表。這使用戶在交易過程中能夠更快地做出決策,并節省他們的切換時間。[2022/7/19 2:23:37]
如果pDAO交易不在交易捆里,那么該交易捆就會失敗。但如果我的每個交易捆里都有pDAO交易,那么只有一個交易捆會成功。也就說,在一個交易捆被成功打包后,其他所有的都是無效的,因為它們會試圖對pDAO交易重復打包。因此,我需要找到方法使得僅在我的第一個交易捆里發送pDAO交易,但同時確保我的其他交易捆不會因為它們沒有pDAO交易而失敗和被扔掉。
解決方案在于Flashbots競拍的一個細微之處。在搜索器開始對競拍使用“把戲”,降低交易捆合并后的礦工費用,Flashbots實行兩輪的模擬。首先,所有的交易捆都被單獨進行模擬,得出它們的gas價格并檢查是否會失敗。在第二輪,成功的交易捆會被按照gas價格排序,并再次進行模擬,以找出前后不一致的交易捆,確保沒有交易捆的gas價格是低于預期的。除非你想這樣做,否則你可能永遠不會有一個交易捆是gas價格在合并后是降低了的。
我意識到我可以做上述搜索器相反的事:我的交易捆不是支付比預期更少的gas費,它們會在第二輪模擬中支付更多。為了做到這點,我將如預期般在第一個交易捆里打包pDAO交易,但要對剩余的交易捆做額外檢查。這些交易捆將推斷它們將會在第幾“輪”模擬,然后相應改變它們的執行。如果它們在“第一輪”,它們將不會償還任何貸款——因為它們嘗試償還的話會失敗——然后無論如何都給礦工支付費用,以獲得高的gas價格,通過第一輪的模擬。
通過了第一輪模擬后,這些交易捆將在第二輪模擬中跟在有pDAO交易的那個交易捆后面。到了這步,它們就能成功償還貸款了。此外,這些交易捆的gas價格會比競拍預期的更高,而不是更低,因此在這里改變執行不是問題。
我是如何確定我的交易捆是在哪一“輪”的呢?通過看我合約的余額。如果在區塊的早期(即在前一個交易捆)我已經成功償還貸款了,那么我的余額應該增加了,因為這樣做能從中獲得收益。因此,我增加了一個條件來檢查我是否獲得任何WETH收益,如果有,則繼續償還貸款。這在測試中是成功的。
總結:這個階段還是關于策略。我使用早期得到的數據、合約和測試環境來思考我要競爭獲得的MEV機會的經濟學邏輯,以及最優策略會是什么。通過使用真實數據,我發現了一個令人驚訝的占有策略,但它很難執行。執行它需要一種新方式來提交交易捆。
第五步:執行
現在手上有了數據、合約、以及我可以開始執行的計劃。基本上,我需要構建多個這樣的交易捆:一方面可以執行我上文的計劃,另一方面監聽交易池里與Synthetix相關的交易以進行尾追。此時,大部分都是實現上的問題。
首先,我使用了Blocknative來監聽pDAO賬戶,以了解相關交易的情況。我讓任何從pDAO賬戶發出的交易信息都會發送到我的機器人。
然后,我同時運行兩個監聽腳本(一個用于sETH和sUSD),以從鏈上獲取數據,得出最優的交易捆策略(例如先償還前3筆sETH貸款,閃電貸X個ETH,并對后2個做相同的事,等),并生成我的合約需要的數據。我需要在每個區塊如此運作,以防價格改變了或有人關閉了貸款,由此改變了最佳策略。這些結果保存在了本地。
最后,我有了一個執行腳本,它會接收發送到我的機器人的待打包交易信息,并從我的監聽腳本加載出最佳打包交易捆策略的結果,自動構建交易捆,并把它們發送到Flashbots。
剩下的事情就是等待。在這段時間,最高額的sETH貸款被借款人償還了,因此我關了機器人中的該部分。幾個最高額sUSD貸款也結束了,這大大減少了預期的回報率。
第六步:關鍵時刻到了
有趣的是,有人試圖通過向相關合約發送交易,想誘使機器人在早期失靈。我不確定這種情況是否也會出現在其他人的機器人上,但我的機器人沒有被誘導成功。
幾個小時后,pDAO發出了真實的交易。經過數周的研究和準備,我知道關鍵時刻到了。我這邊一切都進行很順利:我的監聽腳本運行的很好,交易被接收,交易捆也被構建和提交了。
.....然后意外發生了。連續多個區塊都沒有Flashbots區塊被挖出。我不僅因此失去了機會,也沒有Flashbots搜索器贏得了機會。在區塊頂部沒有了Flashbots交易捆起阻擋作用,一個雄心勃勃的交易池機器人介入了,并搶走了所有有利可圖的貸款。
盡管輸了,但我認為我的方法仍然是正確的。我的優勢在于策略和發現新機會,而不是參與PGA(最優GAS費競拍)。因此,使用Flashbot給了我勝出的最佳機會。鑒于Flashbots已被廣泛采用,遇上連續好幾個非Flashbots區塊也是相當不走運了。
MEV有時被認為是神秘莫測的超級程序員的領域,但它不一定是這樣的。它可以是有趣和刺激的。而游戲規則,如果你要搜尋它們的話,可以說是開放的。這篇文章是關于我學習我所參與的游戲的規則的過程,根據這些規則我想出了策略,并最終執行該策略。盡管我輸了,我學到了很多東西,并在此過程獲得了樂趣。我希望你們也可以,并希望你和我一起參與下一輪的游戲。
原文鏈接:https://bertcmiller.com/2021/09/05/mev-synthetix.html
Gate.io已經完成NEO主網升級。Gate.io現已升級到NEO新主網N3,支持新主網NEO和GAS的充值和提現,老的NEO和GAS代幣支持充值并自動兌換為新主網代幣,提現時請使用新N3鏈提.
1900/1/1 0:00:00親愛的用戶: 頂峰AscendEX將支持PaxosStandard(PAX)品牌升級為PaxDollar(USDP).
1900/1/1 0:00:00在「羊毛黨」隊伍愈發壯大的當下,空投則意味著大量獎勵被外部用戶「薅」走,不空投則難以達到激勵與獎勵早期忠實用戶的效果。如何應對「羊毛黨」的攪局,將越來越考驗項目方團隊的智慧與格局.
1900/1/1 0:00:00親愛的ZT用戶: ZT創新板即將上線MPS,并開啟MPS/USDT交易對。具體上線時間如下:充值:已開啟;交易:2021年9月13日16:30?; MPS ZT創新板即將上線KBT:據官網公告,
1900/1/1 0:00:00鏈聞消息,加密資產管理公司Abra獲5500萬美元C輪融資,IGNIA和BlockchainCapital領投.
1900/1/1 0:00:00為幫助用戶更輕松實現數字資產量化交易,Gate.io量化交易中心全面升級,改名“量化跟單”全新上線,功能及頁面全面升級.
1900/1/1 0:00:00