來源|?bertcmiller
請看由EmGithub提供的rawsAssetsOracle
請看由EmGithub提供的rawdYdXLiquidator.sol
我花了大量時間嘗試最小化我的gas消耗。很多我的設計選擇都是以此為依據。關于這份合約的策略,有幾點需要注意
我沒有發送很多單獨償還和兌換的交易,相反,我選擇把多筆償還打包在一個交易里,這使得我的固定gas開銷可以在多筆償還里分攤,由此提高我的交易捆的競爭力。
我需要以最佳方式把ETH兌換成USDC再兌換成sUSD,并需要決定是在有函數exactInput還是exactOutput的Uniswapv3上交易。無論我怎么做都會在某個地方產生滑點,因此我選擇有函數exactOutput的,以避免調用balanceOf。
在這些交易的精確性和gas效率之間存在折衷。只要我能償還我的閃電貸,缺乏精確性也沒什么問題,而且因為我要在gas效率上競爭,我選擇了對它優化。
還有一些“戰術上”的東西需要注意:
對所有東西的批準都前向負載到我的合約里的構建函數。這樣,我可以在部署的時候支付開銷,并減少執行時使用的gas。
Bitcoin開發人員正在討論是否應該調整代碼以抑制Ordinals和BRC-20令牌:金色財經報道,據WhaleWire透露, Bitcoin開發人員正在討論他們是否應該調整BTC代碼,以抑制 Ordinals 和 BRC-20 令牌。在此之前,價值數十億美元的交易在 5 月份涌入 BTC 網絡,導致交易費用激增和網絡極度擁堵。[2023/6/5 21:15:38]
我不從我的賬戶燒毀gastoken,而是從我的合約燒毀,同樣是為了提高gas效率。
函數名稱都是指定的,它們的函數選擇器的前導符為0x,使用函數選擇器也能稍微減少gas的使用。
與直接添加require語句相比,函數修改器需要消耗稍微多一點gas。
這份合約還有一些可以被優化的方法,例如使用gas費用而不用coinbase轉賬。
0xSisyphus非常慷慨提出給我借ETH,我就不用使用閃電貸了,這能大大節省gas。但隨著時間推移,大額的貸款都還錢了,因此總的機會就減少了。我決定不接受0xSisyphus借的錢,因為機會不再大到使這樣做是明智的。
總結:在這個階段,我創建了一份智能合約,以執行捕獲可得的MEV機會。要做到這點,需要認真思考正確的策略,以及如何最小化gas的使用。這份合約是經過多次迭代開發出來的,同時我進行數據上的工作,還把它放在了一個測試環境(Hardhat)里。
Polygon:預計未來MATIC將用于Polygon zkEVM中的質押和治理:金色財經報道,Polygon在其官方文檔更新Polygon zkEVM主網相關事項。文中指出Polygon zkEVM主網將不會發行單獨的Token,ETH將用于支付網絡gas費,預計未來MATIC將用于Polygon zkEVM中的質押和治理。此外,由于Polygon zkEVM通過ERC-4337支持帳戶抽象,這將允許用戶使用任何Token支付費用。[2023/3/30 13:35:00]
償還MEV和優化gas價格的經濟學
有了一份精心設計的合約和對機會的深入了解,我需要改進我實現這個機會的策略。回顧一下,Flashbot的MEV-Geth客戶端能有效運行競拍,其中gas價格最高的交易捆勝出,會被打包到鏈上。這一重要事實意味著,我需要最大化我的交易捆的gas價格,而不是我支付的ETH總額。
記住了這點,并使用我之前收集到的數據,我制作了一個電子表格來優化我的gas價格。我的合約既有固定的gas開銷,也有可變的gas開銷。固定的gas開銷用于取出閃電貸和做兌換。可變的gas開銷來自我想要償還的貸款數。我很自然地認為在某一點上,償還一筆貸款的邊際收益將低于gas開銷。我運行了幾次測試,以得出實際數字。以下是我的結果:
OP Labs發布Optimism技術去中心化路線圖:3月15日,據官方消息,OP Labs 發布 Optimism 技術去中心化路線圖,路線圖包含 Baseline Decentralization 以及 Cannon fault proofs 兩部分。其中 Baseline Decentralization 將通過達成無許可輸出提案和 bridge decentralization 里程碑以實現 Optimism 網絡和治理系統去中心化升級。[2023/3/15 13:05:01]
請注意,這個結果有點令人驚訝——僅償還前4筆(共30筆)的sUSD貸款是最省gas的。此后的每筆貸款都會產生更多的整體利潤,但會降低我的交易捆的gas價格,并降低其競爭力。如果有其他人試圖一次性償還前10筆sUSD貸款,它們的gas消耗效率會降低接近30%!
考慮到未償的sETH貸款更少了,只做sUSD貸款而不把sUSD和sETH合并到一筆交易是最合理的。因此,潛在的回報更少了,支付給礦工的錢也更少了,這使得它們的gas效率相對較低。看到這些發現,我不禁笑了。如果其他人貪婪,一下償還了所有的貸款,或很懶惰,分開償還,那么我就會贏。
Arbitrum宣布與Coinbase集成,支持發送和接收ETH、DAI和WBTC資產:金色財經報道,據以太坊二層網絡Arbitrum推特,Arbitrum宣布已集成到Coinbase交易所。Coinbase Assets也在社交媒體證實了此消息并表示用戶現在可以在Arbitrum鏈上發送和接收ETH、DAI和WBTC資產。[2023/2/17 12:12:41]
然而,其他的貸款還在那里,且償還起來也是有利可圖!我再次嘗試優化我的gas價格,發現如果我償還前4筆sUSD貸款,接下來最省gas的做法是一并償還后6筆最大的sUSD貸款,再分別償還最大的兩筆sETH貸款。此外,假設我贏了,我可以使用從之前的交易捆中獲利的ETH,而不再需要閃電貸了。
Flashbots競拍和我的交易捆排序策略
重復一下情況:我既要在gas效率上競爭,又希望通過償還每筆貸款來最大化我的收益。最佳策略是在每個交易捆中提交幾筆償還,分幾個交易捆進行。這些交易捆會在Flashbots競拍中被各自評估。然而,每筆交易都取決于來自pDAO的交易,是它使得貸款可以被任何人償還。
如果pDAO交易不在交易捆里,那么該交易捆就會失敗。但如果我的每個交易捆里都有pDAO交易,那么只有一個交易捆會成功。也就說,在一個交易捆被成功打包后,其他所有的都是無效的,因為它們會試圖對pDAO交易重復打包。因此,我需要找到方法使得僅在我的第一個交易捆里發送pDAO交易,但同時確保我的其他交易捆不會因為它們沒有pDAO交易而失敗和被扔掉。
Instagram或將支持通過AR查看NFT:6月16日消息,Instagram已增加數字收藏品板塊,科技KOL Alessandro Paluzzi表示Instagram正在努力支持通過AR 查看數字收藏品,配圖中Instagram NFT收藏頁面顯示See in AR標志。[2022/6/16 4:33:01]
解決方案在于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
Tags:GASETHSHBLASUGASpSTAKE Staked ETHCashBet Coinfutureclasseschain
尊敬的用戶:?????????????BKEXGlobal即將上線CWS,詳情如下:上線交易對:CWS/USDT幣種類型:ERC20?充值功能開放時間:已開放交易功能開放時間:2021年9月13.
1900/1/1 0:00:00尊敬的用戶: ADA節點升級已完成,幣虎交易平臺已恢復ADA充提幣業務。邀您體驗! 幣虎團隊 數字資產投資銀行BitOoda完成第一階段A輪融資:金色財經報道,數字資產投資銀行 BitOoda.
1900/1/1 0:00:00在大草原的邊緣是大河的一個彎道。一邊住著牧民,一邊住著森林人。游牧民族重視森林居民的斧頭和籃子。森林居民喜歡牧民的獸皮和羊毛。隨著雙方變得更加熟悉,他們開始進行貿易.
1900/1/1 0:00:00據CryptoNewsFlash消息,交易經紀商Exness的高級市場策略師WaelMakarem近期表示,投資者對比特幣和以太坊當前的波動持謹慎態度,特別是因為這些基準未能減少早先的損失.
1900/1/1 0:00:00尊敬的XT用戶: XT即將上線AZX,并在創新區開放AZX/USDT交易對。具體開通時間,請關注后續公告.
1900/1/1 0:00:00公告編號2021091302各位關心ZBG的投資者們和項目方:為了保障交易的穩定運行和提升大家的使用體驗,CRU/USDT交易對將于HKT2021年9月13日12:00進行維護.
1900/1/1 0:00:00