Arbitraj dalam rantaian: kitaran atom, pinjaman kilat, dan lelongan yang perlu anda menangi
Terdapat mitos yang selesa bahawa arbitraj on-chain adalah sukar kerana pencarian adalah sukar — bahawa di suatu tempat dalam graf harga terdapat kitaran tersembunyi yang hanya boleh dilihat oleh algoritma paling bijak, dan sesiapa yang mengira paling cepat akan dibayar. Kebenarannya hampir sebaliknya. Pada rantaian awam, kitaran yang menguntungkan dapat dilihat oleh semua orang pada masa yang sama, dikira oleh berpuluh-puluh bot yang menjalankan kod yang hampir sama terhadap rizab yang sama. Pengesanan adalah masalah yang telah diselesaikan dan dikomoditikan. Apa yang sukar — apa yang sebenarnya menentukan siapa yang mendapat wang — adalah memenangi pesanan: mendaratkan transaksi anda di slot yang betul dalam blok yang betul, mendahului setiap pencari lain yang menemui perkara yang sama. Arbitraj on-chain mudah untuk dikesan dan sukar untuk dimenangi, dan jurang antara dua kata kerja ini adalah tempat seluruh ekonomi perniagaan ini berada.
Artikel ini mengambil sisi pencari. Dalam anatomi MEV kami memetakan hutan gelap dari perspektif mangsa dan menjanjikan susulan mengenai pengekstrakan jinak — arbitraj dan backrunning yang memastikan harga on-chain jujur. Dalam pembubaran on-chain kami membina kontrak pelaksanaan pinjaman kilat dan bundle backrun oracle dan merujuk di sini untuk rawatan umum primitif tersebut. Artikel ini membayar kedua-dua hutang tersebut. Ia menganggap anda sudah tahu apa itu mempool, bundle, dan yuran keutamaan; jika tidak, baca artikel MEV terlebih dahulu. Di sini kami membina mesin arbitraj: transaksi atom yang tidak boleh kalah, modal yang dipinjam yang menghilangkan kekangan modal, pencarian graf yang merupakan separuh yang mudah, dan lelongan yang memakan hampir semua margin.
Atomicity: perdagangan yang kembali rugi
Ciri penentu arbitraj on-chain — perkara yang menjadikannya lebih selamat secara kategorinya daripada mana-mana perdagangan silang tempat yang boleh dilaksanakan oleh pedagang CEX — ialah atomicity. Arbitraj berbilang hop bukanlah urutan perdagangan yang anda lancarkan dan berharap akan mendarat bersama. Ia adalah satu transaksi yang melaksanakan setiap langkah kitaran, dan jika baki akhir tidak lebih besar daripada baki permulaan, seluruh transaksi kembali: setiap perubahan keadaan digulirkan semula seolah-olah ia tidak pernah berlaku, dan anda hanya kehilangan gas untuk transaksi yang gagal.
Ini mengubah profil risiko sepenuhnya. Seorang pedagang CEX yang membeli BTC di satu bursa untuk menjualnya di bursa lain memegang inventori di antara — selama beberapa saat, minit, berapa lama pemindahan dan pengisian kedua mengambil masa — dan menanggung apa sahaja yang dilakukan oleh harga semasa tetingkap itu. Arbitraj on-chain memegang inventori untuk sifar masa dalam apa-apa pengertian ekonomi yang bermakna: pembelian dan penjualan adalah operasi yang tidak boleh dibahagikan. Tiada risiko harga pertengahan kitaran kerana tiada pertengahan kitaran. Sama ada keseluruhan gelung ditutup dengan menguntungkan dalam satu langkah atom, atau ia tidak berlaku sama sekali.
Pengawal yang menguatkuasakan ini adalah perbandingan tunggal pada akhir laluan pelaksanaan. Secara konsep, kontrak arb atom tidak melakukan lebih daripada:
// The whole cycle runs inside one transaction. If the closing balance
// does not clear the opening balance (plus costs), the require() throws,
// and the EVM reverts every trade that came before it.
function executeCycle(bytes calldata path, uint256 minProfit) external {
uint256 start = IERC20(baseToken).balanceOf(address(this));
_hopA(path); // e.g. USDC -> WETH on Uniswap
_hopB(path); // e.g. WETH -> DAI on Sushiswap
_hopC(path); // e.g. DAI -> USDC on Curve
uint256 end = IERC20(baseToken).balanceOf(address(this));
require(end >= start + minProfit, "unprofitable"); // atomic safety net
}
require adalah keseluruhan model keselamatan. Petikan yang lapuk, transaksi bersaing yang menggerakkan kumpulan satu slot sebelum anda, yuran yang tidak dijangka — apa sahaja yang menjadikan kitaran tidak menguntungkan hanya mencetuskan pengawal dan kembali. Anda tidak pernah menjual langkah terakhir pada harga yang lebih buruk daripada yang anda modelkan dan menanggung kerugian; perdagangan yang akan rugi tidak dilaksanakan. Inilah sebabnya mengapa arbitraj adalah hujung jinak taksonomi MEV dari artikel MEV: tiada mangsa yang pengisiannya terdegradasi, dan arbitraj tidak menanggung risiko inventori arah. Satu-satunya kos sebenar percubaan yang gagal adalah gas — yang, seperti yang akan kita lihat, adalah tepat kos yang direka oleh lelongan kompetitif untuk meningkatkannya.
Pinjaman kilat menghilangkan kekangan modal
Atomicity membolehkan sesuatu yang lebih kuat: arbitraj dengan tiada modal sendiri. Pinjaman kilat membolehkan anda meminjam sejumlah wang sewenang-wenangnya daripada kumpulan pinjaman dengan tepat satu syarat — anda membayarnya balik, ditambah yuran, sebelum transaksi berakhir. Kerana pinjaman, arbitraj, dan pembayaran balik semuanya hidup dalam satu transaksi atom, kumpulan itu tidak menghadapi risiko lalai: jika anda tidak dapat membayar balik, seluruh transaksi akan dibatalkan dan pinjaman tidak dibuat. Pemberi pinjaman dilindungi oleh pembatalan yang sama yang melindungi anda.
Coraknya adalah panggilan balik. Anda memanggil fungsi pinjaman kilat kumpulan; kumpulan menghantar token kepada anda dan kemudian memanggil anda kembali; di dalam panggilan balik itu anda menjalankan kitaran dan mesti meninggalkan cukup untuk membayar balik:
// Called by the lending pool in the middle of the flash loan.
function receiveFlashLoan(address token, uint256 amount, uint256 fee, bytes calldata data)
external
{
// 1. buy the asset cheap on venue A with the borrowed `amount`
uint256 bought = _swap(VENUE_A, token, ASSET, amount, data);
// 2. sell it dear on venue B, back into the borrowed token
uint256 repaidIn = _swap(VENUE_B, ASSET, token, bought, data);
// 3. must be able to return principal + fee, or the whole tx reverts
require(repaidIn >= amount + fee, "arb cannot cover loan");
IERC20(token).transfer(msg.sender, amount + fee); // repay in-tx
// whatever remains — repaidIn - amount - fee — is profit, kept here
}
Yuran adalah kecil dan bergantung kepada tempat: Aave v3 mengenakan 5 bps (0.05%) untuk pinjaman kilat, Balancer secara sejarah mengenakan 0 bps, dan Uniswap v3 mendedahkan keupayaan yang sama melalui pertukaran kilat di mana yuran hanyalah yuran pertukaran biasa kumpulan. Lima mata asas adalah kos sebenar yang mesti jelas dalam margin kitaran, tetapi ia adalah remeh berbanding alternatif mengikat enam atau tujuh angka inventori anda sendiri untuk menangkap ketidakselarasan yang berlangsung satu blok.
Akibatnya untuk struktur pasaran perlu dinyatakan dengan jelas: pinjaman kilat memisahkan keuntungan arbitraj daripada modal. Pemenang peluang tertentu bukanlah pencari dengan kunci kira-kira terdalam — bot dengan beberapa dolar wang gas boleh meminjam sepuluh juta dolar untuk tempoh satu transaksi. Modal bukanlah parit. Semua orang boleh meminjam saiz yang sama terhadap peluang yang sama, itulah sebabnya persaingan runtuh kepada satu perkara yang tidak dikomoditikan: mendapatkan pesanan pertama.
Kitaran silang DEX yang berfungsi
Nombor menjadikan mekanik konkrit. Ambil dua kumpulan WETH/USDC produk malar dengan yuran 0.30% (), dan anggap pembelian besar baru sahaja menolak kumpulan B di atas kumpulan A — jenis ketidakselarasan yang ditunjukkan oleh bahagian seterusnya adalah dari mana kitaran sebenarnya berasal. Gunakan rizab bulat yang jelas dan ilustratif:
- Kumpulan A (murah): WETH, USDC harga USDC/WETH.
- Kumpulan B (mahal): WETH, USDC harga USDC/WETH.
Kitarannya adalah: pinjam kilat USDC, beli WETH murah di A, jual mahal di B, bayar balik. Pinjam USDC. Hop 1 menjual USDC ke kumpulan A untuk WETH:
Hop 2 menjual WETH itu ke kumpulan B untuk USDC:
Anda meminjam 100,000, menerima 100,723, dan berhutang yuran kilat 5 bps sebanyak 50 USDC. Bersih: kira-kira $673 keuntungan kasar dengan perbelanjaan modal sifar, sebelum gas dan sebelum bida keutamaan. Dua perkara yang perlu diperhatikan. Pertama, kedua-dua hop menggerakkan kumpulan ke arah satu sama lain — membeli di A menaikkan harganya, menjual di B menurunkan harganya — jadi keuntungan tidak linear dalam saiz: menolak terlalu banyak dan impak harga memakan jurang, sama seperti dalam pengoptimuman sandwic dari artikel MEV. Pencari menjalankan pencarian satu dimensi ke atas untuk mencari saiz pinjaman yang memaksimumkan keuntungan bersih. Kedua, $673 itu adalah nombor deterministik yang dikira oleh setiap bot bersaing kepada nilai yang sama dari rizab yang sama — yang merupakan keseluruhan masalah, dan subjek bahagian lelongan di bawah.

Pengesanan adalah separuh yang mudah
Memandangkan pasaran sebagai graf — aset sebagai nod, pasangan dagangan sebagai tepi berwajaran — kitaran arbitraj adalah gelung yang hasil darab kadar pertukarannya melebihi satu. Ambil logaritma setiap kadar, negasikan, dan kitaran yang menguntungkan menjadi kitaran berat negatif; alat klasik untuk mencari satu adalah Bellman-Ford, dengan SPFA dan algoritma RICH yang lebih baru sebagai varian yang lebih cepat yang disesuaikan untuk graf kecil yang berubah dengan cepat yang dihasilkan oleh pasaran sebenar. Seluruh alat ini — transformasi log, keadaan kitaran negatif, pelaksanaan Rust, berat tepi yang disesuaikan dengan yuran yang membunuh kebanyakan kitaran teori — adalah subjek algoritma graf untuk pengesanan arbitraj, dan tidak perlu mengulanginya di sini.
Apa yang penting untuk artikel ini adalah satu titik perakaunan tunggal: yuran mesti masuk ke dalam berat tepi, atau kitaran itu adalah fatamorgana. Gelung tiga kaki membayar tiga yuran kumpulan ditambah, jika anda meminjam, yuran pinjaman kilat, dan ujian kitaran negatif perlu melihat kesemuanya:
from math import log
def cycle_log_gain(rates, pool_fee=0.003, loan_fee=0.0005):
"""Log-gain around a cycle. > 0 means gross profit before gas and priority bid.
`rates[i]` = units of the next asset per unit of the current one on hop i."""
gross = 1.0
for r in rates:
gross *= r * (1 - pool_fee) # each hop pays the venue's swap fee
gross *= (1 - loan_fee) # one flash-loan fee for the whole cycle
return log(gross) # still ignores gas and the auction bid
Berikut adalah pemerhatian yang menanggung beban. Fungsi itu adalah deterministik. Berikan ia rizab on-chain semasa — yang setiap nod pegang secara identik, kerana rantaian adalah mesin keadaan yang dikongsi dan direplikasi — dan setiap pencari mengira cycle_log_gain yang sama kepada nilai yang sama pada ketinggian blok yang sama. Tiada isyarat peribadi, tiada set data proprietari, tiada kelebihan maklumat. Apabila pertukaran besar atau blok baru menyusun semula rizab, berpuluh-puluh bot yang menjalankan kod pengesanan yang sama secara struktur semuanya menyala pada kitaran yang sama dalam milisaat antara satu sama lain. Pencarian mengembalikan jawapan yang sama kepada semua orang.
Nota mengenai topologi, kerana ia membentuk betapa sukarnya pencarian sebenarnya. Kitaran termurah adalah segitiga dan intra-DEX — WETH → USDC → DAI → WETH sepenuhnya dalam satu pelaksanaan Uniswap: tiga hop, tiga yuran kumpulan, tiada koordinasi silang tempat. Kitaran silang-DEX (beli di Uniswap, jual di Sushiswap) menambah tempat tetapi meninggalkan pengawal atomik yang sama. Kitaran yang lebih panjang dan eksotik merantai lebih banyak hop — tetapi setiap hop tambahan mengalikan faktor yang lain ke dalam produk, jadi keadaan kitaran negatif yang disesuaikan dengan yuran membunuh kitaran panjang dengan cepat. Inilah sebabnya mengapa pencari sebenar mengehadkan panjang kitaran kepada tiga hingga lima hop dan memangkas secara agresif; ia adalah pencarian berlapis, terhad panjang yang dibina oleh algoritma RICH dari artikel algoritma graf untuk dijalankan.
Jadi pengesanan tidak memenangi anda perdagangan; ia hanya melayakkan anda untuk bersaing untuknya. Ujian log(gross) > 0 memberitahu anda peluang wujud — ia tidak mengatakan apa-apa tentang sama ada anda akan menjadi alamat yang menangkapnya. Itu diputuskan satu lapisan ke bawah, dalam pesanan, dan pesanan bukanlah sesuatu yang dikira oleh algoritma anda. Ia adalah sesuatu yang anda bida. Segala yang sukar tentang arbitraj on-chain berlaku selepas kitaran ditemui.

Backrunning: bentuk MEV yang jinak
Dari mana datangnya kitaran ini pada mulanya? Kebanyakannya, daripada transaksi orang lain. Pertukaran besar pada kumpulan Uniswap menggerakkan harga kumpulan itu jauh dari pasaran yang lebih luas; kumpulan itu kini salah harga berbanding Binance, berbanding kumpulan Curve, berbanding Sushiswap; dan tindakan menyelaraskannya semula adalah arbitraj yang menguntungkan. Pencari yang melakukan ini meletakkan transaksinya serta-merta selepas pertukaran yang mencipta ketidakselarasan. Ini adalah backrunning, dan ia adalah bentuk MEV on-chain yang dominan dan jinak.
Ingat mekanik produk malar dari artikel MEV. Kumpulan memegang rizab dengan dan harga spot . Seseorang menjual sejumlah besar aset asas ke dalamnya; oleh invarian kumpulan membayar
dan harga spot baru lebih rendah — penjual menolaknya ke bawah. Jika harga pasaran luaran masih , kumpulan kini memetik di bawah , dan backrun yang memaksimumkan keuntungan membeli dari kumpulan tepat sehingga harga marginalnya naik kembali ke — iaitu, sehingga rizab memenuhi lagi. Arbitraj menangkap kawasan antara lengkung pelaksanaan kumpulan dan harga luaran yang rata — nilai yang ditinggalkan oleh pertukaran besar di atas meja dengan menggerakkan kumpulan.
Fakta struktur kritikal — yang meletakkan backrunning di sisi jinak lejar — ialah backrun tulen tidak merosot pelaksanaan sasaran. Ia berjalan secara ketat selepas pertukaran mangsa. Pada masa backrun dilaksanakan, harga penukar sudah terkunci; tiada apa yang dilakukan oleh backrunner boleh kembali dan memburukkannya. Bandingkan ini dengan sandwic toksik dari artikel MEV, di mana frontrun dimasukkan sebelum mangsa tepat untuk memburukkan pengisian mereka supaya backrun dapat menuai ketidakselarasan yang diperbesar. Mekanik backrun yang sama, moral yang bertentangan: sandwic menghasilkan salah harga atas perbelanjaan mangsa; backrun jinak hanya membersihkan salah harga yang akan dicipta oleh mangsa. Arbitraj adalah mekanisme di mana harga on-chain menjejaki dunia luar — peranan yang sama yang menjadikan arbitraj silang tempat sebagai daya penstabil di mana-mana dalam kewangan.
Inilah juga sebab mengapa tindanan perlindungan MEV moden cuba memelihara dan mengagihkan semula backrun sambil menekan sandwic. MEV-Share dan lelongan aliran pesanan Flashbots membolehkan pengguna mendedahkan petunjuk separa tentang transaksi mereka, menjemput pencari untuk membida hak untuk backrunnya, dan mengembalikan sebahagian besar keuntungan yang terhasil kepada pengguna yang mencipta peluang itu. Backrun masih berlaku — harga masih diselaraskan semula — tetapi nilai mengalir kembali ke transaksi yang menghasilkannya dan bukannya dicuri oleh sesiapa yang paling cepat.
Dari mana datangnya kitaran
Hampir setiap kitaran yang menguntungkan adalah hasil daripada beberapa peristiwa on-chain lain yang menggerakkan harga. Mengetahui sumber adalah perbezaan antara meninjau seluruh graf secara membuta tuli dan memerhatikan beberapa pencetus yang sebenarnya mencipta tepi:
- Pertukaran besar. Sumber kanonik, yang dibincangkan di atas: sebarang perdagangan yang cukup besar untuk menggerakkan kumpulan dari pasaran yang lebih luas membuka backrun untuk menyelaraskannya semula. Semakin besar pertukaran dan semakin nipis kumpulan, semakin besar kitaran.
- Kemas kini oracle. Setiap tempat yang menetapkan harga berdasarkan oracle — pasaran wang, DEX perp — menjadi boleh diarbitraj sebaik sahaja suapan bergerak. Backrun kemas kini oracle yang mendorong pembubaran, yang dianalisis dalam artikel pembubaran, adalah pergerakan yang sama yang diterapkan pada suapan harga dan bukannya pertukaran: kemas kini adalah permulaan, dan pencari mendarat serta-merta di belakangnya.
- Kecairan baru atau dikeluarkan. Pencetakan atau pembakaran LP yang besar mengalihkan kedalaman kumpulan dan boleh meninggalkannya sebentar di luar harga; kecairan tepat pada masanya (JIT) adalah versi adversarial, menambah kedalaman di sekitar satu pertukaran yang belum selesai dan menariknya serta-merta selepas itu.
- Sisa penghalaan silang kumpulan. Penghala yang membahagikan pertukaran merentasi kumpulan jarang meninggalkan kesemuanya pada harga yang sama, dan ketidakseimbangan kecil yang ditinggalkannya adalah kitaran yang boleh di-backrun.
Pengajaran praktikal: bot arbitraj kebanyakannya adalah pendengar peristiwa, bukan penyelesai graf. Ia memerhatikan pencetus ini, mengira semula hanya sub-graf yang disentuh oleh setiap satu, dan melancarkan bundle — itulah sebabnya reka bentuk kemas kini inkremental dari artikel algoritma graf lebih penting daripada kelajuan pencarian mentah ke atas graf penuh.

Lelongan memakan margin
Sekarang bahagian yang tidak selesa. Anda menemui kitaran itu. Begitu juga orang lain. Peluang itu deterministik, atomik, dan bebas modal — yang bermaksud satu-satunya pemboleh ubah yang tinggal ialah siapa yang mendarat di slot kemenangan, dan itu diselesaikan oleh lelongan keutamaan.
Sejak migrasi ke pemisahan pembina-pencadang dan MEV-Boost (paip yang diperincikan dalam rantai bekalan MEV: PBS dan MEV-Boost yang akan datang), pencari tidak lagi bertarung dalam perang gas awam di mempool. Mereka menyerahkan bundle secara peribadi kepada pembina blok, melampirkan bida — sama ada sebagai yuran keutamaan yang tinggi atau sebagai pembayaran langsung kepada pembina. Pembina mengumpulkan blok yang paling berharga yang boleh dan menghantarnya kepada pencadang. Dari tempat duduk pencari, ini adalah lelongan bida tertutup untuk hak menjadi alamat yang melaksanakan hadiah yang diketahui dan deterministik.
Modelkannya. Biarkan keuntungan arbitraj kasar menjadi — $673 dari kitaran yang berfungsi di atas, katakan — dan biarkan kos setiap pencari (gas, yuran pinjaman kilat) menjadi . Untuk memenangi slot, anda membida terhadap setiap pencari lain yang mengira yang sama. Bersih anda jika anda menang adalah
Anda mahu serendah mungkin; anda juga mahu menang. Tetapi pesaing anda menghadapi aritmetik yang sama terhadap yang sama. Dalam lelongan bida tertutup ke atas hadiah nilai bersama yang semua orang boleh mengira dengan tepat, bida keseimbangan meningkat sehingga ia memakan hampir keseluruhan lebihan: , dan pemenang hanya menyimpan , margin yang sangat tipis di mana mereka mengatasi pembida kedua. $673 itu tidak kekal dengan sesiapa yang menemui kitaran itu; hampir kesemuanya dibida terus kepada pembina dan, akhirnya, pencadang yang menjual pesanan itu. Ini bukan kegagalan pasaran; inilah yang sepatutnya dilakukan oleh lelongan kompetitif.
Pembatalan tidak percuma — ekonomi kadar kegagalan
Terdapat kos kedua yang diabaikan oleh model naif, dan inilah yang sebenarnya memisahkan pengendali. Apabila anda kalah lelongan, bundle anda tidak mendarat — anda tidak membayar apa-apa, yang merupakan tujuan utama penyerahan bundle berbanding perang gas awam lama. Tetapi apabila anda memenangi lelongan dengan bundle yang simulasinya lapuk — rizab bergerak antara bacaan anda dan kemasukan — pengawal require(end >= start + minProfit) anda menyala dan transaksi kembali on-chain, dan anda membayar gas untuk pembatalan. Atomicity melindungi prinsipal anda, bukan gas anda.
Jadi nilai jangkaan sebenar pencari bagi setiap peluang adalah
di mana adalah gas yang terbakar pada bundle yang mendarat tetapi kembali. Meningkatkan bida anda lebih tinggi memenangi lebih banyak slot tetapi juga memenangi lebih banyak slot lapuk, meningkatkan istilah pembatalan. Pengendali yang bertahan bukanlah mereka yang menemui lebih banyak kitaran — semua orang menemui kitaran yang sama — tetapi mereka yang mempunyai yang lebih rendah (laluan pelaksanaan yang lebih murah, lebih ketat), kebarangkalian pembatalan yang lebih rendah (simulasi yang lebih segar, ramalan kemasukan yang lebih baik), dan disiplin untuk tidak membida pada peluang marginal di mana kos pembatalan yang dijangkakan mengatasi lebihan yang tipis. Kelebihan, jika ada, terletak sepenuhnya pada kos peringkat kedua ini.
Bentuk empirikal sepadan dengan model. Apabila banyak bot mensimulasikan peluang on-chain yang sama kepada angka keuntungan yang sama, bundle yang menang secara rutin menyerahkan sebahagian besar keuntungan kasar kepada pembina dan validator — kebocoran 90%-plus yang sama yang kami ukur untuk pembubaran, atas sebab yang sama: maklumat sempurna tentang hadiah bersama ditambah lelongan bida tertutup menyamai margin yang bersaing sehingga kos kerugian marginal. Kelebihan pencari bukanlah saiz , yang semua orang lihat. Ia adalah sebarang kelebihan peribadi dalam (pelaksanaan yang lebih murah, penghalaan yang lebih baik, kadar kegagalan yang lebih rendah) atau dalam melihat sebelum orang ramai melakukannya.
Yang memberitahu anda dengan tepat di mana keuntungan masih wujud:
- Rantaian ekor panjang dan pasaran pembina yang tidak matang. Pada rantaian di mana beberapa pencari canggih beroperasi dan lelongan pembina adalah tipis atau tiada, bida kekal rendah kerana tiada siapa yang membida anda. Kitaran yang sama yang menghasilkan pada mainnet Ethereum boleh menghasilkan sebahagian besar pada L2 yang senyap atau alt-L1. Kelebihan adalah persaingan, bukan kepintaran.
- Kumpulan persaingan rendah dan aset eksotik. Peluang yang keluarannya menguntungkan memerlukan memakan kecairan DEX yang tipis dan bergantung pada laluan adalah sukar untuk disimulasikan dengan betul. Pencari yang memodelkan perjalanan pergi balik penuh — termasuk slippage keluar pada token yang tidak cair — menangkap kitaran yang sama ada terlepas atau salah harga oleh bot naif menjadi pembatalan. Di sini kelebihan adalah kualiti pelaksanaan yang tulen, bukan latensi.
- Arbitraj CEX-DEX. Kategori terbesar — dan yang memecahkan atomicity. Ia mendapat bahagiannya sendiri, seterusnya.
Ringkasan jujur permainan atomik, on-chain: ia adalah cara yang hebat untuk mempelajari internal EVM, paip pembina, dan teori lelongan dengan cara yang sukar. Ia adalah cara yang kejam untuk mencari nafkah, kerana perkara yang anda jual — keupayaan untuk mencari dan melaksanakan kitaran deterministik — adalah tepat perkara yang juga dijual oleh pesaing anda, dan lelongan menetapkannya pada kos.

Arbitraj CEX-DEX: kategori terbesar, dan ia bukan atomik
Sumber nilai boleh diekstrak terbesar di rantaian bukanlah kitaran atomik yang kemas. Ia adalah arbitraj CEX-DEX: harga aset di bursa terpusat menyimpang daripada harganya di DEX, dan pencari berdagang kedua-dua belah untuk menutup jurang. Kajian arbitraj bukan atomik — paling langsung Heimbach, Pahari dan Schertenleib's Non-Atomic Arbitrage in Decentralized Finance (2024) — mengaitkan nilai yang diekstrak oleh arbitraj silang bursa dalam lingkungan ratusan juta dolar sepanjang tempoh beberapa tahun, melebihi kategori atomik, semata-mata di rantaian. Jika anda ingin memahami di mana wang dalam MEV sebenarnya berada, inilah dia.
Dan ia melanggar sifat yang menjadikan segala di atas selamat. Satu bahagian perdagangan berada di bursa terpusat; yang lain berada di rantaian. Bahagian di rantaian adalah atomik — ia sama ada mendarat dalam blok atau kembali — tetapi bahagian CEX adalah pesanan berasingan pada enjin padanan berasingan, menyelesaikan mengikut garis masanya sendiri. Kedua-dua bahagian tidak boleh dibungkus dalam satu pembatalan. Tiada require(end >= start) yang merangkumi kedua-dua tempat. Pencari melakukan backrun pertukaran di Uniswap untuk membeli WETH murah di rantaian, dan secara berasingan menjual WETH di Binance untuk merealisasikan spread — dan antara kedua-dua peristiwa itu, harga boleh bergerak. Arbitraj CEX-DEX membawa risiko inventori yang sama yang dihapuskan oleh arbitraj atomik.
Risiko itu mengubah keseluruhan bentuk perniagaan:
- Anda mesti meletakkan inventori terlebih dahulu di kedua-dua tempat. Anda tidak boleh meminjam kilat bahagian CEX. Untuk menjual WETH di Binance sebaik sahaja pembelian on-chain anda disahkan, anda mesti sudah memegang WETH di Binance (dan mata wang sebut harga on-chain, dan sebaliknya untuk arah lain). Modal, yang dihalau oleh pinjaman kilat dari arbitraj atomik, kembali sebagai keperluan keras — inventori yang berada di beberapa bursa, terdedah.
- Anda mesti melindungi bahagian terbuka. Antara pengisian on-chain dan pengisian CEX anda secara arah panjang atau pendek aset. Pengendali CEX-DEX yang serius menjalankan ini sebagai buku yang diuruskan delta secara berterusan: mereka melindungi pendedahan pada niaga hadapan kekal, menganggap kos pembiayaan lindung nilai itu sebagai kos menjalankan perniagaan, dan menguruskan asas antara spot dan perp. Ini bukan masalah baru — ia adalah tepat jentera arbitraj kadar pembiayaan silang bursa, di mana keseluruhan permainan adalah memegang bahagian yang saling mengimbangi merentasi tempat dan membiayai lindung nilai melalui pembiayaan. Arbitraj CEX-DEX adalah disiplin itu dengan satu bahagian terpaku pada blok.
- Kelebihan adalah sebahagiannya maklumat dan struktur. Kerana harga CEX mendahului harga DEX (buku pesanan terpusat dikemas kini secara berterusan; sebut harga AMM hanya bergerak apabila seseorang berdagang), pencari yang membaca buku pesanan CEX tahu arah mana backrun seterusnya harus pergi sebelum harga on-chain mengejar. Dan semakin, pembina sendiri menginternalisasikan aliran ini: pembina yang juga menjalankan meja CEX-DEX boleh menyusun blok di sekitar perdagangannya sendiri. Ini mengaburkan garis antara pencari dan pembina dan merupakan salah satu daya pemusatan dalam rantai bekalan MEV — entiti yang melihat aliran pesanan paling banyak dan mengawal pesanan paling banyak juga menangkap arbitraj bukan atomik paling banyak.
Jadi pertukaran itu adalah terbalik daripada kes atomik. Arbitraj atomik adalah selamat (kembali rugi, tiada inventori, tiada modal) tetapi bersaing dengan kejam (hadiah deterministik, lelongan memakan margin). Arbitraj CEX-DEX adalah berbahaya (risiko inventori sebenar, modal sebenar, lindung nilai untuk membiayai dan mengurus) tetapi jauh lebih besar dan kurang sempurna dipertandingkan, tepat kerana bahaya dan keperluan modal menghalang bot yang hanya boleh menjalankan gelung atomik bebas risiko. Pulangan tambahan adalah pampasan untuk risiko tambahan — yang merupakan fakta paling biasa dalam kewangan, akhirnya menegaskan semula dirinya pada rantaian yang menghabiskan seluruh bahagian berpura-pura wang bebas risiko berada di atas meja.
Apa yang perlu diambil
Mampatkan hujah kepada titik-titik pentingnya:
- Atomicity adalah keseluruhan model keselamatan. Arbitraj berbilang hop adalah satu transaksi dengan pengawal
require(end >= start + minProfit); apa sahaja yang menjadikannya tidak menguntungkan akan kembali, jadi arbitraj tidak pernah memegang risiko inventori pertengahan kitaran dan tidak pernah menjual langkah terakhir dengan kerugian. - Pinjaman kilat memisahkan keuntungan daripada modal. Pinjam, arb, dan bayar balik dalam satu transaksi atom; pemberi pinjaman dilindungi oleh pembatalan yang sama seperti anda. Pemenang bukanlah pencari dengan modal terbanyak — modal bukanlah parit.
- Pengesanan adalah separuh yang mudah dan dikomoditikan. Pencarian kitaran negatif algoritma graf untuk arbitraj adalah deterministik dan sama untuk semua orang; mencari kitaran hanya melayakkan anda untuk bersaing untuknya.
- Backrunning adalah bentuk yang jinak dan dominan. Mendarat serta-merta selepas pertukaran besar atau kemas kini oracle menyelaraskan semula kumpulan yang salah harga tanpa merosot pengisian sesiapa — bertentangan dengan sandwic toksik, dan perkara yang MEV-Share cuba agihkan semula dan bukannya menekan.
- Lelongan memakan hampir semua margin. Dalam lelongan pembina bida tertutup ke atas hadiah yang biasa dan boleh dikira, bida menumpu kepada dan 90%-plus bocor kepada pembina dan pencadang. Keuntungan hanya bertahan di mana persaingan tipis: rantaian ekor panjang, kumpulan tidak cair, dan keluar yang lebih sukar disimulasikan.
- CEX-DEX adalah kategori terbesar dan ia bukan atomik. Satu bahagian di CEX bermakna risiko inventori sebenar, modal sebenar, dan lindung nilai untuk membiayai — buku permainan pembiayaan silang bursa yang diterapkan dengan satu bahagian terpaku pada blok, dan salah satu daya yang menarik rantai bekalan MEV ke arah pembina yang melihat aliran paling banyak.
Arbitraj on-chain kelihatan, dari luar, seperti teka-teki tentang mencari kitaran tersembunyi. Dari dalam ia adalah lelongan — dan teka-teki itu diselesaikan untuk semua orang pada masa yang sama. Mengetahui di mana kitaran itu tidak pernah menjadi kelebihan. Memenangi slot, atau berdagang di mana tiada orang lain membida, sentiasa begitu.
Rujukan
- Daian, Goldfeder, Kell, Li, Zhao, Bentov, Breidenbach, Juels (2019), Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges. arXiv:1904.05234.
- Heimbach, Pahari, Schertenleib (2024), Non-Atomic Arbitrage in Decentralized Finance. arXiv:2401.01622 (IEEE S&P 2024).
- Robinson & Konstantopoulos (2020), Ethereum is a Dark Forest.
- Pinjaman kilat Aave v3 dan dokumentasi pertukaran kilat Balancer / Uniswap v3 (jadual yuran).
- Dokumentasi Flashbots: MEV-Boost, MEV-Share, lelongan aliran pesanan (docs.flashbots.net).
Pengarang
Trading-systems engineer
Trading-systems engineer building bots since 2017: cross-exchange arbitrage (connected up to 30 venues), cointegration-based pairs arbitrage across spot and futures, scalping, news and sentiment-driven strategies, trend algorithms, and portfolio management and balancing algorithms. Also builds sub-millisecond order execution, big-data warehouses, backtesting engines, AI agents, and trading interfaces (incl. open-source profitmaker.cc). Stack: JS/TS, Python, Rust/Zig/Go, DevOps, backend, frontend, architecture.