USD Finans

Magasinet der gør dig klogere på penge

Sådan undgår du MEV-sandwich-angreb på Uniswap

Sådan undgår du MEV-sandwich-angreb på Uniswap

Har du nogensinde undret dig over, hvorfor din swap på Uniswap endte dyrere end forventet – selvom du fulgte alle “normale” trin? Måske blev du netop offer for et MEV-sandwich-angreb, hvor smarte bots nappede en bid af din gevinst, inden du nåede at blinke.

I takt med at DeFi bliver mere populært, er kampen om profit på Ethereum-netværket intensiveret. Markedet er ikke kun fyldt med entusiaster og langsigtede investorer; der lurer også algoritmiske aktører, der udnytter selv de mindste skævheder i pris og likviditet. Maximal Extractable Value (MEV) og især sandwich-strategier er blandt de mest indbringende – og mest skadelige – taktikker i deres arsenal.

I denne guide dykker vi ned i, hvordan MEV-bots udnytter Uniswaps åbne mempool, hvorfor din slippage tolerance kan blive din værste fjende, og hvad du helt konkret kan gøre for at handle sikkert. Fra simple indstillings­justeringer til avanceret brug af private ordreflow-løsninger: Du får en komplet værktøjskasse til at holde dine swaps fri for sandwicher.

Forstå MEV og sandwich-angreb på Uniswap

Maximal Extractable Value (MEV) er den ekstra profit, som blokproducenter eller bots kan hente ved at om­ar­ran­ge­re, indsætte eller censurere transaktioner i en blok. På Ethereum er samtlige uaf­slut­tede trans­aktioner synlige i den offentlige mempool, et slags fælles “vente­værelse”, før de bliver inkluderet i en blok. Netop denne åbenhed giver sofistikerede aktører mulighed for at analysere alle forestående handler og placere deres egne transaktioner strategisk.

Sådan fungerer et sandwich-angreb

  1. Monitoring i mempoolen
    En bot opdager din forestående swap på Uniswap, fx 10 ETH → USDC, og simulerer øjeblikkeligt pris- og likviditets­ændringer.
  2. Frontrun
    Botten sender en købstransaktion før din – ofte med højere gas/priority fee eller via en privat relay til validatoren – så prisen på output-token stiger.
  3. Dit swap
    Din transaktion eksekveres til en dårligere kurs, men går stadig igennem, fordi din slippage-tolerance (fx 0,5-2 %) accepterer pris­afvigelsen.
  4. Backrun
    Botten sælger (modsatrettede swap) kort efter i samme blok, nu til en højere pris, og “låser” profitten – typisk den margen, du mistede.

Hvorfor slippage-tolerance & prisimpact er nøglen

  • Slippage-tolerance sætter en øvre grænse for, hvor dårlig kursen må blive, før din swap annulleres. Angriberen skubber bevidst prisen lige op til grænsen.
  • Prisimpact er den naturlige prisændring, din egen handel forårsager i poolen. En sandwich lægger et yderligere lag af pris­skævhed oven på dette.
  • Bots bruger flash-lån eller eksisterende likviditet, så de ikke selv lider permanent tab (impermanent loss bæres af LP’erne).

Uniswap v2 vs. V3: Forskelle i risiko

Funktion Uniswap v2 Uniswap v3
Likviditet Jævnt fordelt over hele pris­intervallet. Større puljer → mindre pris­bevægelse per token. Koncentreret likviditet i ticks. Smalle ranges kan betyde større prisryk for samme handels­volume.
Angrebsflade Sandwiches stadig profitable, men kræver større kapital ved dybe puljer. Narrow ticks = mindre kapital­krav for at flytte prisen → lettere at sandwiche små til mellemstore swaps.
Pool-valg Én pool pr. token-par med ens fee-tier (0,3 %) Flere fee-tiers og strategier; angribere vælger det snævreste og mest rentable tick-range.
Observation Let at spotte pris­grafens “bump” før og efter offerets swap. Pris­bevægelser kan være abrupt og skjult i enkelte ticks, sværere at opdage med blot øjet.

Sammenfattende udnytter en sandwich-bot tre forhold: forudsigelig ordreflow (mempoolen), tolerancer sat af brugeren (slippage/deadline) og automatisk pris­sliding i AMM’en. I næste afsnit ser vi på konkrete indstillinger og handelsvaner, der reducerer sandsynligheden for at ende som “kødet” i sandwichen.

Basale indstillinger og handelsvaner der reducerer risikoen

Inden du tager de tunge MEV-værktøjer i brug, kan du slippe for mange sandwich-angreb ved blot at finpudse dine basis-indstillinger og dine handelsvaner. Nedenfor finder du de vigtigste trin – direkte anvendelige i Uniswap-interfacet eller enhver anden EVM-baseret DEX.

1. Finjustér swap-indstillingerne

Indstilling Hvor finder du den? Anbefalet praksis Hvorfor det hjælper
Slippage-tolerance ⚙️-ikonet øverst til højre 0,1-0,5 % for store, likvide tokens
0,5-1 % for long-tail tokens
Reducerer det prisvindue en bot kan udnytte. Jo lavere vindue, jo sværere at “sandwiche” dig.
Transaction deadline Samme menu som slippage 1-5 minutter Mindre tidsrum = færre blokke, hvor frontrunnere kan organisere angrebet.
Gas-pris Wallet-popup (MetaMask, Rabby osv.) Vælg “Priority” eller eip-1559 maxPriorityFee ≥ 1,5 Gwei
(kan justeres ned ved lav netværksbelastning)
Et moderat ekstra tip kan få mineren til at inkludere din handel før botten.

2. Brug smartere ordretyper

  1. Limit-ordrer (Gelato, UniLimit eller 1inch): udfører kun, når prisen rammer dit niveau – ingen slippage = intet sandwich-vindue.
  2. TWAP / DCA-ordrer (Balancer, Instadapp): spreder ordren ud over tid, så hver enkelt swap er lille og uinteressant for MEV-bots.

3. Split store handler op

En sandwich bliver først rigtig profitabel, når din handel er så stor, at den flytter pool-prisen mærkbart. Overvej derfor at:

  • Dele en handel på f.eks. 100 ETH i 4-5 mindre swaps med 2-5 blokkes mellemrum.
  • Kombinere dette med TWAP-strategien ovenfor.

Det koster lidt ekstra gas, men sparer ofte langt mere i undgået pris-impact og MEV-tab.

4. Vælg pools med dyb likviditet

  • På Uniswap v3: foretræk 0.05 % eller 0.3 % fee-tiers, hvor TVL typisk er højest.
  • Undgå små concentrated ranges, medmindre du kender LP’en. En smal range kan betyde, at et par tusind dollars flytter prisen dramatisk.
  • Tjek TVL og 24h-volumen i info.uniswap.org eller en DEX-aggregator, før du trykker “Swap”.

5. Handl uden for spidsbelastede tidsrum

Bots er mest aggressive, når gaspriserne er høje – ofte sammenfaldende med amerikansk aften (ca. 18-24 UTC). Hvis det ikke haster:

Overvej i stedet tidlig morgen (UTC) eller weekender, hvor mempoolen er tyndere og konkurrencen lav.

6. Kend dine tokens

Niche- eller nylanceringstokens (low caps, værd under 10 mio. USD) har typisk:

  • Lav likviditet → høj prisimpact → lette sandwich-mål.
  • LP’er med kun én eller to store wallets, som kan re-rangere likviditeten uden varsel.

Hvis du absolut vil eksponeres, så øg due diligence og brug endnu lavere slippage-tolerance (0,1 % eller mindre).

7. Hurtig tjekliste før du trykker “confirm”

  • Slippage sat til < 0,5 %?
  • Deadline ≤ 5 min?
  • Simuleret swap i fx Tenderly / DeFiLlama?
  • TVL ≥ 5× handelsbeløbet?
  • Gas OK i forhold til nuværende baseFee?

Følger du ovenstående grundprincipper, har du allerede neutraliseret de fleste opportunistiske MEV-bots og sørget for, at din næste Uniswap-handel bliver billigere, roligere og mere forudsigelig.

Avanceret beskyttelse: privat ordreflow og værktøjer

Den mest gennemtestede måde at skjule din transaktion for sandwich-botter er at sende den uden om den offentlige mempool.

  1. Flashbots Protect RPC
    • Gratis, hostet af Flashbots consortium.
    • Din transaktion sendes direkte til udvalgte validatorer i et “beskyttet” bundle, så den aldrig når den åbne mempool.
    • Understøtter simulate-then-send; du kan se exakte gas-omkostninger og prisimpact før du signer.
    • Tilføj blot RPC-URL’en i din wallet: https://rpc.flashbots.net. (Husk at slå tilbage til normal RPC, når du bruger dapps der kræver mempool-adgang, f.eks. NFT-mints.)
  2. MEV-Blocker RPC (joint venture mellem CoW Swap, Gnosis & BeaverBuild)
    • Sender din transaktion til et netværk af “searchers”, der konkurrerer om at eksekvere den uden at sandwiche dig.
    • 90 % af eventuel MEV deles med dig som bruger, 10 % går til validatorer – smart, hvis din handler ellers kunne blive re-backrunned.
    • RPC-URL: https://rpc.mevblocker.io.

2. Brug dex’er med indbygget mev-beskyttelse

DEX / Produkt Hvordan virker beskyttelsen? Når det giver mest mening
UniswapX (intent-baseret auktion) Du signer kun en hensigt (ikke en on-chain swap). Off-chain “fillers” konkurrerer om at give dig bedste pris, og vinderen publicerer resultatet on-chain i én transaktion. Store handler, lav slippage, vil betale en relativt højere gas-pris mod fuld beskyttelse.
CoW Swap Batch-auktion hver blok. Handler matches internt (co-w-s: coincidence of wants). Kun netto-difference lander on-chain, så der er intet at frontrunne. Hvis din token har flere likviditetskilder eller du handler mid-caps med moderat volumen.
1inch Fusion / RFQ Off-chain maker-ordre (RFQ) eller Fusion-auktion. Professional market-makers stiller fast pris, og transaktionen eksekveres atomisk. Når du vil have fast pris uden at bekymre dig om slippage.

3. Wallets og aggregators med “anti-mev mode”

  • MetaMask + Flask Snaps: Installer Flashbots- eller MEV-Blocker-snap for auto-routing af swaps.
  • Rabby Wallet: Indbygget “Hide from Mempool” toggle der automatisk bruger en privat relay.
  • 1inch Wallet: Tilbyder Fusion-swap og viser forudsiget MEV-omkostning før send.
  • Balancer & CowSwap-ext.: Integreret batch-beskyttelse når du interagerer via dapp’en.

4. Simulér altid før du signer

Selv et privat ordreflow kan ikke redde dig fra dårlig pris eller bugs i contract-koden. Brug derfor en on-chain simulator:

  • Tenderly: Indsæt transaktionsdata, vælg blokhøjde og se real-tid outcomes – inkl. hvor meget slippage botter kan udvinde.
  • DeBank / Etherscan Simulation: Hurtig “dry-run” direkte fra UI’et, godt nok til simple swaps.

Hurtig tjekliste

  1. Skift til privat RPC før større swaps.
  2. Tjek om DEX’en tilbyder intent- eller batch-baseret udførsel.
  3. Brug wallets med anti-MEV toggle som standard.
  4. Simulér transaktionen, især når du handler tokens med lav likviditet.
  5. Overvåg blok-explorer efter eksekvering for at bekræfte, at ingen frontrun/backrun fandt sted.

Ved at kombinere private ordrekanaler, MEV-sikre DEX-modeller og grundig simulation kan du skære den største del af risikoen væk – uden at gå på kompromis med pris eller hastighed.

Opdag, verificér og lær: sådan spotter du et sandwich og forbedrer din praksis

Den hurtigste måde at bekræfte mistanken om et sandwich-angreb er at åbne den mistænkte transaktion i en block-explorer som Etherscan, Blockscout eller specialiserede sites som EigenPhi og sandwich.wtf.

  1. Frontrun – din transaktion – backrun: I blokken vil du ofte se tre swaps i træk:
    • Tx 1: En bot køber den samme token-pair med en smule højere gaspris.
    • Tx 2: Din egen swap.
    • Tx 3: Botten sælger igen til en fordelagtig pris.
  2. Samme bot-adresse: Frontrun- og backrun-transaktionen kommer næsten altid fra den samme adresse eller smart-contract-router.
  3. Matchende input/output: Botten modtager præcis de tokens, du prøver at købe, og returnerer dem i backrun-delen – typisk med 0,01-1,0 % gevinst.
  4. Gas-signatur: Botten byder ofte +1 gwei over din gaspris for at sikre placering foran. Backrun-tx har samme nonce+1 og tilsvarende gaspris.
  5. Pris-impact på din tx: Klik på “Token Transfers” – du vil se, at din swap får en dårligere kurs end poolens mid-price i den foregående blok.

2. Brug af transaktionssimulatorer

Før du sender en større swap, kan du “køre den igennem” en simulator:

Værktøj Hvordan det hjælper
Tenderly Viser forventet execution-price, gas og potentielle MEV-interaktioner.
DeFi Saver “Simulation Mode” Dry-run direkte i interfacet for Uniswap-handler.
Foundry / Anvil (lokal fork) Udviklere kan replay’e mempoolen og teste sandwich-modstandsdygtighed offline.

Hvis prisen afviger markant i simuleringen, er riskoen for sandwich høj. Send i stedet transaktionen via en privat relay (Flashbots Protect, MEV-Blocker) eller opsplit den i mindre bidder.

3. Ethereum l1 vs. L2’er: Forskelle i mev-landskabet

  • Ethereum Mainnet (L1): Offentlig mempool, mange professionelle MEV-searchers. Sandwich-angreb er hyppige, men gennemsigtig pga. blok-finalitet.
  • Optimistiske rollups (Arbitrum, Optimism, Base):
    • Enkelte sequencers har midlertidigt monopol på ordreflowet.
    • Som bruger ser du færre klassiske sandwiches i explorers, men sequenceren kan udføre intern MEV (“internalized MEV”), som du ikke kan spotte i mempoolen.
  • zk-rollups (zkSync Era, Linea, Scroll): Samme sequencer-dynamik, kort bloktid. Offentlig mempool kan være begrænset, hvilket reducerer truslen fra uafhængige bots, men ikke fra selve sequenceren.

På L2 har du derfor ofte færre offentlige indikatorer. Brug private order-flows (f.eks. CoW Swap eller UniswapX intents) for at få en udførselsgaranti uden offentlig mempool-eksponering.

4. Tjekliste: Bedste praksis & fejlfinding

  1. Bekræft altid swap-prisen med en simulator før større handler.
  2. Ved dyr eller fejlet swap:
    • Åbn blokken → se om et frontrun/backrun flankerer din tx.
    • Tjek Received / Expected i interfacet – differencen er ofte MEV + slippage.
  3. Brug private RPC’er (Flashbots Protect, MEV-Blocker) til handler > 2-3 ETH eller på lavlikvide tokens.
  4. Sæt slippage-tolerance lavt (0,1-0,5 % for likvide par) og deadline < 5 min.
  5. Splít store ordrer eller brug TWAP/DCA.
  6. Hold øje med gas-market: høj volatilitet ⇒ flere bots ⇒ større sandwich-risiko.
  7. Hvis du stadig bliver sandwichet, overvej at skifte til en DEX-model med batch-auktion (CoW) eller RFQ (1inch Fusion) for fuld MEV-beskyttelse.

Ved konsekvent at analysere dine swaps, simulere fremtidige handler og udnytte privat ordreflow kan du lære af dine erfaringer, minimere tab og handle mere selvsikkert på Uniswap – både på Ethereum L1 og de hastigt voksende L2-netværk.

Indhold