比特幣交易所 比特幣交易所
Ctrl+D 比特幣交易所
ads
首頁 > DOT > Info

一文簡析捕獲Synthetix MEV的詳細過程_ETH

Author:

Time:1900/1/1 0:00:00

來源|?bertcmiller

請看由EmGithub提供的rawsAssetsOracle

請看由EmGithub提供的rawdYdXLiquidator.sol

我花了大量時間嘗試最小化我的gas消耗。很多我的設計選擇都是以此為依據。關于這份合約的策略,有幾點需要注意

我沒有發送很多單獨償還和兌換的交易,相反,我選擇把多筆償還打包在一個交易里,這使得我的固定gas開銷可以在多筆償還里分攤,由此提高我的交易捆的競爭力。

我需要以最佳方式把ETH兌換成USDC再兌換成sUSD,并需要決定是在有函數exactInput還是exactOutput的Uniswapv3上交易。無論我怎么做都會在某個地方產生滑點,因此我選擇有函數exactOutput的,以避免調用balanceOf。

在這些交易的精確性和gas效率之間存在折衷。只要我能償還我的閃電貸,缺乏精確性也沒什么問題,而且因為我要在gas效率上競爭,我選擇了對它優化。

還有一些“戰術上”的東西需要注意:

對所有東西的批準都前向負載到我的合約里的構建函數。這樣,我可以在部署的時候支付開銷,并減少執行時使用的gas。

Coinbase高管自6月6日以來已出售超3000萬美元的公司股票:金色財經報道,據Dataroma稱,自6月6日美國證券交易委員會(SEC)對加密貨幣交易所提起訴訟以來,Coinbase高管已出售價值超過3000萬美元的公司股票。Coinbase的聯合創始人兼首席執行官Brian Armstrong在6月5日至8月1日期間以43筆交易領先。在此期間,Armstrong出售了價值2117萬美元的COIN股票。

Armstrong的拋售趨勢始于2022年11月,當時他承諾出售其在該加密貨幣公司2%的股份,以通過New Limit和Research Hub兩家初創公司為科學研究和開發提供資金。除了Armstrong,公司首席會計長Jennifer Jones、首席法務長Paul Grewal、首席人事長Lawrence Brock和董事Rajaram Gokul等其他幾位高管也在這段時間內減持了自己的股票。[2023/9/7 13:25:15]

我不從我的賬戶燒毀gastoken,而是從我的合約燒毀,同樣是為了提高gas效率。

函數名稱都是指定的,它們的函數選擇器的前導符為0x,使用函數選擇器也能稍微減少gas的使用。

Andrew Kang目前在GMX上的ETH多頭頭寸杠桿是50倍,總規模超過1000萬美元:金色財經報道,Arkham監測顯示,加密風險投資公司Mechanism Capital聯合創始人兼合伙人Andrew Kang又回到了他在GMX上對ETH多頭的押注, Kang在Arbitrum和Avalanche中存入了額外的12.5萬抵押品。 Kang目前在GMX上的ETH多頭頭寸杠桿是50倍,總規模超過1000萬美元。[2023/5/9 14:52:39]

與直接添加require語句相比,函數修改器需要消耗稍微多一點gas。

這份合約還有一些可以被優化的方法,例如使用gas費用而不用coinbase轉賬。

0xSisyphus非常慷慨提出給我借ETH,我就不用使用閃電貸了,這能大大節省gas。但隨著時間推移,大額的貸款都還錢了,因此總的機會就減少了。我決定不接受0xSisyphus借的錢,因為機會不再大到使這樣做是明智的。

總結:在這個階段,我創建了一份智能合約,以執行捕獲可得的MEV機會。要做到這點,需要認真思考正確的策略,以及如何最小化gas的使用。這份合約是經過多次迭代開發出來的,同時我進行數據上的工作,還把它放在了一個測試環境(Hardhat)里。

香港將成立Web3.0協會和Web3Hub基金:金色財經報道,香港Web3.0協會將于11日正式成立,協會組成人員包括中國移動香港董事長李鋒、中國工程院院士陳純、以及香港科技創新界立法會議員邱達根等,旨在推動Web3.0在港健康可持續地發展,給特區政府提供政策方向,同時吸引行業精英來港。除了相關協會之外,香港還將設立Web3Hub基金,支持更多海外Web3.0企業落戶香港。[2023/4/10 13:54:54]

償還MEV和優化gas價格的經濟學

有了一份精心設計的合約和對機會的深入了解,我需要改進我實現這個機會的策略。回顧一下,Flashbot的MEV-Geth客戶端能有效運行競拍,其中gas價格最高的交易捆勝出,會被打包到鏈上。這一重要事實意味著,我需要最大化我的交易捆的gas價格,而不是我支付的ETH總額。

記住了這點,并使用我之前收集到的數據,我制作了一個電子表格來優化我的gas價格。我的合約既有固定的gas開銷,也有可變的gas開銷。固定的gas開銷用于取出閃電貸和做兌換。可變的gas開銷來自我想要償還的貸款數。我很自然地認為在某一點上,償還一筆貸款的邊際收益將低于gas開銷。我運行了幾次測試,以得出實際數字。以下是我的結果:

zkSync官方:已解決zkSync Era網絡停機問題,將發布情況報告:金色財經報道,zkSync官方發布推特表示,zkSync Era網絡在北京時間07:52至12:02出現停機。官方將很快向社區提供包含更多詳細信息的事后分析。[2023/4/1 13:39:34]

請注意,這個結果有點令人驚訝——僅償還前4筆(共30筆)的sUSD貸款是最省gas的。此后的每筆貸款都會產生更多的整體利潤,但會降低我的交易捆的gas價格,并降低其競爭力。如果有其他人試圖一次性償還前10筆sUSD貸款,它們的gas消耗效率會降低接近30%!

考慮到未償的sETH貸款更少了,只做sUSD貸款而不把sUSD和sETH合并到一筆交易是最合理的。因此,潛在的回報更少了,支付給礦工的錢也更少了,這使得它們的gas效率相對較低。看到這些發現,我不禁笑了。如果其他人貪婪,一下償還了所有的貸款,或很懶惰,分開償還,那么我就會贏。

然而,其他的貸款還在那里,且償還起來也是有利可圖!我再次嘗試優化我的gas價格,發現如果我償還前4筆sUSD貸款,接下來最省gas的做法是一并償還后6筆最大的sUSD貸款,再分別償還最大的兩筆sETH貸款。此外,假設我贏了,我可以使用從之前的交易捆中獲利的ETH,而不再需要閃電貸了。

馬斯克不認同《紐約時報》稱FTX事件影響巴哈馬經濟:金色財經報道,據《紐約時報》披露,SBF目前在美國已經成為不受歡迎的人,但巴哈馬本地居民卻更同情他,SBF一直努力實現巴哈馬經濟多元化,發展旅游之外的經濟模式,當地人擔心 FTX 事件導致加密投資者流失影響本地經濟。不過,有人認為《紐約時報》發布這樣的消息是在幫SBF開脫,此觀點也得到Elon Musk認同。[2022/12/27 22:10:36]

Flashbots競拍和我的交易捆排序策略

重復一下情況:我既要在gas效率上競爭,又希望通過償還每筆貸款來最大化我的收益。最佳策略是在每個交易捆中提交幾筆償還,分幾個交易捆進行。這些交易捆會在Flashbots競拍中被各自評估。然而,每筆交易都取決于來自pDAO的交易,是它使得貸款可以被任何人償還。

如果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

Tags:GASETHLASHBOTUGAS-JUN21幣ethleneFLASH幣BOTH幣

DOT
Gate.io Startup上線Floki Inu (FLOKI) 及免費分發規則公告(免費瓜分2,000,000,000個FLOKI)_Gate.io

關于Gate.ioStartup免費空投計劃為回饋平臺用戶,Gate.io上線“免費空投計劃”,在Startup區不定期進行區塊鏈項目的免費空投計劃.

1900/1/1 0:00:00
MEXC關於“SOL專場”和”AGLD充值“活動獎勵發放的公告_BIT

尊敬的用戶: MEXC上線的“SOL專場”和”充值AGLD瓜分30,000USDT“活動已結束。活動獎勵已發放,請獲獎用戶請前往--中查看.

1900/1/1 0:00:00
Gate.io 已開啟CIRUS/USDT新版流動性礦池獎勵(自動做市商AMM模式),新增額外限時獎勵21,955 CIRUS_GATE

CIRUS/USDT新版流動性礦池模式)已正式上線,交易市場50%手續費收益將新增投入到流動獎金池中;Taker和Maker手續費即日起調整至0.3%.

1900/1/1 0:00:00
MixMarvel與Polygon達成戰略合作,聯合打造NFT領域最強內容平臺_GON

區塊鏈游戲發行平臺MixMarvel正式宣布加入由以太坊基礎設施開發商Polygon成立的PolygonStudios,成為其在區塊鏈游戲和NFT領域的Tier1戰略合作伙伴.

1900/1/1 0:00:00
我一個用戶身上就100U,18條公鏈花錢請我去玩,咋辦?_DEF

Celo1億美金 Terra1.5億 Avaxlanche1.8億美金 Algo3億美金 Harmony3億美金 Famton3.7億枚FTM,當下約合5億美金最近不到一個月當中.

1900/1/1 0:00:00
Gate.io 已經完成ealf(ELF) 主網升級并支持ERC20代幣兌換公告_Gate.io

根據aelf官方消息,aelf已經升級主網,并開始進行主網代幣兌換,ERC20代幣可按1:1的比例兌換為ELF主網代幣.

1900/1/1 0:00:00
ads