<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: FRB Research</title>
    <description>The latest articles on DEV Community by FRB Research (@frb_research).</description>
    <link>https://dev.to/frb_research</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F3934040%2F3fc2b0af-d07a-4470-a618-0935bfb762f9.png</url>
      <title>DEV Community: FRB Research</title>
      <link>https://dev.to/frb_research</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/frb_research"/>
    <language>en</language>
    <item>
      <title>Uniswap V4 Hooks MEV 2026: Searcher Opportunities and Risks</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Sat, 13 Jun 2026 02:04:09 +0000</pubDate>
      <link>https://dev.to/frb_research/uniswap-v4-hooks-mev-2026-searcher-opportunities-and-risks-1kkk</link>
      <guid>https://dev.to/frb_research/uniswap-v4-hooks-mev-2026-searcher-opportunities-and-risks-1kkk</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Cross-posted from &lt;a href="https://ai-frb.com/blog/uniswap-v4-hooks-mev-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;&lt;/strong&gt; — the canonical version lives on the FRB Research blog. This DEV.to mirror exists so the dev community can engage in comments.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — Uniswap V4 hooks turn each pool into a programmable contract with custom logic at swap, modify-liquidity, and donate boundaries. For searchers, this creates three new opportunity categories — &lt;strong&gt;custom-curve arbitrage&lt;/strong&gt; between hook-altered prices and reference AMMs, &lt;strong&gt;dynamic-fee front-of-block races&lt;/strong&gt; where hook fee logic can be predicted, and &lt;strong&gt;JIT-style liquidity hooks&lt;/strong&gt; that legally extract value via beforeSwap/afterSwap callbacks. It also introduces new risks: hook reentrancy traps, asymmetric gas costs, and pool-specific simulation requirements that break "universal" arb bots designed for V2/V3 invariants.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Hooks Actually Change
&lt;/h2&gt;

&lt;p&gt;A V4 pool isn't just &lt;code&gt;x * y = k&lt;/code&gt; with a fee tier. It's a &lt;code&gt;PoolKey&lt;/code&gt; plus a deployed &lt;code&gt;IHooks&lt;/code&gt; contract that can interpose logic at up to ten callback points:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Callback&lt;/th&gt;
&lt;th&gt;When It Fires&lt;/th&gt;
&lt;th&gt;MEV Relevance&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeInitialize&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pool creation&lt;/td&gt;
&lt;td&gt;Low (one-shot)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterInitialize&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pool creation&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeAddLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;LP deposit&lt;/td&gt;
&lt;td&gt;Medium — gates JIT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterAddLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;After deposit&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeRemoveLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;LP withdraw&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterRemoveLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;After withdraw&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;code&gt;beforeSwap&lt;/code&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Before swap math&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;High — fee/route logic&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;code&gt;afterSwap&lt;/code&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;After swap math&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;High — donations, rebalancing&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeDonate&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Donation hook&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterDonate&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Donation hook&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The two that matter for searchers are &lt;code&gt;beforeSwap&lt;/code&gt; and &lt;code&gt;afterSwap&lt;/code&gt;. These let a pool implement dynamic fees, custom pricing curves, or per-swap rebalancing — all of which create exploitable asymmetries vs. plain V3 quotes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 1: Custom-Curve Arbitrage
&lt;/h2&gt;

&lt;p&gt;V4 hooks can replace the constant-product price calculation entirely. A pool might use a TWAMM curve, a constant-sum stable curve, or a fully oracle-priced curve. When that pool's effective price deviates from the rest of the market, an arb opportunity opens.&lt;/p&gt;

&lt;p&gt;The constraint: &lt;strong&gt;you cannot price V4 hook pools off-chain using V3 math&lt;/strong&gt;. Every simulation must invoke the hook's &lt;code&gt;beforeSwap&lt;/code&gt; to get the real quote. This means:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Discover the hook contract behind each pool you care about&lt;/li&gt;
&lt;li&gt; Either decompile the hook logic or simulate via &lt;code&gt;eth_call&lt;/code&gt; on each tick&lt;/li&gt;
&lt;li&gt; Add the gas overhead of the hook callback (5k–80k extra gas) to your profit threshold&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Realistic per-trade arb sizes on hook-altered pools in early 2026: $30–$2,000, with much higher variance than V3. Pools with &lt;strong&gt;untested custom curves&lt;/strong&gt; tend to mispriced for hours before anyone notices, then close once one good searcher writes the simulator.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 2: Dynamic Fee Races
&lt;/h2&gt;

&lt;p&gt;A common hook pattern is &lt;strong&gt;volatility-adjusted dynamic fees&lt;/strong&gt; — the hook reads a volatility oracle in &lt;code&gt;beforeSwap&lt;/code&gt; and raises fees during turbulence. This creates two MEV plays:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Play A — front-run the fee hike.&lt;/strong&gt; If the oracle is on-chain and you can predict its next update (e.g. Uniswap's own observation queue), you can route a large swap one block before the hike at the lower fee.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Play B — back-run the fee normalization.&lt;/strong&gt; When volatility drops and the hook lowers fees, the first trade after the fee change captures unusual elasticity. Watch the oracle's "decay" function and queue a bundle that fires immediately after.&lt;/p&gt;

&lt;p&gt;Both require &lt;strong&gt;per-pool fee-prediction logic&lt;/strong&gt;. Generic bots that assume a static 5/30/100 bps tier will mis-price these pools by 10–50 bps consistently. See &lt;a href="https://dev.to/blog/how-fast-mev-bots-execute"&gt;How Fast MEV Bots Execute&lt;/a&gt; for the latency budget this implies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 3: JIT-via-Hook Liquidity
&lt;/h2&gt;

&lt;p&gt;V3 JIT (just-in-time) liquidity required searchers to wrap a swap with mint and burn in the same block. V4 hooks let a pool &lt;strong&gt;internalize JIT&lt;/strong&gt; — the hook itself adds and removes liquidity around incoming swaps, capturing the LP fees.&lt;/p&gt;

&lt;p&gt;For an external searcher, this changes the strategy:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Pools with internal JIT hooks&lt;/strong&gt; are harder to JIT-attack — the hook already takes the LP fee. Don't waste gas competing.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Pools without internal JIT&lt;/strong&gt; still allow classic V3-style JIT, but you must check the hook flags first (&lt;code&gt;hasPermission(BEFORE_ADD_LIQUIDITY_FLAG)&lt;/code&gt;) to know whether your mint will trigger extra callbacks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The on-chain check is one storage read. Skip pools where internal JIT is active and focus capital on the half of the market without it. See &lt;a href="https://dev.to/blog/jit-liquidity-strategy-explained-2026"&gt;JIT Liquidity Strategy Explained&lt;/a&gt; for the underlying mechanic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 1: Hook Reentrancy Traps
&lt;/h2&gt;

&lt;p&gt;V4's singleton design means all pools share state in the &lt;code&gt;PoolManager&lt;/code&gt;. A malicious hook can call back into the manager during your swap and front-run your own bundle from inside the callback. This isn't theoretical — early V4 audits flagged several hook patterns that allow exactly this.&lt;/p&gt;

&lt;p&gt;Defensive rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Whitelist hooks&lt;/strong&gt;. Never swap through a hook contract you haven't verified is on a maintained allowlist (Uniswap Labs publishes one; community lists exist for hooks they don't bless).&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Cap loss per pool&lt;/strong&gt;. Per-pool max-loss limits in your bundle's revert guard catch hook drain attempts.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Gas-bomb detection&lt;/strong&gt;. If a hook's &lt;code&gt;beforeSwap&lt;/code&gt; consumes &amp;gt;200k gas in simulation, treat it as hostile and exclude the pool.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Risk 2: Asymmetric Gas Costs
&lt;/h2&gt;

&lt;p&gt;Hook callbacks make gas cost a function of the pool, not the swap size. A simple swap through a complex hook can cost 250k gas; the same swap through a no-hook pool costs 95k. If your arb model assumes uniform gas, your "profitable" trades will lose money on hook-heavy paths.&lt;/p&gt;

&lt;p&gt;Track per-pool gas cost over a rolling window of executed swaps. Update your profitability threshold per pool, not per chain. The bots that survive 2026 V4 trading will have &lt;strong&gt;per-pool unit economics&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 3: Simulation Drift
&lt;/h2&gt;

&lt;p&gt;The biggest operational risk: your off-chain simulator can drift from on-chain reality if a hook upgrades. Some hooks are upgradeable proxies. A silent upgrade can change the pricing curve mid-day and your bot will keep submitting bundles based on stale logic.&lt;/p&gt;

&lt;p&gt;Mitigation:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Subscribe to the hook contract's events for upgrade signals&lt;/li&gt;
&lt;li&gt; Re-simulate every 100 blocks against a recent on-chain swap to detect drift&lt;/li&gt;
&lt;li&gt; Auto-pause any pool whose simulator-vs-actual delta exceeds 25 bps for three consecutive trades&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How V4 Hooks Compare With V3 MEV
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimension&lt;/th&gt;
&lt;th&gt;Uniswap V3&lt;/th&gt;
&lt;th&gt;Uniswap V4 + Hooks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pricing math&lt;/td&gt;
&lt;td&gt;Universal (concentrated liquidity)&lt;/td&gt;
&lt;td&gt;Pool-specific (custom curves)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fee logic&lt;/td&gt;
&lt;td&gt;Static tiers (1, 5, 30, 100 bps)&lt;/td&gt;
&lt;td&gt;Dynamic per-swap&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gas cost&lt;/td&gt;
&lt;td&gt;Predictable&lt;/td&gt;
&lt;td&gt;Pool-dependent (95k–280k)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JIT viability&lt;/td&gt;
&lt;td&gt;Always&lt;/td&gt;
&lt;td&gt;Depends on hook flags&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sim complexity&lt;/td&gt;
&lt;td&gt;Off-chain math&lt;/td&gt;
&lt;td&gt;On-chain simulation required&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profitable bot type&lt;/td&gt;
&lt;td&gt;Generic invariant solver&lt;/td&gt;
&lt;td&gt;Per-pool specialist&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The shift is from &lt;strong&gt;invariant solvers&lt;/strong&gt; to &lt;strong&gt;per-pool specialists&lt;/strong&gt;. Searchers who tooled up early on hook-aware simulation are extracting outsized share because most existing bots have not adapted.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hook-Aware Bundling Pattern
&lt;/h2&gt;

&lt;p&gt;A robust V4 bundle structure for arb:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Static call simulate &lt;code&gt;swap(poolKey, params)&lt;/code&gt; against forked state at current block&lt;/li&gt;
&lt;li&gt; Read hook flags and re-simulate if hook flags include &lt;code&gt;beforeSwap&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt; Compute expected output minus all gas (including callback overhead)&lt;/li&gt;
&lt;li&gt; If profit &amp;gt; threshold, submit bundle through your private relay&lt;/li&gt;
&lt;li&gt; Include a per-pool revert guard checking actual output ≥ 98% of simulated&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The third step — accurate gas inclusion — is where most non-specialist bots lose money on V4. See &lt;a href="https://dev.to/blog/profitability-gas-budget-calculator-guide"&gt;Profitability Gas Budget Calculator&lt;/a&gt; for the calculation framework.&lt;/p&gt;

&lt;h2&gt;
  
  
  What FRB Agent Supports
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dev.to/download"&gt;FRB Agent&lt;/a&gt; supports Uniswap V4 swaps on Ethereum mainnet, Base, Arbitrum, Optimism, and Polygon through its multi-chain DEX router. The simulation layer auto-detects hook contracts and applies per-pool gas adjustment when building atomic-arbitrage bundles. Hook whitelisting is configurable per chain in the dashboard — the default ships with Uniswap Labs' published hook list and the user can extend it.&lt;/p&gt;

&lt;p&gt;What the agent does not do: &lt;strong&gt;decompile arbitrary unknown hooks&lt;/strong&gt;. If a pool's hook is not on the whitelist, the agent skips it. This is by design — running blind through unverified hooks is the fastest way to lose your inventory to a malicious pool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Realistic Returns On V4 Hook Arb
&lt;/h2&gt;

&lt;p&gt;Indicative early-2026 monthly returns for a $30k inventory solo searcher running V4-hook-aware arb across mainnet + Base + Arbitrum:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Quiet month&lt;/strong&gt; (low volatility, few new hook pools): 1.5–3% return&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Active month&lt;/strong&gt; (new pools launching, oracle resets): 5–12% return&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Volatility spike month&lt;/strong&gt;: highly variable, can be 15–25% or negative&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are illustrative, not promises. The distribution skews more positive than V3 arb because the &lt;strong&gt;simulator competition is thinner&lt;/strong&gt; — but a single hook-misclassification incident can wipe a month. See &lt;a href="https://dev.to/refund"&gt;the FRB risk disclosure&lt;/a&gt; for the full risk model.&lt;/p&gt;

&lt;h2&gt;
  
  
  Further Reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/jit-liquidity-strategy-explained-2026"&gt;JIT Liquidity Strategy Explained 2026&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/how-fast-mev-bots-execute"&gt;How Fast MEV Bots Execute&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/profitability-gas-budget-calculator-guide"&gt;Profitability Gas Budget Calculator Guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/best-private-rpc-ethereum-2026"&gt;Best Private RPC for Ethereum 2026&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/cross-chain-arbitrage-mev-2026"&gt;Cross-Chain Arbitrage MEV 2026&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on the &lt;a href="https://ai-frb.com/blog/uniswap-v4-hooks-mev-2026" rel="noopener noreferrer"&gt;FRB Research blog&lt;/a&gt;. Discuss MEV strategy with the team at &lt;a href="https://ai-frb.com" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>ethereum</category>
      <category>security</category>
      <category>web3</category>
    </item>
    <item>
      <title>Pectra &amp; Fusaka Ethereum Upgrade MEV Impact 2026: Searcher Adaptation Guide</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Sat, 13 Jun 2026 02:03:10 +0000</pubDate>
      <link>https://dev.to/frb_research/pectra-fusaka-ethereum-upgrade-mev-impact-2026-searcher-adaptation-guide-4678</link>
      <guid>https://dev.to/frb_research/pectra-fusaka-ethereum-upgrade-mev-impact-2026-searcher-adaptation-guide-4678</guid>
      <description>&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — Pectra and Fusaka are the two Ethereum hard fork upgrades shaping MEV in 2026. &lt;strong&gt;Pectra&lt;/strong&gt; activated in 2025 with three MEV-relevant EIPs: EIP-7251 (raised max effective validator balance to 2,048 ETH, concentrating staking), EIP-7702 (introduced EOA-to-contract delegations, new transaction class), and EIP-7549 (changed attestation aggregation). &lt;strong&gt;Fusaka&lt;/strong&gt; is scheduled for late 2026 with EIP-7594 PeerDAS (data availability sampling, ~8x blob throughput) and scaling improvements. Together they shift Ethereum's economic surface: more concentrated validator MEV, new transaction types to parse, and cheaper blob space that pulls flow toward L2s.&lt;/p&gt;

&lt;h2&gt;
  
  
  Pectra: What Activated in 2025
&lt;/h2&gt;

&lt;p&gt;Pectra hard-forked Ethereum mainnet in May 2025. Three EIPs matter for MEV:&lt;/p&gt;

&lt;h3&gt;
  
  
  EIP-7251: Max Effective Balance Raise (32 → 2,048 ETH)
&lt;/h3&gt;

&lt;p&gt;Pre-Pectra: each validator could hold at most 32 ETH staked. A 32k ETH staking entity needed 1,000 validator slots.&lt;/p&gt;

&lt;p&gt;Post-Pectra: validators can consolidate up to 2,048 ETH. The same 32k ETH operation needs only 16 validator slots.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MEV consequences&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Concentration&lt;/strong&gt;: Major staking entities (Lido, Coinbase, Binance staking) consolidated their validators through 2025-2026. Each validator now controls more proposal slots.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Relay relationships&lt;/strong&gt;: Consolidated validators have stronger, more centralized relationships with MEV builders/relays. Generic searcher strategies face more concentrated counterparties.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;MEV-Boost dynamics&lt;/strong&gt;: Top 5 builders (Beaverbuild, Titan, BuilderNet, rsync-builder, Flashbots) have higher market share post-Pectra.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  EIP-7702: EOA Delegations (Smart-EOA-on-Demand)
&lt;/h3&gt;

&lt;p&gt;Pre-Pectra: an EOA could only sign transactions of types 0, 1, 2, 3. To get smart-wallet behavior, a user needed to deploy a smart contract wallet (ERC-4337).&lt;/p&gt;

&lt;p&gt;Post-Pectra: an EOA can sign a transaction with a &lt;code&gt;SetCodeListItem&lt;/code&gt; — temporarily attaching contract code for that transaction. This enables batching, sponsorship, and session keys without deploying a smart wallet.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MEV consequences&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;New transaction type 0x04&lt;/strong&gt; that parsers must handle&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Multi-action transactions&lt;/strong&gt; from regular wallets (approve + swap + claim in one tx)&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Sponsored bundles&lt;/strong&gt;: priority fee can be zero with paymaster paying out-of-band&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Patient front-running&lt;/strong&gt;: session keys visible on-chain before submission&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  EIP-7549: Attestation Aggregation Change
&lt;/h3&gt;

&lt;p&gt;Marginal MEV impact — affects how attestations propagate, not what searchers see in the mempool. Builders adjusted; searchers mostly unaffected.&lt;/p&gt;

&lt;h2&gt;
  
  
  Fusaka: What Ships Late 2026
&lt;/h2&gt;

&lt;h3&gt;
  
  
  EIP-7594 PeerDAS (Data Availability Sampling)
&lt;/h3&gt;

&lt;p&gt;Pre-Fusaka: Ethereum's blob throughput is ~6 blobs per block (~3 MB/min). Post-Fusaka: PeerDAS enables nodes to sample data without holding all blobs, scaling to ~48 blobs per block (~24 MB/min).&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;MEV consequences&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;L2 economics&lt;/strong&gt;: L2 settlement costs drop 60-80%. Base, Arbitrum, Optimism, zkSync all see fee compression.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;L1 flow shift&lt;/strong&gt;: As L2s become cheaper, more discretionary trading happens there. L1 MEV becomes higher-quality but lower-quantity.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;&lt;strong&gt;Blob-priced opportunities&lt;/strong&gt;: Fee market for blob space matures. New MEV-adjacent strategies around blob inclusion timing become viable.&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Strategy 1: Adapt Your Parser to 7702
&lt;/h2&gt;

&lt;p&gt;If your MEV bot doesn't parse type 0x04 transactions, you're missing 8-15% of mainnet flow by mid-2026:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Add transaction type 0x04 to your mempool subscriber filters&lt;/li&gt;
&lt;li&gt;Parse the &lt;code&gt;SetCodeListItem&lt;/code&gt; array — these are the delegation targets&lt;/li&gt;
&lt;li&gt;When the delegation target is a known multicall, recursively decode the inner calls&lt;/li&gt;
&lt;li&gt;Update your sandwich/back-run logic to account for batched operations&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Strategy 2: Reposition for Concentrated Validators
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Generic bundle submission to all builders has lower differentiation&lt;/li&gt;
&lt;li&gt;Relationship with specific builders matters more&lt;/li&gt;
&lt;li&gt;Pure-mempool strategies face higher competition; relay-aware strategies retain edge&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Strategy 3: L2 Migration Planning for Fusaka
&lt;/h2&gt;

&lt;p&gt;Pre-Fusaka, L2 fees on Base/Arbitrum are 5-15 cents per swap. Post-Fusaka, expect 1-3 cents.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Retail flow migrates to L2 (already trending; accelerates post-Fusaka)&lt;/li&gt;
&lt;li&gt;L1 keeps high-value flow but with thinner overall volume&lt;/li&gt;
&lt;li&gt;L2 arb economics improve: lower fees mean more profitable arb at smaller spreads&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;If you're 70% L1 and 30% L2 in mid-2026, you may want 50/50 by year-end.&lt;/p&gt;

&lt;h2&gt;
  
  
  Strategy 4: Sponsored-Bundle Awareness
&lt;/h2&gt;

&lt;p&gt;EIP-7702 enables paymaster-sponsored bundles where the priority fee is zero. Your bundle-ranking logic needs to account for:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Side payments to builders (off-chain or via paymaster mechanisms)&lt;/li&gt;
&lt;li&gt;True economic value of inclusion vs the visible fee&lt;/li&gt;
&lt;li&gt;Mempool transactions with apparent low priority that may actually be valuable&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Risks for Searchers Post-Pectra
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;Reduced solo-validator opportunity surface&lt;/strong&gt;: With validator concentration, the "small validators not on top relays" surface area shrank.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Increased operational complexity&lt;/strong&gt;: Handling 7702 traffic adds parsing, simulation, and bundle-building complexity.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Concentration risk&lt;/strong&gt;: If top 5 builders capture 90% of MEV value, censorship and gatekeeping risk grows. Operators without builder relationships face structural disadvantage.&lt;/p&gt;

&lt;h2&gt;
  
  
  Bottom Line
&lt;/h2&gt;

&lt;p&gt;Pectra rewired Ethereum's validator economics and added EIP-7702 as a new transaction class. MEV bots that didn't adapt to 7702 by mid-2026 missed material flow. Fusaka in late 2026 will rebalance the L1-vs-L2 economic surface further.&lt;/p&gt;

&lt;p&gt;The professional MEV operators in 2026 invested early in 7702 parsing and builder relationships post-Pectra. The structural advantage of using a maintained agent grows each upgrade cycle.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Full post + FAQ at &lt;a href="https://ai-frb.com/blog/pectra-fusaka-ethereum-upgrade-mev-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;. FRB Agent is a non-custodial desktop MEV agent for Windows — &lt;a href="https://ai-frb.com/download" rel="noopener noreferrer"&gt;download free&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>ethereum</category>
      <category>news</category>
      <category>web3</category>
    </item>
    <item>
      <title>LRT Arbitrage 2026: eETH, ezETH, rsETH Searcher Playbook</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Sat, 13 Jun 2026 02:02:21 +0000</pubDate>
      <link>https://dev.to/frb_research/lrt-arbitrage-2026-eeth-ezeth-rseth-searcher-playbook-a5h</link>
      <guid>https://dev.to/frb_research/lrt-arbitrage-2026-eeth-ezeth-rseth-searcher-playbook-a5h</guid>
      <description>&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — LRT (Liquid Restaking Token) arbitrage in 2026 captures spreads between LRTs like weETH, ezETH, rsETH, pufETH and their underlying ETH/stETH. With $30B+ TVL across the LRT ecosystem and frequent peg drift during yield rebalancing events, the arb pays consistently for searchers running atomic bundles on Curve, Uniswap V3, Balancer, and Pendle pools. The playbook is structurally similar to stablecoin depeg arb but with LRT-specific risks: AVS slashing exposure, sequential withdrawal queues, and correlation between LRT depegs and systemic restaking stress.&lt;/p&gt;

&lt;h2&gt;
  
  
  The 2026 LRT Landscape
&lt;/h2&gt;

&lt;p&gt;Five LRT protocols dominate the market:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Protocol&lt;/th&gt;
&lt;th&gt;Token&lt;/th&gt;
&lt;th&gt;TVL (May 2026)&lt;/th&gt;
&lt;th&gt;Backing&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;ether.fi&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;weETH&lt;/td&gt;
&lt;td&gt;~$10B&lt;/td&gt;
&lt;td&gt;EigenLayer restaked ETH&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Renzo&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;ezETH&lt;/td&gt;
&lt;td&gt;~$3B&lt;/td&gt;
&lt;td&gt;EigenLayer + Symbiotic&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Kelp DAO&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;rsETH&lt;/td&gt;
&lt;td&gt;~$1.5B&lt;/td&gt;
&lt;td&gt;EigenLayer&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Puffer&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;pufETH&lt;/td&gt;
&lt;td&gt;~$1B&lt;/td&gt;
&lt;td&gt;EigenLayer + native restaking&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Swell&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;rswETH&lt;/td&gt;
&lt;td&gt;~$800M&lt;/td&gt;
&lt;td&gt;EigenLayer&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Together with smaller LRTs, total LRT TVL exceeds $30B. The market is liquid enough for atomic arbitrage to clear profitably but fragmented enough that pricing inefficiencies persist for seconds-to-minutes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Where The Spread Actually Comes From
&lt;/h2&gt;

&lt;p&gt;LRT peg drift has predictable causes:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. Yield reset events
&lt;/h3&gt;

&lt;p&gt;LRTs distribute restaking yield periodically. The moment before/after a yield update, the LRT trades at a slightly stale price vs. the new NAV. Arb closes the gap.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Large mint/redemption flows
&lt;/h3&gt;

&lt;p&gt;A whale minting $100M worth of ezETH compresses the price marginally vs ETH on Curve. The next 30 seconds offer arb back to par.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Cross-DEX route congestion
&lt;/h3&gt;

&lt;p&gt;weETH/ETH price on Curve may diverge from the same pair on Balancer or Uniswap V3 during gas-fee spikes. Atomic bundles capture the cross-venue spread.&lt;/p&gt;

&lt;h3&gt;
  
  
  4. Sentiment-driven depegs
&lt;/h3&gt;

&lt;p&gt;Negative news on EigenLayer or a specific AVS triggers panic selling of one LRT. The depeg can be 1-3% briefly. &lt;strong&gt;This is the dangerous one&lt;/strong&gt; — see Risk section.&lt;/p&gt;

&lt;h2&gt;
  
  
  Strategy 1: Cross-DEX Atomic Arbitrage
&lt;/h2&gt;

&lt;p&gt;The bread-and-butter LRT arb. Standard atomic pattern:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Monitor weETH/ETH price across Curve, Uniswap V3, Balancer, Pendle&lt;/li&gt;
&lt;li&gt;When spread &amp;gt; gas + 0.1% threshold, build atomic bundle: buy cheap side, sell expensive side&lt;/li&gt;
&lt;li&gt;Submit through Flashbots private relay&lt;/li&gt;
&lt;li&gt;Capture spread minus gas&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Realistic per-trade profit on weETH/ezETH/rsETH:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quiet hours&lt;/strong&gt;: $5-$50/trade, 10-30 opportunities/day&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Active flow&lt;/strong&gt;: $50-$500/trade, 30-100 opportunities/day&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Reset events&lt;/strong&gt; (oracle/yield updates): $200-$2,000/trade, 2-8 opportunities&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The competitive moat is fast simulation against the actual LRT pool math (Curve's stable invariant, Uni V3's tick math) for the current block state.&lt;/p&gt;

&lt;h2&gt;
  
  
  Strategy 2: LRT-to-LRT Triangular Arbitrage
&lt;/h2&gt;

&lt;p&gt;LRTs don't always move together. When weETH appreciates 0.2% but ezETH stays flat, the implied weETH/ezETH cross-rate diverges from observed market.&lt;/p&gt;

&lt;p&gt;The bundle:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Sell weETH for ETH&lt;/li&gt;
&lt;li&gt;Buy ezETH with ETH&lt;/li&gt;
&lt;li&gt;Sell ezETH for weETH (or original equivalent)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;If the final balance exceeds the starting balance net of fees, the triangle was profitable.&lt;/p&gt;

&lt;h2&gt;
  
  
  Strategy 3: Pendle PT/YT Arbitrage
&lt;/h2&gt;

&lt;p&gt;Pendle splits LRTs into Principal Tokens (PT) and Yield Tokens (YT). Periodic mispricing between PT + YT vs the underlying LRT creates arb:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;weETH price ≠ PT-weETH price + YT-weETH price
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;When the equation breaks, atomic arb between Pendle and Curve closes the gap. Fewer searchers run Pendle-aware bots — better win rates than generic cross-DEX arb.&lt;/p&gt;

&lt;h2&gt;
  
  
  Strategy 4: Redemption Arbitrage (Non-Atomic)
&lt;/h2&gt;

&lt;p&gt;When an LRT trades meaningfully below par for hours:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Buy LRT at discount on DEX (e.g. ezETH at 0.985 ETH)&lt;/li&gt;
&lt;li&gt;Queue redemption with the protocol&lt;/li&gt;
&lt;li&gt;Wait 1-7 days for withdrawal&lt;/li&gt;
&lt;li&gt;Receive ETH at par&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;Risks during the holding period:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;ETH price moves (USD-denominated profit may differ)&lt;/li&gt;
&lt;li&gt;LRT could depeg further&lt;/li&gt;
&lt;li&gt;Withdrawal queue could extend&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This is a &lt;strong&gt;portfolio strategy, not a searcher strategy&lt;/strong&gt;. Only viable when the depeg is large enough (&amp;gt;0.5%) to clear protocol risk premium.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 1: AVS Slashing Cascade
&lt;/h2&gt;

&lt;p&gt;The biggest unique LRT risk: an AVS on EigenLayer gets slashed, the loss propagates to the underlying restaked ETH, and the LRT's NAV drops. Multiple LRTs are exposed to the same set of AVSs.&lt;/p&gt;

&lt;p&gt;If you're holding LRT inventory for redemption arb during a slashing event, your "depeg arbitrage" turns into "buying the dip on a permanent capital impairment."&lt;/p&gt;

&lt;p&gt;Defense:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Never hold a single LRT &amp;gt;30% of working capital&lt;/li&gt;
&lt;li&gt;Monitor AVS slashing events on EigenLayer's dashboards&lt;/li&gt;
&lt;li&gt;Pause LRT arbitrage during major slashing events for at least 72 hours&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Risk 2: Smart Contract Risk Stack
&lt;/h2&gt;

&lt;p&gt;LRT arb stacks multiple contract risks: the LRT protocol, the underlying EigenLayer/Symbiotic layer, the DEX pool, and any router contract in the path. &lt;strong&gt;Whitelist LRTs whose protocols have been audited and are &amp;gt;6 months in production.&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 3: Liquidity Concentration
&lt;/h2&gt;

&lt;p&gt;LRT liquidity is shallower than ETH/USDC. The arb size cap is usually $50k-$200k per trade — beyond that, slippage eats the spread.&lt;/p&gt;

&lt;h2&gt;
  
  
  Realistic Returns
&lt;/h2&gt;

&lt;p&gt;Indicative early-2026 monthly returns for a solo searcher with $50k working capital:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Quiet month&lt;/strong&gt;: 1.5-3%&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Active month&lt;/strong&gt; (multiple yield resets, normal flows): 4-9%&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Volatility-spike month&lt;/strong&gt;: 6-15% gross, with larger drawdown tail risk&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The strategy is in a sweet spot in 2026: large enough TVL to support real size, competitive but not saturated.&lt;/p&gt;

&lt;h2&gt;
  
  
  Infrastructure Requirements
&lt;/h2&gt;

&lt;p&gt;To compete in LRT arbitrage:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Low-latency mainnet RPC&lt;/strong&gt; with mempool access&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Fork simulator&lt;/strong&gt; that handles Curve stable invariant + Uni V3 tick math + Pendle's implied-yield AMM&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Per-protocol monitoring&lt;/strong&gt;: AVS slashing dashboards, withdrawal queue depths, yield rebalance schedules&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Flashbots private relay&lt;/strong&gt; for bundle submission&lt;/li&gt;
&lt;/ol&gt;




&lt;p&gt;&lt;em&gt;Full post + FAQ at &lt;a href="https://ai-frb.com/blog/liquid-restaking-token-arbitrage-lrt-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;. FRB Agent is a non-custodial desktop MEV agent for Windows — &lt;a href="https://ai-frb.com/download" rel="noopener noreferrer"&gt;download free&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>cryptocurrency</category>
      <category>ethereum</category>
      <category>web3</category>
    </item>
    <item>
      <title>How to Detect MEV in Your Trades 2026: A Practical Guide</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Sat, 13 Jun 2026 02:01:28 +0000</pubDate>
      <link>https://dev.to/frb_research/how-to-detect-mev-in-your-trades-2026-a-practical-guide-1okd</link>
      <guid>https://dev.to/frb_research/how-to-detect-mev-in-your-trades-2026-a-practical-guide-1okd</guid>
      <description>&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — To detect MEV against your own trades in 2026, follow a four-step forensic process: &lt;strong&gt;(1) pull the transaction receipt&lt;/strong&gt; and identify the block; &lt;strong&gt;(2) inspect adjacent transactions&lt;/strong&gt; in the same block for matching pool/matching tokens; &lt;strong&gt;(3) compare your effective price&lt;/strong&gt; to the pool's pre-trade quote; &lt;strong&gt;(4) attribute the slippage&lt;/strong&gt; to MEV (sandwich/back-run) vs natural price impact vs ordering luck. Tools that make this fast: &lt;strong&gt;EigenPhi&lt;/strong&gt;, &lt;strong&gt;MEV-Inspect-py&lt;/strong&gt;, &lt;strong&gt;Etherscan's MEV labels&lt;/strong&gt;, and &lt;strong&gt;Libmev&lt;/strong&gt;. For Solana: &lt;strong&gt;Eclipse&lt;/strong&gt; and &lt;strong&gt;Jito-Explorer&lt;/strong&gt;. Most retail traders discover they're being sandwiched on 5–20% of their swaps once they actually look.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Bother Detecting
&lt;/h2&gt;

&lt;p&gt;Three reasons:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Routing changes&lt;/strong&gt;. If Aggregator A leaks 12 bps per swap on average and Aggregator B leaks 3 bps, you switch.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Behavioral changes&lt;/strong&gt;. If you're being sandwiched mostly on trades &amp;gt; $5,000, you split orders or use a private mempool.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Real loss accounting&lt;/strong&gt;. MEV is a real, quantifiable trading cost. Most people underestimate it because they never measure it.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Step 1: Pull The Transaction Receipt
&lt;/h2&gt;

&lt;p&gt;Find your trade's transaction hash. From the receipt, you need:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The &lt;strong&gt;block number&lt;/strong&gt;
&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;transaction index&lt;/strong&gt; within the block (your position in the ordering)&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;pool address&lt;/strong&gt; you swapped against&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;token amounts&lt;/strong&gt; you swapped (in and out)&lt;/li&gt;
&lt;li&gt;The &lt;strong&gt;gas paid&lt;/strong&gt; and the &lt;strong&gt;priority fee paid&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;On Etherscan, all of this is on the transaction detail page. Programmatically: &lt;code&gt;eth_getTransactionByHash&lt;/code&gt; + &lt;code&gt;eth_getTransactionReceipt&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 2: Inspect Adjacent Transactions
&lt;/h2&gt;

&lt;p&gt;Look at the transactions in the same block, ordered by index. Two patterns indicate MEV:&lt;/p&gt;

&lt;h3&gt;
  
  
  Pattern A: Sandwich (Front-Run / Back-Run)
&lt;/h3&gt;

&lt;p&gt;If you see:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Transaction (your index - 1)&lt;/strong&gt;: A swap on the &lt;strong&gt;same pool&lt;/strong&gt; in the &lt;strong&gt;same direction&lt;/strong&gt; as yours&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Transaction (your index + 1)&lt;/strong&gt;: A swap on the &lt;strong&gt;same pool&lt;/strong&gt; in the &lt;strong&gt;opposite direction&lt;/strong&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;That's a classic sandwich. The front-run pushed the price up before your fill, your trade filled at the worse price, and the back-run captured the imbalance.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pattern B: Back-Run (No Front-Run)
&lt;/h3&gt;

&lt;p&gt;If you see no front-run, but a same-pool opposite-direction swap immediately after yours — that's a pure back-run. Less damaging to you (doesn't change your fill price), but indicates your trade was visible in the mempool.&lt;/p&gt;

&lt;h3&gt;
  
  
  Pattern C: JIT Liquidity
&lt;/h3&gt;

&lt;p&gt;If you see &lt;code&gt;IncreaseLiquidity&lt;/code&gt; then &lt;code&gt;DecreaseLiquidity&lt;/code&gt; on the same pool with very small intervening swap count — that's JIT (just-in-time) liquidity. A searcher added liquidity, captured your trade's fee, and removed it.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 3: Compare Effective Price To Pool Quote
&lt;/h2&gt;

&lt;p&gt;Independent of pattern detection, do a price comparison:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Note the &lt;strong&gt;pool reserves&lt;/strong&gt; (or tick state for V3) at block N-1&lt;/li&gt;
&lt;li&gt;Compute the &lt;strong&gt;expected output&lt;/strong&gt; of your trade against those reserves&lt;/li&gt;
&lt;li&gt;Compare to your &lt;strong&gt;actual output&lt;/strong&gt; from the receipt&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Formula:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight python"&gt;&lt;code&gt;&lt;span class="n"&gt;mev_loss_bps&lt;/span&gt; &lt;span class="o"&gt;=&lt;/span&gt; &lt;span class="p"&gt;(&lt;/span&gt;&lt;span class="n"&gt;expected_output&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;actual_output&lt;/span&gt;&lt;span class="p"&gt;)&lt;/span&gt; &lt;span class="o"&gt;/&lt;/span&gt; &lt;span class="n"&gt;expected_output&lt;/span&gt; &lt;span class="o"&gt;*&lt;/span&gt; &lt;span class="mi"&gt;10000&lt;/span&gt; &lt;span class="o"&gt;-&lt;/span&gt; &lt;span class="n"&gt;expected_price_impact_bps&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If &lt;code&gt;mev_loss_bps &amp;gt; 5–10&lt;/code&gt; and you can match the front-run/back-run pattern, you've been sandwiched.&lt;/p&gt;

&lt;h2&gt;
  
  
  Step 4: Attribute The Slippage
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Source&lt;/th&gt;
&lt;th&gt;Detection&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Natural price impact&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Predicted by AMM math from your trade size&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;Other-trade ordering&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Another (non-malicious) user filled before you&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;MEV (sandwich / back-run / JIT)&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Matches the patterns in step 2&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;Most real-world slippage on retail swaps is a mix. The MEV component is typically 3–25 bps for small public-mempool swaps, larger for big swaps and long-tail tokens.&lt;/p&gt;

&lt;h2&gt;
  
  
  Tools That Do The Heavy Lifting
&lt;/h2&gt;

&lt;h3&gt;
  
  
  EigenPhi
&lt;/h3&gt;

&lt;p&gt;Best-in-class MEV analytics. Paste a transaction hash → labeled breakdown: sandwich front-run, victim, back-run, profit captured. Works for Ethereum mainnet, several L2s, and BNB Chain.&lt;/p&gt;

&lt;h3&gt;
  
  
  MEV-Inspect-py (Flashbots)
&lt;/h3&gt;

&lt;p&gt;Open-source library that classifies MEV-extraction patterns from block data. Best for running your own analysis on your trading history. Requires a full node or archive RPC.&lt;/p&gt;

&lt;h3&gt;
  
  
  Etherscan's MEV labels
&lt;/h3&gt;

&lt;p&gt;Etherscan tags known MEV bot addresses and shows MEV-extracted value in the block detail view. Quick and accessible.&lt;/p&gt;

&lt;h3&gt;
  
  
  Libmev
&lt;/h3&gt;

&lt;p&gt;Open-source library and dashboard. Good for self-hosted analysts who want a Web UI without paying for EigenPhi's enterprise tier.&lt;/p&gt;

&lt;h3&gt;
  
  
  Solana-specific: Jito-Explorer + Eclipse
&lt;/h3&gt;

&lt;p&gt;For Solana trades, Jito's bundle explorer shows tipped transactions and bundle composition. Eclipse offers MEV analytics with sandwich detection on major DEX programs.&lt;/p&gt;

&lt;h2&gt;
  
  
  Quick-Look Workflow (5 minutes)
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;Copy your transaction hash&lt;/li&gt;
&lt;li&gt;Paste into EigenPhi (free tier covers most retail-size trades)&lt;/li&gt;
&lt;li&gt;Look at the "Victim Loss" field — that's your MEV cost in USD&lt;/li&gt;
&lt;li&gt;If significant, check whether the trade went through a public mempool. If yes, your routing leaked.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  What Detection Tells You About Routing
&lt;/h2&gt;

&lt;p&gt;Patterns you'll see repeatedly:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Public-mempool swaps on long-tail tokens&lt;/strong&gt;: MEV leakage ranges 15–80 bps. Routing through aggregators with private orderflow (1inch Fusion, CoW, Paraswap Delta) typically cuts this to &amp;lt;3 bps.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Large swaps on blue-chip pairs&lt;/strong&gt;: Even on major pairs, swaps above ~$50k consistently leak 5–20 bps to back-running.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Small swaps&lt;/strong&gt;: For &amp;lt;$500 trades, gas costs dominate and MEV loss is usually &amp;lt;$0.50.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  What To Do With The Data
&lt;/h2&gt;

&lt;h3&gt;
  
  
  Action 1: Change Routing
&lt;/h3&gt;

&lt;p&gt;Switch to a private-orderflow aggregator (1inch Fusion, CoW, Paraswap Delta) or submit through a private relay.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action 2: Use Private Mempool
&lt;/h3&gt;

&lt;p&gt;For sniper-style trades, submit through Flashbots Protect, MEV-Share, or your chain's equivalent.&lt;/p&gt;

&lt;h3&gt;
  
  
  Action 3: Split And Time Trades
&lt;/h3&gt;

&lt;p&gt;For large trades, split into chunks below the threshold where MEV becomes cost-effective for searchers (~$5,000-$10,000 on mainnet).&lt;/p&gt;

&lt;h2&gt;
  
  
  Bottom Line
&lt;/h2&gt;

&lt;p&gt;If you've never measured MEV against your own trades, you're almost certainly losing more than you think. The tools take 5 minutes to learn. Most retail traders cut their MEV exposure by 60–90% within a month of starting to measure — the act of looking changes the routing decisions.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Full post + FAQ at &lt;a href="https://ai-frb.com/blog/how-to-detect-mev-in-your-trades-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;. FRB Agent is a non-custodial desktop MEV agent for Windows — &lt;a href="https://ai-frb.com/download" rel="noopener noreferrer"&gt;download free&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>analytics</category>
      <category>blockchain</category>
      <category>tutorial</category>
      <category>web3</category>
    </item>
    <item>
      <title>EIP-7702 MEV 2026: How Account Abstraction Reshapes Searcher Strategy</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Mon, 08 Jun 2026 07:45:22 +0000</pubDate>
      <link>https://dev.to/frb_research/eip-7702-mev-2026-how-account-abstraction-reshapes-searcher-strategy-5a5o</link>
      <guid>https://dev.to/frb_research/eip-7702-mev-2026-how-account-abstraction-reshapes-searcher-strategy-5a5o</guid>
      <description>&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — EIP-7702 lets any EOA temporarily attach a smart-contract code path for a single transaction (a "delegation"). For MEV in 2026, this means three structural shifts: &lt;strong&gt;multi-action transactions from regular wallets&lt;/strong&gt; (batched approve+swap+claim, harder to front-run), &lt;strong&gt;sponsored bundles&lt;/strong&gt; where a paymaster covers gas (changing the inclusion economics of priority fees), and &lt;strong&gt;new attack surface&lt;/strong&gt; where malicious delegation targets can drain wallets if users sign blindly. Searchers must update their mempool parsers, MEV-share subscriptions, and revert guards to recognize 7702-style transactions, which look different on the wire than legacy EOA calls.&lt;/p&gt;

&lt;h2&gt;
  
  
  What 7702 Actually Does
&lt;/h2&gt;

&lt;p&gt;In the pre-7702 world, an Ethereum transaction was either:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;EOA-originated&lt;/strong&gt;: A normal user wallet calls a contract directly. One target address. One value transfer or one method call per transaction.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Contract-originated&lt;/strong&gt; (smart wallet / 4337): A smart-contract wallet (Safe, Argent, Kernel, Biconomy) can batch many operations into one transaction, but needs to be deployed first.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;EIP-7702 adds a third path: an EOA can include a &lt;code&gt;SetCodeListItem&lt;/code&gt; in the transaction signaling "for the duration of this transaction, treat my account as if it had this contract's code." After execution, the EOA reverts to being a normal externally-owned account.&lt;/p&gt;

&lt;p&gt;The practical consequence: &lt;strong&gt;batching, gas sponsorship, and session keys without ever deploying a smart wallet&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Searchers Care
&lt;/h2&gt;

&lt;p&gt;Three concrete changes to the searcher view of the network:&lt;/p&gt;

&lt;h3&gt;
  
  
  1. The mempool now contains "multi-action" transactions from regular addresses
&lt;/h3&gt;

&lt;p&gt;Before 7702, when you saw a swap from &lt;code&gt;0xUser&lt;/code&gt;, you could assume it was a single swap. After 7702, the same address could be executing an &lt;code&gt;approve → swap → unwrap → bridge&lt;/code&gt; sequence inside one transaction. Your sandwich-and-arb logic needs to parse the &lt;strong&gt;delegated code's calldata&lt;/strong&gt;, not just the top-level method.&lt;/p&gt;

&lt;p&gt;If you index transactions by &lt;code&gt;to&lt;/code&gt; address, you'll miss 7702 transactions because the &lt;code&gt;to&lt;/code&gt; is the user's own EOA — the code runs from a delegation pointer elsewhere. Update your indexer to detect the delegation flag and decode the inner operations.&lt;/p&gt;

&lt;h3&gt;
  
  
  2. Sponsored bundles change the priority-fee market
&lt;/h3&gt;

&lt;p&gt;A 7702 transaction can include a paymaster signature where a third party pays gas. This means a swap with &lt;strong&gt;zero priority fee&lt;/strong&gt; can still be a valuable inclusion candidate if the paymaster pays the builder a tip out-of-band.&lt;/p&gt;

&lt;p&gt;For searchers competing for block space, this means &lt;strong&gt;priority fee alone is no longer a reliable ranking signal&lt;/strong&gt;. Sophisticated builders are already factoring in paymaster reputation and side payments. If your bot only watches base+priority fees, you'll mis-rank profitable 7702 bundles.&lt;/p&gt;

&lt;h3&gt;
  
  
  3. Session-key transactions enable "patient" front-runs
&lt;/h3&gt;

&lt;p&gt;A 7702 delegation can grant a session key that's valid for many blocks. This enables a new pattern: a user pre-signs a swap "to be executed when conditions X are met," and a searcher submits it at the optimal moment. The signature itself sits in a private mempool or on-chain.&lt;/p&gt;

&lt;p&gt;For MEV, this means the &lt;strong&gt;front-runnable transaction may be visible long before it's submitted&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  New Attack Surface: Delegation Drainers
&lt;/h2&gt;

&lt;p&gt;The biggest 7702-specific risk is users signing a delegation to a malicious contract. A drainer can publish a contract whose code, when delegated to by the user, transfers all approved tokens to the attacker. The user thinks they're signing "a transaction" — but they're signing "be this contract for a block."&lt;/p&gt;

&lt;p&gt;If you operate any frontend that requests 7702 signatures:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Show users the delegation target plainly&lt;/strong&gt; — never bury it in a hex blob.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Limit the delegation duration&lt;/strong&gt; to a single transaction or a small block window.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Whitelist delegation targets&lt;/strong&gt; in the wallet UX.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The same logic applies for searchers: a 7702 transaction with an unknown delegation target is high-risk. Treat unknown delegation contracts the same way you'd treat an unverified token — skip the trade.&lt;/p&gt;

&lt;h2&gt;
  
  
  Sandwich Attacks on 7702 Transactions
&lt;/h2&gt;

&lt;p&gt;A 7702 transaction that batches &lt;code&gt;approve → swap&lt;/code&gt; is &lt;strong&gt;not safer&lt;/strong&gt; from sandwich attacks than a standalone swap. Atomic batching prevents the classic "front-run-the-approve-then-front-run-the-swap" pattern, but a single front-back wrap around the entire batched transaction still works at the price-impact level.&lt;/p&gt;

&lt;p&gt;What 7702 does change:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Slippage caps&lt;/strong&gt; are now per-batch instead of per-swap. A 7702 transaction can include conditional logic ("revert if final balance &amp;lt; X") that legacy EOAs couldn't enforce atomically.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;MEV-share private orderflow&lt;/strong&gt; integrations now have a richer signal — instead of opaque calldata, the relay can share "user wants this batch of operations" with searchers.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  How 7702 Compares to ERC-4337
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimension&lt;/th&gt;
&lt;th&gt;ERC-4337 (smart accounts)&lt;/th&gt;
&lt;th&gt;EIP-7702 (delegation)&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Deployment&lt;/td&gt;
&lt;td&gt;Requires wallet contract deploy&lt;/td&gt;
&lt;td&gt;No deploy — EOA delegates&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Cost overhead&lt;/td&gt;
&lt;td&gt;~70k gas extra per UserOp&lt;/td&gt;
&lt;td&gt;~5k gas per delegation&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Batching&lt;/td&gt;
&lt;td&gt;Native via UserOperation&lt;/td&gt;
&lt;td&gt;Via delegated code&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Session keys&lt;/td&gt;
&lt;td&gt;Yes (validator-defined)&lt;/td&gt;
&lt;td&gt;Yes (delegation-defined)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sponsorship&lt;/td&gt;
&lt;td&gt;Via Paymaster&lt;/td&gt;
&lt;td&gt;Via paymaster signature&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Mempool format&lt;/td&gt;
&lt;td&gt;Alt-mempool (4337 bundlers)&lt;/td&gt;
&lt;td&gt;Standard mempool&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Wallet UX migration&lt;/td&gt;
&lt;td&gt;New wallet required&lt;/td&gt;
&lt;td&gt;Existing EOA reused&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;4337 and 7702 are complementary. 4337 stays for users who want permanent smart wallets; 7702 wins for legacy EOA users who want occasional smart-contract behavior without migrating.&lt;/p&gt;

&lt;p&gt;For MEV bots, &lt;strong&gt;both must be indexed&lt;/strong&gt; in 2026. A searcher ignoring 7702 traffic will miss roughly 8–15% of inclusion-worthy transactions on mainnet by mid-2026.&lt;/p&gt;

&lt;h2&gt;
  
  
  Updating Your Searcher Stack For 7702
&lt;/h2&gt;

&lt;p&gt;Practical checklist:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Mempool decoder&lt;/strong&gt;: Add &lt;code&gt;type=0x04&lt;/code&gt; (the 7702 transaction type) parsing. Decode the &lt;code&gt;SetCodeListItem&lt;/code&gt; array.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Calldata parser&lt;/strong&gt;: When the delegation target is a known multicall contract, recursively decode the inner calls.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Profitability model&lt;/strong&gt;: Account for sponsored gas — the priority fee may be zero but the side payment to the builder makes the bundle valuable.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Revert guard&lt;/strong&gt;: If your bundle sandwich-arbs a 7702 transaction, verify the slippage condition inside the user's batched logic holds at your simulated final state.&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Delegation target whitelist&lt;/strong&gt;: Maintain a list of trusted delegation contracts. Skip transactions delegating to unknown targets.&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Bottom Line
&lt;/h2&gt;

&lt;p&gt;EIP-7702 isn't a tactical tweak — it's a structural change to what transactions look like on Ethereum. Bots written against pre-7702 mempool assumptions will progressively underperform as 7702 adoption grows. The window to retool simulation, parsing, and ranking logic is early-to-mid 2026.&lt;/p&gt;

&lt;p&gt;The flip side: generic arb bots will need months to adapt. Searchers who upgrade in the first quarter will capture outsized share of 7702-specific opportunities.&lt;/p&gt;




&lt;p&gt;&lt;em&gt;Full post + FAQ at &lt;a href="https://ai-frb.com/blog/eip-7702-account-abstraction-mev-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;. FRB Agent is a non-custodial desktop MEV agent for Windows — &lt;a href="https://ai-frb.com/download" rel="noopener noreferrer"&gt;download free&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>ethereum</category>
      <category>security</category>
      <category>web3</category>
    </item>
    <item>
      <title>Uniswap V4 Hooks MEV 2026: Searcher Opportunities and Risks</title>
      <dc:creator>FRB Research</dc:creator>
      <pubDate>Sat, 16 May 2026 01:07:44 +0000</pubDate>
      <link>https://dev.to/frb_research/uniswap-v4-hooks-mev-2026-searcher-opportunities-and-risks-1ff7</link>
      <guid>https://dev.to/frb_research/uniswap-v4-hooks-mev-2026-searcher-opportunities-and-risks-1ff7</guid>
      <description>&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;Cross-posted from &lt;a href="https://ai-frb.com/blog/uniswap-v4-hooks-mev-2026" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;&lt;/strong&gt; — the canonical version lives on the FRB Research blog. This DEV.to mirror exists so the dev community can engage in comments.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;strong&gt;Answer first&lt;/strong&gt; — Uniswap V4 hooks turn each pool into a programmable contract with custom logic at swap, modify-liquidity, and donate boundaries. For searchers, this creates three new opportunity categories — &lt;strong&gt;custom-curve arbitrage&lt;/strong&gt; between hook-altered prices and reference AMMs, &lt;strong&gt;dynamic-fee front-of-block races&lt;/strong&gt; where hook fee logic can be predicted, and &lt;strong&gt;JIT-style liquidity hooks&lt;/strong&gt; that legally extract value via beforeSwap/afterSwap callbacks. It also introduces new risks: hook reentrancy traps, asymmetric gas costs, and pool-specific simulation requirements that break "universal" arb bots designed for V2/V3 invariants.&lt;/p&gt;

&lt;h2&gt;
  
  
  What Hooks Actually Change
&lt;/h2&gt;

&lt;p&gt;A V4 pool isn't just &lt;code&gt;x * y = k&lt;/code&gt; with a fee tier. It's a &lt;code&gt;PoolKey&lt;/code&gt; plus a deployed &lt;code&gt;IHooks&lt;/code&gt; contract that can interpose logic at up to ten callback points:&lt;/p&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Callback&lt;/th&gt;
&lt;th&gt;When It Fires&lt;/th&gt;
&lt;th&gt;MEV Relevance&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeInitialize&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pool creation&lt;/td&gt;
&lt;td&gt;Low (one-shot)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterInitialize&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Pool creation&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeAddLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;LP deposit&lt;/td&gt;
&lt;td&gt;Medium — gates JIT&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterAddLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;After deposit&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeRemoveLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;LP withdraw&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterRemoveLiquidity&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;After withdraw&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;code&gt;beforeSwap&lt;/code&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;Before swap math&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;High — fee/route logic&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;strong&gt;&lt;code&gt;afterSwap&lt;/code&gt;&lt;/strong&gt;&lt;/td&gt;
&lt;td&gt;After swap math&lt;/td&gt;
&lt;td&gt;&lt;strong&gt;High — donations, rebalancing&lt;/strong&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;beforeDonate&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Donation hook&lt;/td&gt;
&lt;td&gt;Low&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;&lt;code&gt;afterDonate&lt;/code&gt;&lt;/td&gt;
&lt;td&gt;Donation hook&lt;/td&gt;
&lt;td&gt;Medium&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The two that matter for searchers are &lt;code&gt;beforeSwap&lt;/code&gt; and &lt;code&gt;afterSwap&lt;/code&gt;. These let a pool implement dynamic fees, custom pricing curves, or per-swap rebalancing — all of which create exploitable asymmetries vs. plain V3 quotes.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 1: Custom-Curve Arbitrage
&lt;/h2&gt;

&lt;p&gt;V4 hooks can replace the constant-product price calculation entirely. A pool might use a TWAMM curve, a constant-sum stable curve, or a fully oracle-priced curve. When that pool's effective price deviates from the rest of the market, an arb opportunity opens.&lt;/p&gt;

&lt;p&gt;The constraint: &lt;strong&gt;you cannot price V4 hook pools off-chain using V3 math&lt;/strong&gt;. Every simulation must invoke the hook's &lt;code&gt;beforeSwap&lt;/code&gt; to get the real quote. This means:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Discover the hook contract behind each pool you care about&lt;/li&gt;
&lt;li&gt; Either decompile the hook logic or simulate via &lt;code&gt;eth_call&lt;/code&gt; on each tick&lt;/li&gt;
&lt;li&gt; Add the gas overhead of the hook callback (5k–80k extra gas) to your profit threshold&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Realistic per-trade arb sizes on hook-altered pools in early 2026: $30–$2,000, with much higher variance than V3. Pools with &lt;strong&gt;untested custom curves&lt;/strong&gt; tend to mispriced for hours before anyone notices, then close once one good searcher writes the simulator.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 2: Dynamic Fee Races
&lt;/h2&gt;

&lt;p&gt;A common hook pattern is &lt;strong&gt;volatility-adjusted dynamic fees&lt;/strong&gt; — the hook reads a volatility oracle in &lt;code&gt;beforeSwap&lt;/code&gt; and raises fees during turbulence. This creates two MEV plays:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Play A — front-run the fee hike.&lt;/strong&gt; If the oracle is on-chain and you can predict its next update (e.g. Uniswap's own observation queue), you can route a large swap one block before the hike at the lower fee.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Play B — back-run the fee normalization.&lt;/strong&gt; When volatility drops and the hook lowers fees, the first trade after the fee change captures unusual elasticity. Watch the oracle's "decay" function and queue a bundle that fires immediately after.&lt;/p&gt;

&lt;p&gt;Both require &lt;strong&gt;per-pool fee-prediction logic&lt;/strong&gt;. Generic bots that assume a static 5/30/100 bps tier will mis-price these pools by 10–50 bps consistently. See &lt;a href="https://dev.to/blog/how-fast-mev-bots-execute"&gt;How Fast MEV Bots Execute&lt;/a&gt; for the latency budget this implies.&lt;/p&gt;

&lt;h2&gt;
  
  
  Opportunity 3: JIT-via-Hook Liquidity
&lt;/h2&gt;

&lt;p&gt;V3 JIT (just-in-time) liquidity required searchers to wrap a swap with mint and burn in the same block. V4 hooks let a pool &lt;strong&gt;internalize JIT&lt;/strong&gt; — the hook itself adds and removes liquidity around incoming swaps, capturing the LP fees.&lt;/p&gt;

&lt;p&gt;For an external searcher, this changes the strategy:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Pools with internal JIT hooks&lt;/strong&gt; are harder to JIT-attack — the hook already takes the LP fee. Don't waste gas competing.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Pools without internal JIT&lt;/strong&gt; still allow classic V3-style JIT, but you must check the hook flags first (&lt;code&gt;hasPermission(BEFORE_ADD_LIQUIDITY_FLAG)&lt;/code&gt;) to know whether your mint will trigger extra callbacks.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The on-chain check is one storage read. Skip pools where internal JIT is active and focus capital on the half of the market without it. See &lt;a href="https://dev.to/blog/jit-liquidity-strategy-explained-2026"&gt;JIT Liquidity Strategy Explained&lt;/a&gt; for the underlying mechanic.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 1: Hook Reentrancy Traps
&lt;/h2&gt;

&lt;p&gt;V4's singleton design means all pools share state in the &lt;code&gt;PoolManager&lt;/code&gt;. A malicious hook can call back into the manager during your swap and front-run your own bundle from inside the callback. This isn't theoretical — early V4 audits flagged several hook patterns that allow exactly this.&lt;/p&gt;

&lt;p&gt;Defensive rules:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Whitelist hooks&lt;/strong&gt;. Never swap through a hook contract you haven't verified is on a maintained allowlist (Uniswap Labs publishes one; community lists exist for hooks they don't bless).&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Cap loss per pool&lt;/strong&gt;. Per-pool max-loss limits in your bundle's revert guard catch hook drain attempts.&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Gas-bomb detection&lt;/strong&gt;. If a hook's &lt;code&gt;beforeSwap&lt;/code&gt; consumes &amp;gt;200k gas in simulation, treat it as hostile and exclude the pool.&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Risk 2: Asymmetric Gas Costs
&lt;/h2&gt;

&lt;p&gt;Hook callbacks make gas cost a function of the pool, not the swap size. A simple swap through a complex hook can cost 250k gas; the same swap through a no-hook pool costs 95k. If your arb model assumes uniform gas, your "profitable" trades will lose money on hook-heavy paths.&lt;/p&gt;

&lt;p&gt;Track per-pool gas cost over a rolling window of executed swaps. Update your profitability threshold per pool, not per chain. The bots that survive 2026 V4 trading will have &lt;strong&gt;per-pool unit economics&lt;/strong&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Risk 3: Simulation Drift
&lt;/h2&gt;

&lt;p&gt;The biggest operational risk: your off-chain simulator can drift from on-chain reality if a hook upgrades. Some hooks are upgradeable proxies. A silent upgrade can change the pricing curve mid-day and your bot will keep submitting bundles based on stale logic.&lt;/p&gt;

&lt;p&gt;Mitigation:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Subscribe to the hook contract's events for upgrade signals&lt;/li&gt;
&lt;li&gt; Re-simulate every 100 blocks against a recent on-chain swap to detect drift&lt;/li&gt;
&lt;li&gt; Auto-pause any pool whose simulator-vs-actual delta exceeds 25 bps for three consecutive trades&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  How V4 Hooks Compare With V3 MEV
&lt;/h2&gt;

&lt;div class="table-wrapper-paragraph"&gt;&lt;table&gt;
&lt;thead&gt;
&lt;tr&gt;
&lt;th&gt;Dimension&lt;/th&gt;
&lt;th&gt;Uniswap V3&lt;/th&gt;
&lt;th&gt;Uniswap V4 + Hooks&lt;/th&gt;
&lt;/tr&gt;
&lt;/thead&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;Pricing math&lt;/td&gt;
&lt;td&gt;Universal (concentrated liquidity)&lt;/td&gt;
&lt;td&gt;Pool-specific (custom curves)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Fee logic&lt;/td&gt;
&lt;td&gt;Static tiers (1, 5, 30, 100 bps)&lt;/td&gt;
&lt;td&gt;Dynamic per-swap&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Gas cost&lt;/td&gt;
&lt;td&gt;Predictable&lt;/td&gt;
&lt;td&gt;Pool-dependent (95k–280k)&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;JIT viability&lt;/td&gt;
&lt;td&gt;Always&lt;/td&gt;
&lt;td&gt;Depends on hook flags&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Sim complexity&lt;/td&gt;
&lt;td&gt;Off-chain math&lt;/td&gt;
&lt;td&gt;On-chain simulation required&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;Profitable bot type&lt;/td&gt;
&lt;td&gt;Generic invariant solver&lt;/td&gt;
&lt;td&gt;Per-pool specialist&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;&lt;/div&gt;

&lt;p&gt;The shift is from &lt;strong&gt;invariant solvers&lt;/strong&gt; to &lt;strong&gt;per-pool specialists&lt;/strong&gt;. Searchers who tooled up early on hook-aware simulation are extracting outsized share because most existing bots have not adapted.&lt;/p&gt;

&lt;h2&gt;
  
  
  Hook-Aware Bundling Pattern
&lt;/h2&gt;

&lt;p&gt;A robust V4 bundle structure for arb:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt; Static call simulate &lt;code&gt;swap(poolKey, params)&lt;/code&gt; against forked state at current block&lt;/li&gt;
&lt;li&gt; Read hook flags and re-simulate if hook flags include &lt;code&gt;beforeSwap&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt; Compute expected output minus all gas (including callback overhead)&lt;/li&gt;
&lt;li&gt; If profit &amp;gt; threshold, submit bundle through your private relay&lt;/li&gt;
&lt;li&gt; Include a per-pool revert guard checking actual output ≥ 98% of simulated&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The third step — accurate gas inclusion — is where most non-specialist bots lose money on V4. See &lt;a href="https://dev.to/blog/profitability-gas-budget-calculator-guide"&gt;Profitability Gas Budget Calculator&lt;/a&gt; for the calculation framework.&lt;/p&gt;

&lt;h2&gt;
  
  
  What FRB Agent Supports
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://dev.to/download"&gt;FRB Agent&lt;/a&gt; supports Uniswap V4 swaps on Ethereum mainnet, Base, Arbitrum, Optimism, and Polygon through its multi-chain DEX router. The simulation layer auto-detects hook contracts and applies per-pool gas adjustment when building atomic-arbitrage bundles. Hook whitelisting is configurable per chain in the dashboard — the default ships with Uniswap Labs' published hook list and the user can extend it.&lt;/p&gt;

&lt;p&gt;What the agent does not do: &lt;strong&gt;decompile arbitrary unknown hooks&lt;/strong&gt;. If a pool's hook is not on the whitelist, the agent skips it. This is by design — running blind through unverified hooks is the fastest way to lose your inventory to a malicious pool.&lt;/p&gt;

&lt;h2&gt;
  
  
  Realistic Returns On V4 Hook Arb
&lt;/h2&gt;

&lt;p&gt;Indicative early-2026 monthly returns for a $30k inventory solo searcher running V4-hook-aware arb across mainnet + Base + Arbitrum:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;strong&gt;Quiet month&lt;/strong&gt; (low volatility, few new hook pools): 1.5–3% return&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Active month&lt;/strong&gt; (new pools launching, oracle resets): 5–12% return&lt;/li&gt;
&lt;li&gt;  &lt;strong&gt;Volatility spike month&lt;/strong&gt;: highly variable, can be 15–25% or negative&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These are illustrative, not promises. The distribution skews more positive than V3 arb because the &lt;strong&gt;simulator competition is thinner&lt;/strong&gt; — but a single hook-misclassification incident can wipe a month. See &lt;a href="https://dev.to/refund"&gt;the FRB risk disclosure&lt;/a&gt; for the full risk model.&lt;/p&gt;

&lt;h2&gt;
  
  
  Further Reading
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/jit-liquidity-strategy-explained-2026"&gt;JIT Liquidity Strategy Explained 2026&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/how-fast-mev-bots-execute"&gt;How Fast MEV Bots Execute&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/profitability-gas-budget-calculator-guide"&gt;Profitability Gas Budget Calculator Guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/best-private-rpc-ethereum-2026"&gt;Best Private RPC for Ethereum 2026&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;  &lt;a href="https://dev.to/blog/cross-chain-arbitrage-mev-2026"&gt;Cross-Chain Arbitrage MEV 2026&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;




&lt;p&gt;&lt;em&gt;Originally published on the &lt;a href="https://ai-frb.com/blog/uniswap-v4-hooks-mev-2026" rel="noopener noreferrer"&gt;FRB Research blog&lt;/a&gt;. Discuss MEV strategy with the team at &lt;a href="https://ai-frb.com" rel="noopener noreferrer"&gt;ai-frb.com&lt;/a&gt;.&lt;/em&gt;&lt;/p&gt;

</description>
      <category>blockchain</category>
      <category>cryptocurrency</category>
      <category>ethereum</category>
      <category>web3</category>
    </item>
  </channel>
</rss>
