← Мақалаларға оралу
July 17, 2026
5 мин оқу

MEV анатомиясы: сэндвичтер, frontrunning және мемпулдың қараңғы орманы

MEV анатомиясы: сэндвичтер, frontrunning және мемпулдың қараңғы орманы
#mev
#sandwich attack
#frontrunning
#mempool
#flashbots
#defi
#ethereum

Орталықсыздандырылған биржада swap-қа қол қойып, оны ашық RPC endpoint-іне жібергенде, сіз matching engine-ге жеке нұсқау жіберген жоқсыз. Сіз қолтаңба қойылған, орындалуға дайын ниет мәлімдемесін жаһандық хабарландыру тақтасына жариялап, оны орындауға келіскен кез келген адамға сыйақы — gas бағасын — тіркедіңіз. Мұны кез келген адам оқи алады. Оны әділ түрде, кезек бойынша немесе жалпы орындауға ешкім міндетті емес. Оның басқа транзакцияларға қатысты қандай ретпен түсетіні сіздің жіберген нәрсеңіздің қасиеті емес — бұл сізге қарсы әрекет етуден пайда табатын үшінші тараптың шешімі.

Бұл — ончейн саудасының жайсыз өзегі. Statistical Arbitrage and Pairs Trading in Crypto Markets мақаласында біз CEX пен DEX арасында позицияны жылжыту "MEV тәуекелін" алып жүреді деп өтіп бара жатып айтқанбыз және бұл терминді түсіндірместен қалдырғанбыз. Осы мақала сол қарызды жабады. Бұл — ончейн орындалудың экономикасы туралы серияның кіре берісі, және оның міндеті — сөздік қорды дәл анықтау: mempool, bundle, backrun, sandwich, PBS — кейінгі flash loan арқылы атомарлық арбитраж және квонттарға арналған Uniswap v3 шоғырланған ликвидтілік мақалалары сізде бұл механизм туралы түсінік бар деп есептей алатындай дәрежеде.

MEV — Maximal (немесе Maximum) Extractable Value, яғни максималды алынатын құндылық — бір тарап блок ішіндегі транзакциялардың қосылуын, алынып тасталуын және реттілігін таңдау арқылы, стандартты блок сыйақысы мен приоритет төлемдерінен тыс ала алатын пайда. Бұл — қате емес; бұл permissionless блокчейндердің транзакцияларды қалай реттейтінінің құрылымдық салдары. Бұл механизм 2019 жылы алғаш рет формалды сипатталғаннан бері жиналған алынған құндылық миллиардтаған долларға жетті, және оны алу мен қайта бөлу үшін тұтас индустрия — searcher-лер, builder-лер, relay-лар, блок ұсынушылар (proposer) — қалыптасты. Егер сіз ончейн сауда жасасаңыз, сіз я осы салықты төлеп жатырсыз, я оны төлемеу үшін нақты қадамдар жасағансыз.

1. Транзакцияның өмірлік циклі: сіздің ниетіңіз неге ашық

Құндылықтың қайда сыртқа шығатынын көру үшін транзакцияны әмияныңыздан финалданған блокқа дейін қадағалап көрейік.

Ашық mempool

Әмияныңыз транзакцияға қол қойып, оны стандартты node-тың RPC endpoint-іне жібергенде, node оны тексереді (қолтаңба, nonce, жеткілікті баланс) және, егер тексеруден өтсе, оны peer-to-peer желі арқылы басқа node-тарға таратады (gossip). Әрбір node осы әлі қосылмаған транзакцияларды mempool (жад бассейні) деп аталатын жергілікті буферде сақтайды. Бір-екі секунд ішінде желідегі іс жүзінде барлық node — оның ішінде толықтай күтіп тұрған транзакциялардан құндылық алумен айналысатын тараптарға тиесілі node-тар да — сіздің қол қойылған, толық декодталған транзакцияңыздың көшірмесін алады.

"Толық декодталған" деген тіркес осы жерде негізгі маңызға ие. Сіздің транзакцияңыз мөлдір емес блок емес. Бұл — белгілі бір контрактқа жасалған ABI-кодталған шақыру. Mempool-ды бақылап отырған кез келген адам оны декодтап, тура мәтінде оқи алады: бұл адрес Uniswap v2 WETH/USDC пулында 40 ETH-ті USDC-ге swap жасамақшы, және ол кемінде 96 000 USDC-ге келіседі. Осы соңғы тармақ — қолайлы минималды шығыс — сіздің slippage төзімділігіңіз, және бұл жай ғана нұсқау емес. Бұл calldata-ға компиляцияланған қатаң параметр. Жақын арада бұл шабуылдаушының бюджет жолы да екенін көреміз.

Mempool кейде қараңғы орман (dark forest) деп аталады — бұл 2020 жылы Дэн Робинсон мен Георгиос Константопулос жазған эсседен шыққан атау, олар Лю Цысиньнің метафорасын алды: кез келген көрінетін нысан оны көре алмайтын жыртқыштардың бірден аңы болатын кеңістік. Ашық mempool-ға тәжірибесіз, пайдалы транзакцияны жіберсеңіз, ол сіз қол қойған түрінде блокқа мүлдем жетпеуі мүмкін — бот мүмкіндікті қолданып үлгіреді және айналадағы блокты сізге қарсы қайта құрастырады.

Gas бағасы — приоритет кезегі ретінде

Ethereum-ның ақы нарығы (EIP-1559-нан кейін) gas бағасын протоколдың base fee-іне (ол жағылады) және priority fee-іне ("шайпұл", ол блок ұсынушысына (proposer) барады) бөледі. Блок құрастырылғанда, builder өзіне ең көп ақы төлейтін транзакцияларды қосуға экономикалық ынталы болады. Бірінші жуықтауда, mempool — шайпұл бойынша кілттелген приоритет кезегі: неғұрлым шайпұл жоғары болса, соғұрлым ерте қосылады.

Дәл осы механизм реттілікті сатып алуға болатын нәрсеге айналдырады. Егер мен сіздің күтіп тұрған swap-ыңызды көрсем және өз транзакциямды сіздікінен дереу бұрын орындағым келсе, маған ештеңені бұзу қажет емес. Мен жай ғана жоғарырақ шайпұл төлейтін транзакция жіберемін. Builder өз ынтасына сай, менікін бірінші орналастырады. Реттілік — протокол берген әділдік кепілі емес; бұл протокол өткізетін аукцион, ал сатылатын лот — сіздің күтіп тұрған транзакцияңыздағы ақпарат бойынша әрекет ету құқығы.

Екі факт бірігіп бүкіл MEV мәселесін құрайды:

  1. Күтіп тұрған транзакциялар көрінеді (ашық mempool).
  2. Олардың реттілігі сатылымда (шайпұл-приоритеті бойынша аукцион).

Төмендегінің бәрі осыдан туындайтын салдар.

Әмияннан блокқа дейінгі транзакция өмірлік циклі: қол қойылған tx ашық mempool-ға таратылады, searcher-лерге көрінеді, builder приоритет төлемі бойынша блокқа реттейді

2. Сэндвич механикасы, нақты математикамен

Сэндвич — swap жасаушыға қарсы канондық улы MEV стратегиясы, және арифметиканы толық шығарып көрудің мәні бар, себебі сандар сіздің slippage параметріңіз неге сіз бақылайтын ең маңызды қорғаныс параметрі екенін түсіндіреді.

Тұрақты көбейтінді инвариант

Uniswap v2 пулы X токенінің xx резервін және Y токенінің yy резервін ұстайды, әрі әрбір сауда операциясынан кейін мына инвариантты сақтайды (әзірше комиссияларды есепке алмай):

xy=kx \cdot y = k

Егер трейдер пулға X токенінің Δx\Delta x мөлшерін сатса, жаңа X резерві x+Δxx + \Delta x болады, ал kk-ны сақтау үшін пул мынаны төлеуі керек:

Δy=ykx+Δx=yΔxx+Δx.\Delta y = y - \frac{k}{x + \Delta x} = \frac{y \, \Delta x}{x + \Delta x}.

Uniswap v2-нің 0.3% комиссиясымен кіріс γ=0.997\gamma = 0.997 коэффициентіне масштабталады:

Δy=yγΔxx+γΔx.\Delta y = \frac{y \, \gamma \, \Delta x}{x + \gamma \, \Delta x}.

Негізгі қасиет: бір бағытта неғұрлым көп сатып алсаңыз, соғұрлым сіздің шекті бағаңыз нашарлайды. Баға әсері дөңес (convex). Шабуылдаушы дәл осы дөңестікті ақшаға айналдырады.

Бастапқы жағдай

WETH/USDC пулын алайық. Сандарды таза ұстау үшін ETH-тің бағасы шамамен 2500 USDC болатын резервтерді алайық:

  • x=10,000x = 10{,}000 WETH
  • y=25,000,000y = 25{,}000{,}000 USDC
  • k=2.5×1011k = 2.5 \times 10^{11}

Сіз 40 WETH-пен USDC сатып алғыңыз келеді (WETH-ті пулға сату). Иллюстрация үшін комиссияларды есепке алмасақ, бос блоктағы адал орындалу мынаны берер еді:

Δy=25,000,0004010,000+40=1,000,000,00010,04099,601 USDC.\Delta y = \frac{25{,}000{,}000 \cdot 40}{10{,}000 + 40} = \frac{1{,}000{,}000{,}000}{10{,}040} \approx 99{,}601 \text{ USDC}.

Сіздің сауда операцияңызға дейінгі спот бағасы 25,000,000/10,000=2,50025{,}000{,}000 / 10{,}000 = 2{,}500 USDC/WETH, яғни 40 WETH сауда алдындағы орта бағамен 100 000 USDC "тұрады". Сіз 99 601 аласыз — шамамен 399 USDC-лық алшақтық сіздің өз баға әсеріңіз бен комиссиялардан құралады. Енді сіз 1% slippage төзімділігін орнатты дейік. Сіздің транзакцияңыздың amountOutMin мәні:

99,601×0.9998,605 USDC.99{,}601 \times 0.99 \approx 98{,}605 \text{ USDC}.

Бұл сан енді mempool-да ашық. Ол кез келген бақылаушыға мынаны айтады: бұл адам өзінің 40 WETH-і үшін кемінде 98 605 USDC-ге келіседі. Таза блокта алатыныңыз (99 601) мен сіздің еденіңіз (98 605) арасындағы айырма — шамамен 996 USDC — сіз өз еркіңізбен сізді бақылап отырған кез келген адамға берген орын. Бұл — шабуылдаушының бюджеті.

Шабуыл, қадам бойынша

Searcher үш транзакция құрастырады және оларды бір блок ішінде мынадай ретпен мәжбүрлеп орналастырады:

1. Frontrun (шабуылдаушы бірінші сатып алады). Шабуылдаушы өзінің WETH-ін сізден бұрын пулға сатады, осылайша USDC бағасын жоғарылатады (WETH бағасын төмендетеді), сол арқылы сіздің сауда операцияңыз орындалғанда сіз WETH-тің әр бірлігіне азырақ USDC аласыз. Шабуылдаушы мұны сіздің транзакцияңыз әлі де amountOutMin-нен өтетіндей етіп мөлшерлейді — егер өтпесе, сіздің swap-ыңыз revert болады да, сэндвич жасайтын құрбан болмайды. Оңтайлы frontrun мөлшері — сізді дәл өз еденіңізде қалдыратын ең үлкен мөлшер.

Шабуылдаушы өзінің 40 WETH-імен frontrun жасайды дейік. Пул x=10,040x = 10{,}040-ге ауысады, әрі инвариант бойынша шабуылдаушы мынаны алады:

25,000,0004010,04099,601 USDC out,\frac{25{,}000{,}000 \cdot 40}{10{,}040} \approx 99{,}601 \text{ USDC out},

нәтижесінде резервтер x=10,040x = 10{,}040 WETH, y24,900,399y \approx 24{,}900{,}399 USDC болады.

2. Құрбан (сіздің swap-ыңыз нашарланған пулда орындалады). Сіздің 40 WETH-іңіз енді осы резервтерге қарсы түседі:

Δy=24,900,3994010,040+40=996,015,96010,08098,811 USDC.\Delta y = \frac{24{,}900{,}399 \cdot 40}{10{,}040 + 40} = \frac{996{,}015{,}960}{10{,}080} \approx 98{,}811 \text{ USDC}.

Шектеуді тексерейік: 98 811 > 98 605, яғни сіздің транзакцияңыз revert болмайды — сіз орындалуды аласыз, тек нашарлау. Сіз таза блокта алатын 99 601-дің орнына 98 811 алдыңыз. Сіз шамамен 790 USDC жоғалттыңыз, және мұның болғанын мүлдем білмейсіз; сіздің swap-ыңыз "сәтті орындалды". Пул енді x=10,080x = 10{,}080 WETH, y24,801,588y \approx 24{,}801{,}588 USDC.

3. Backrun (шабуылдаушы кері сатады). Шабуылдаушы енді 1-қадамда сатып алған USDC-ін пулға кері сатады — немесе баламалы түрде өзінің WETH-ін кері сатып алады — осылайша сіздің сауда операцияңыз жасаған көтерілген бағаны иеленеді. Ол өзінде бар ~99 601 USDC-мен WETH-ті кері сатып алады:

Δx=10,08099,60124,801,588+99,6011,004,010,08024,901,18940.32 WETH.\Delta x = \frac{10{,}080 \cdot 99{,}601}{24{,}801{,}588 + 99{,}601} \approx \frac{1{,}004{,}010{,}080}{24{,}901{,}189} \approx 40.32 \text{ WETH}.

Шабуылдаушы 1-қадамда 40 WETH жұмсады, ал 3-қадамда 40.32 WETH қайтарып алды — gas-қа дейін шамамен 0.32 WETH (~800 USDC) пайда, ол дерлік толығымен сіздің slippage бюджетіңізден алынды. Slippage-ты қатаңдатсаңыз, бұл бюджет кішірейеді; шабуылдаушының оңтайлы frontrun мөлшері азаяды, әрі белгілі бір шектен төмен сэндвич gas шығынынан кейін пайдасыз болып, searcher сізді өткізіп жібереді.

Мұның сабағы "slippage төзімділігі жаман" дегенді білдірмейді. Сізге қандай да бір төзімділік керек, әйтпесе қарапайым баға өзгерісінде транзакцияларыңыз revert болады. Сабақ мынада: slippage төзімділігі — тікелей алынуы мүмкін шама, және оны 1% сияқты немқұрайлы әдепкі мәнге, немесе одан да жаманы, жұқа пулда "auto" режиміне қою — бақылап отырған кез келген адамға сол мөлшердегі ақшаны үстел үстінде қалдырумен парапар. Ликвидтілігі төмен пулда, мұнда сіздің өз сауда операцияңыз бағаны бірнеше пайызға жылжытады, әдепкі slippage сіздің номиналыңыздың таңғаларлық бөлігін беріп жіберуі мүмкін.

Searcher-дің пайда шартының минималды эскизі:

def sandwich_profit(x, y, gamma, victim_dx, victim_min_out, attack_dx, gas_cost):
    out1 = (y * gamma * attack_dx) / (x + gamma * attack_dx)
    x1, y1 = x + attack_dx, y - out1
    vout = (y1 * gamma * victim_dx) / (x1 + gamma * victim_dx)
    if vout < victim_min_out:
        return None  # victim would revert; no sandwich
    x2, y2 = x1 + victim_dx, y1 - vout
    got_back = (x2 * gamma * out1) / (y2 + gamma * out1)
    return got_back - attack_dx - gas_cost  # profit in WETH

Searcher vout >= victim_min_out шартын сақтайтын ең үлкен frontrun-ды табу үшін attack_dx бойынша шағын оңтайландыру жүргізеді. Осы оптимум сіздің slippage еденіңіз байланған жерде орналасады — бұл шабуылдаушының үлесі дәл сіз қалдырған орынмен шектелген дегенді білдіретін тағы бір тәсіл.

3. MEV таксономиясы: улы мен зиянсыз

"MEV" сөзі жаман мағынада қолданылады, бірақ оның бәрі құрбаннан алынған нәрсе емес. Стратегияларды біреу реттіліктен зардап шеге ме, жоқ па деген белгі бойынша жіктеу пайдалы.

Frontrunning. Күтіп тұрған пайдалы транзакцияны байқап, оны көшіру немесе алдын ала орындау, әрі бірінші орындалу үшін жоғарырақ шайпұл төлеу. Архетипі — бағаны жылжытатын үлкен сатып алуды көріп, одан бұрын сатып алу. Таза улы: құрбан нашар бағаны алады немесе оның мүмкіндігі тікелей ұрланады.

Backrunning. Транзакцияңызды нысана транзакциядан дереу кейін орналастырып, ол жасаған жағдайда әрекет ету. Маңыздысы: таза backrun нысананың орындалуын нашарлатпайды — ол кейін жүреді, яғни құрбанның бағасы қазірдің өзінде бекітілген. Егер сіздің үлкен swap-ыңыз WETH/USDC пулын Binance-пен салыстырғанда теңгерімнен шығарса, арбитражшы сізден кейін backrun жасап, оны қайта туралайды әрі айырманы өз қалтасына салады. Сізге зиян тимейді; шын мәнінде дәл осы арбитраж ончейн бағаларын кеңірек нарыққа сай ұстап тұрады. Backrunning — спектрдің зиянсыз ұшы, және — көретініміздей — заманауи MEV-қорғаныс жүйелері дәл backrun пайдасын оны туғызған қолданушыға қайтару үшін құрылған.

Sandwiching. Жоғарыда талданғандай, бір құрбанды екі жағынан қоршаған frontrun мен backrun. Құрылымы бойынша улы: frontrun тек құрбанның орындалуын нашарлату үшін ғана өмір сүреді, сол арқылы backrun оны жинап алады.

Атомарлық арбитраж. Бір активті бір алаңда арзан сатып алып, екіншісінде қымбат сату жалғыз транзакция ішінде — айталық, WETH Uniswap-та Sushiswap-қа қарағанда арзанырақ — тәуекелсіз пайда табу, бір транзакция ішінде толықтай не мүлдем жоқ (пайдасыз болса, revert болады). Нақты құрбан жоқ; бұл нарық ашық қалдырған баға алшақтығын жабады. Жалпы алғанда зиянсыз деп саналады — ол алаңаралық баға сәйкестігін жақсартады — және бұл осы серияның атомарлық арбитраж және flash loan-дар мақаласының тақырыбы, онда flash loan-дардың "капитал қажет емес" қасиеті мұны әсіресе өткір етеді.

Ликвидациялар. Несиелік позиция (Aave, Compound, Maker) өзінің кепілдік шегінен төмен түскенде, протокол жаман қарызды өтеп, кепілді өз меншігіне алатын кез келген адамға бонус ұсынады. Searcher-лер сол ликвидатор болу үшін бәсекелеседі. Мұнда "құрбан" бар — ликвидацияланатын қарыз алушы — бірақ олар протокол ережелері бойынша қалай болғанда да ликвидацияланады; MEV бәсекелестігі негізінен кім бонус алатынын анықтайды, әрі бәсекелестік арқылы оны кішірейте алады. Нарық денсаулығы үшін бейтарап-зиянсызға жуық, қарыз алушы үшін жағымсыз деп атауға болады.

Шамамен карта:

Стратегия Құрбанға зиян тие ме? Қорытынды
Frontrun Иә Улы
Sandwich Иә Улы
Backrun (таза) Жоқ Зиянсыз
Атомарлық арбитраж Жоқ Зиянсыз (баға сәйкестігін жақсартады)
Ликвидация Қарыз алушы (протокол ережелері бойынша) Бейтарап

Улы/зиянсыз шекарасы маңызды, себебі бүкіл заманауи MEV-жеңілдету стегі улы стратегияларды басып, ал зиянсыздарын сақтап әрі қайта бөлуге тырысады. Реттілік ойындарын тыйым салмай, DEX бағаларын адал ұстап тұратын арбитражды бұзбау мүмкін емес. Айла — улы құндылықты одан алынған адамға қайта жеткізу.

4. Қысқаша тарих: gas аукциондарынан Flashbots-қа дейін

Flash Boys 2.0 және priority gas auctions

Бұл құбылысқа 2019 жылғы "Flash Boys 2.0: Frontrunning, Transaction Reordering, and Consensus Instability in Decentralized Exchanges" атты мақалада Philip Daian, Steven Goldfeder, Tyler Kell, Yunqi Li, Xueyuan Zhao, Iddo Bentov, Lorenz Breidenbach және Ari Juels авторлары атау беріп, оны өлшеді. Мақала "miner extractable value" (кейін индустрия proof-of-work майнерлерден proof-of-stake proposer-лерге көшкен сайын maximal extractable value деп жалпыланды) терминін енгізді және priority gas auctions (PGA) құбылысын құжаттады: боттар пайдалы мүмкіндіктің реттілігін жеңіп алу үшін нақты уақытта бір-бірінен gas бағасын асырып отырды.

PGA-лар анық патологиялық болды. Боттардың қолындағы жалғыз тетік — ашық gas бағасы болғандықтан, олар жалғыз арбитраж немесе ликвидацияны иемдену үшін бірнеше секунд ішінде қайта-қайта жоғарырақ шайпұлмен қайта жіберіп, ашық аукцион соғысын жүргізді. Мұның екі жаман салдары болды. Біріншіден, бұл желіні қатыратты әрі MEV-ге қатысы бар-жоғына қарамастан барлығына gas бағасын көтерді. Екіншіден, әрі қауіптірегі, мақала бір блокта қолжетімді MEV блок сыйақысынан асып кетсе, ұтымды майнерлер оны ұрлау үшін тізбекті қайта ұйымдастыруға ынталанады деп дәлелдеді, бұл консенсустың орнықтылығына тікелей қауіп төндірді. MEV тек қолданушының әділдігі мәселесі ғана емес еді; ол тізбекке қауіп болды.

Жауап ретінде Flashbots

Flashbots PGA-ны бейтараптандыру үшін 2020 жылы іске қосылды. Оның негізгі идеясы: реттілік аукционын ашық mempool-дан сыртқа шығарып, жабық ұсыныс, off-chain арна ретінде жасау. Транзакцияны таратып, ашық gas соғысында күресудің орнына, searcher bundle — атомарлы, толықтай не мүлдем жоқ ретінде, белгілі бір салыстырмалы ретте қосылатын реттелген транзакциялар тізімін — құрастырады және оны жеке түрде block builder-ге ұсынысымен бірге жібереді (көбіне gas бағасы арқылы емес, proposer-ге тікелей аударым түрінде төленеді). Builder өзіне келген барлық bundle-дар мен транзакциялардан ең құнды блокты құрастырып, оны proposer-ге ұсынады.

Бір мезгілде екі нәрсе жақсарады. Searcher-лер ашық mempool-ды сәтсіз ұсыныстармен спамдауды тоқтатады, сондықтан қарапайым қолданушыларға түсетін gas-баға сыртқы әсері азаяды. Әрі жеңімпаз bundle я толықтай, я мүлдем қосылмайды, бұл бұрын блоктарды бітейтін "сәтсіз frontrun" транзакцияларын жояды. Ұсыныс соғысы әлі де болады — тек ол енді ончейн ашық айқай-шу емес, builder ішіндегі жеке аукцион ретінде өтеді.

PBS: proposer-builder separation

Flashbots-тың архитектурасы қазіргі Ethereum-дағы басым модель — proposer-builder separation (PBS)-ке жалпыланды. Рөлдер бөлінеді:

  • Searcher-лер MEV мүмкіндіктерін тауып, оларды bundle-дарға топтастырады.
  • Builder-лер bundle-дар мен ашық транзакциялардан ең құнды толық блокты құрастыруда бәсекелеседі.
  • Relay-лар builder-лер мен proposer-лер арасында тұрып, builder-лерден толық блоктарды алады да, proposer-ге тек блок тақырыптарын (header) және баға ұсынысын береді, осылайша proposer блок мазмұнын көрместен оған міндеттеме алады (бұл proposer-дің MEV-ді жай ғана ұрлап алуын болдырмайды).
  • Proposer-лер (валидаторлар) ең жоғары ұсынысы бар тақырыпты таңдап, оған қол қояды және төлемді алады.

Бұл протоколдан тыс MEV-Boost деп аталатын middleware арқылы жүзеге асырылады, оны Ethereum валидаторларының басым көпшілігі қолданады — блоктардың шамамен 80–90%-ы MEV-Boost арқылы сыртқы builder-лер арқылы құрастырылады. Бұл жұмыс істейді, бірақ сенімді relay-ларға тәуелді. Келесі қадам — ендірілген PBS (enshrined PBS, ePBS, EIP-7732) — proposer-builder separation-ды тікелей Ethereum протоколына енгізуді және сенімді relay тәуелділігін жоюды мақсат етеді. 2026 жылдың ортасына қарай ол Glamsterdam жаңартуына жоспарланған, mainnet-те 2026 жылдың соңына қарай іске қосылуы күтілуде, ал жақтаушылары блоктардың қалай міндеттелетінін жақсарту және улы қайта реттеу терезесін тарылту арқылы қолданушылардың MEV шығынын айтарлықтай қысқарта алады деп есептейді. Дәл сандарды ол шыққанға дейін болжам ретінде қабылдаған жөн, бірақ бағыт анық: протокол жылдар бойы жоқтай көрсеткен MEV жабдықтау тізбегін өз бойына сіңіріп жатыр.

MEV-Share: құндылықты қайтару

Қарапайым трейдерлер үшін ең маңызды даму — Flashbots-тың order-flow аукционы MEV-Share. Бұл идея қараңғы орманды тескеріп жібереді. Транзакцияңыз әрбір жыртқышқа көрінудің орнына, сіз оны жеке түрде MEV-Share node-іне жібересіз, ол searcher-лерге тек ішінара белгілерді ғана ашады (қанша ашуды сіз таңдайсыз). Searcher-лер сіздің транзакцияңыздан backrun жасауға ұсыныс жасайды — есіңізде болсын, backrun сізге зиян келтірмейді — және алынған пайданың үлкен бөлігі сізге қайтарылады, ал қалғаны bundle-ды қосу үшін searcher мен proposer арасында бөлінеді.

Бұл экономикалық қайта тұжырымдама әдемі. Үлкен swap backrun мүмкіндігін жасайды; сұрақ — оны кім иемденеді. Қараңғы орман әлемінде searcher-лер мен builder-лер оны толығымен алады. MEV-Share аясында сіздің өз транзакцияңыз жасаған құндылық негізінен сізге қайтарылады. Flashbots-тың тұтынушыға арналған RPC-і Flashbots Protect бөлшек транзакцияларды осы жүйе арқылы бағыттайды, әрі 2025 жылы ол gas-ақы қайтарымдарын қосты, бұл қолданушылардың алатынын айтарлықтай арттырды. Бұл — "зиянсызды қайта бөл, улыны бас" принципінің нақты іске асуы.

5. Трейдерге арналған практикалық қорғаныс тәсілдері

Аңға айналмау үшін searcher болып жұмыс істеудің қажеті жоқ. Әсер ету дәрежесі бойынша шамамен реттілікпен:

Slippage-ты әрбір пул үшін саналы түрде орнатыңыз

2-бөлімде сіздің slippage төзімділігіңіз шабуылдаушының бюджеті болып табылатыны көрсетілді. Мұнан екі ереже туындайды. Біріншіден, slippage-ты әдеттегі 1%-ға емес, пулдың нақты ликвидтілігі мен сауда операцияңыздың баға әсеріне сай мөлшерлеңіз. Терең пулда 0.1–0.3% төзімділік жеткілікті болуы мүмкін; жұқа пулда я сіз мөлшерді қауіпсіз сауда жасай алмайтыныңызды қабылдаңыз, я оны кішірек бөліктерге бөліңіз. Екіншіден, ликвидтілігі төмен жұпта "auto"/"шексіз" slippage-ты ешқашан қолданбаңыз — бұл қол қойылған бос чек. Егер swap тар төзімділікте үнемі revert болып жатса, бұл нарықтың сізге сауда операцияңыз пул үшін тым үлкен екенін айтуы, еденді босаңсытуға шақыру емес.

Жеке RPC арқылы бағыттаңыз

Ең таза құрылымдық шешім — транзакцияңызды ашық mempool-дан толығымен алшақ ұстау. Әмияныңызды транзакцияларды таратудың орнына, оларды тікелей builder-лерге жіберетін жеке RPC-ке бағыттаңыз:

  • Flashbots Protect — транзакцияңызды MEV-Share жүйесіне жібереді, сондықтан ол frontrunner-лерге ешқашан ашық көрінбейді, және кез келген backrun құндылығының үлесін әрі gas қайтарымдарын береді.
  • MEV Blocker (CoW Protocol және басқалары ұсынған) — frontrunning мен sandwiching-тен қорғайтын, backrun пайдасын қолданушыларға өтейтін, тегін пайдалану моделі бар ұқсас жеке RPC қызметі.

Сэндвич шабуылдаушыдан сіздің күтіп тұрған транзакцияңызды көруді және одан бұрын frontrun-ды енгізуді талап ететіндіктен, транзакцияңызды ашық mempool-дан алып тастау frontrun мүмкіндігін толығымен жояды. Backrun мүмкіндігі қалады, бірақ ол енді ұрланудың орнына сізге қайта аукцион арқылы қайтарылады. Мұның айырбасы — RPC операторына аздап сенім артуы және кейде қосудың сәл баяулауы — бұл әдетте сэндвич тәуекелін жоюмен салыстырғанда шамалы. (Жеке қорғаныс RPC-лерін зерттеген 2025 жылғы бенчмарк зерттеуі олардың нақты өмірдегі есеп айырысуы ашық жіберуден әрдайым қатаң түрде жақсы бола бермейтінін анықтады, яғни әсер күшті, бірақ әмбебап емес; көпшілік бөлшек көлемдегі DEX swap-тары үшін жеке бағыттау әлі де дұрыс әдепкі таңдау болып қалады.)

Batch-аукцион мен ниетке негізделген алаңдарды таңдаңыз

Кейбір DEX дизайндары реттілік артықшылығын құрылымы бойынша жояды. CoW Protocol саудаларды бірыңғай клирингтік баға бар batch аукциондарда өткізеді — партиядағы әрбір сауда бір бағамен клиринг өтеді, сондықтан пайдалануға болатын "бірінші" мен "соңғы" позиция болмайды, әрі шешушілер (solver) сізді реттіліктен айналып өтудің орнына ең жақсы орындалуды беруде бәсекелеседі. Сіз нақты жолды қол қоюдың орнына нені қалайтыныңызды қол қойып, шешушілердің орындалуды табуына мүмкіндік беретін ниетке негізделген жүйелер де сэндвичке тірек болмайды. Егер сіз ірі көлемде сауда жасасаңыз, бұл алаңдар кез келген slippage реттеуінен артық құнды.

L2-лердің неге басқаша екенін түсініңіз

Бүгінгі көптеген Ethereum rollup-тарында (Arbitrum, Optimism, Base) блоктарды rollup командасы басқаратын жалғыз sequencer құрастырады. Мұнда searcher-лер бақылай алатын ашық күтіп тұрған транзакциялар mempool-і жоқ, әрі реттілікті шешетін бір сенімді тарап бар. Іс жүзінде көптеген sequencer-лер транзакцияларды алдымен келгенге бірінші қызмет принципімен реттейді және өз қолданушыларына қарсы сэндвич шабуылдарын жүргізбейді, сондықтан бұл тізбектерде sandwiching протокол деңгейінде негізінен жоқ.

Бірақ бұл айырбасты дәл түсінген жөн: сіз орталықсыздандырылған MEV extraction-нан қауіпсіз болудың себебі — сіз оны алмауға сенетін орталықтандырылған реттеушіге сенім артып отырсыз. Sequencer сізден frontrun жасай алады; ол жай ғана мұны жасамауды таңдайды (әрі беделі соған байланысты). Бұл — уақытша тепе-теңдік. Rollup-тар өз sequencer-лерін орталықсыздандырған сайын — ортақ sequencer-лер, based sequencing, L2-дегі PBS үлгісіндегі аукциондар — дәл сол mempool көрінерлігі мен реттіліктің сатылымда болу динамикасы қайта пайда болуы мүмкін, әрі L2 MEV мәселесі шешілген емес, ашық дизайн мәселесіне айналады. "Мен L2-демін" дегенді "MEV мені мәңгі мазаламайды" дегенмен теңестірмеңіз; бұл "әзірге бір сенімді тарап оны жасамауға уәде берді" дегенді білдіреді.

Серияның қалған бөлігіне не алып кету керек

Тақырыпты негізгі маңызды фактілерге дейін тарылтайық:

  1. Ашық mempool-дегі swap — ашық ниет плюс сатылымдағы реттілік слоты. Дәл осы тіркесім, кез келген жеке қате емес, бүкіл мәселенің өзегі.
  2. Тұрақты көбейтінді AMM-де сіздің slippage төзімділігіңіз шабуылдаушы ала алатын шама, әрі сэндвичтің үлесі дәл сіз қалдырған орынмен шектелген. Slippage орнату — ыңғайлылық ауыстырғышы емес, қауіпсіздік шешімі.
  3. MEV біртекті емес: frontrun мен sandwich улы; backrun мен атомарлық арбитраж зиянсыз әрі тіпті пайдалы, себебі олар ончейн бағаларын сәйкес ұстап тұрады. Жақсы жеңілдету біріншісін басып, екіншісін қайта бөледі.
  4. Индустрияның жауабы PGA-дан (ашық gas соғыстары, Flash Boys 2.0, 2019) Flashbots / bundle / PBS-ке дейін (жабық жеке аукциондар), одан MEV-Share-ге дейін (backrun құндылығын қолданушыға қайтару) және, келесіде, протоколдағы ендірілген PBS-ке дейін жүрді.
  5. Трейдер ретінде сіздің қорғаныс тәсілдеріңіз — әрбір пул үшін тар slippage, жеке RPC-лер (Flashbots Protect, MEV Blocker), және batch-аукцион алаңдары — әрі L2 қауіпсіздігі қазіргі уақытта sequencer-ге деген сенім болжамы екенін, физика заңы емес екенін түсіну.

Атомарлық арбитраж және flash loan-дар мақаласы осы кестенің searcher жағын қарастырады — қарызға алынған капитал мен атомарлық revert-терді қауіпсіздік торы ретінде пайдаланып, зиянсыз extraction қалай құрылатынын көрсетеді. Uniswap v3 шоғырланған ликвидтілік мақаласы жоғарыдағы тұрақты көбейтінді математикасын қайта қарастырып, шоғырланған ликвидтіліктің баға әсері қисығын — сол арқылы осында біз шығарған сэндвич бюджетін — қалай қайта қалыптастыратынын көрсетеді. Mempool — қараңғы орман. Енді сіз онда не аңдитынын білесіз.

Дереккөздер

  • 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.
  • Robinson & Konstantopoulos (2020), Ethereum is a Dark Forest.
  • Flashbots documentation: MEV-Boost, MEV-Share, Flashbots Protect, MEV refunds (docs.flashbots.net).
  • Ethereum PBS / EIP-7732 (enshrined proposer-builder separation), Glamsterdam upgrade materials.
  • MEV Blocker (mevblocker.io); CoW Protocol batch-auction design.
  • Private MEV Protection RPCs: A Benchmark Study (arXiv:2505.19708, 2025).
blog.disclaimer

Authors

Eugen Soloviov
Eugen Soloviov

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.

Newsletter

Нарықтан бір қадам алда болыңыз

AI сауда талдаулары, нарық аналитикасы және платформа жаңалықтары үшін біздің ақпараттық бюллетеньге жазылыңыз.

Біз сіздің жекелігіңізді құрметтейміз. Кез келген уақытта жазылымнан шығуға болады.