---
title: "Manifesto"
description: "Order-book intelligence for on-chain liquidity."
audience: both
type: explanation
status: live
lang: en
updated: "2026-08-29"
publish: true
---
# Manifesto

This letter explains why we built a new AMM instead of another manager on top of an existing one, and what the Adaptive Inventory Market Maker (AIMM) does differently. It covers the constraints we hit providing liquidity on concentrated-liquidity DEXs, the design space those constraints leave open, and the pricing model AIMM ships in response: a keeper-pushed external mark, a spline depth profile, and coverage-driven inventory skew. The academic and protocol prior art each piece draws on is catalogued in [Foundations](/docs/foundations).

## 1. Origin: why BTR

### 1.1. Where we started

We have **provided liquidity for years**, on order books and on-chain, on top of existing concentrated-liquidity DEX stacks (Uniswap V3/V4, Raydium CLMM, Meteora DLMM, Orca Whirlpools). That work exposed the structural constraint BTR is built around.

### 1.2. The constraint

Managing liquidity on a concentrated-liquidity protocol is not really a pricing job. It is an execution job, and the DEX underneath supplies almost none of the machinery it takes.

The obvious cost is the range: a position earns nothing outside its bounds, so it has to be moved, and every move is a transaction. The costs that actually dominate are the ones each move drags behind it.

- **Rebalancing is not only about ranges.** Capital also has to move *between pools*. Fee tiers are not interchangeable: the same pair at 5 bps and at 30 bps is two different businesses, and which one pays depends on the regime. A quiet tape rewards the tight tier; a moving one rewards the wide tier, because the fee has to cover what the move costs the position. Reading that and acting on it is a standing job of its own.
- **Moving inventory is itself a trade.** Rebalancing means selling one leg to buy another, at size, without paying away the edge being rebalanced toward. That takes real execution: splitting across venues and routing through aggregators, atomic and intent-based alike, then measuring what the fill actually cost. None of it is DEX functionality. It is a trading desk bolted to the side of one.
- **The optimisation is boxed in.** Everything happens inside the tick model. You can choose bounds; you cannot choose how the curve prices between them, and you cannot make the pool quote off anything but its own reserves.
- **The decisions need a price the DEX does not have.** Off-chain rebalancing logic needs a reference that is faster and more transparent than the pool's own state, and faster than general-purpose oracles (Pyth, Chainlink) were built to deliver.

Add it up and the manager is running a market-making operation on a venue that withholds the primitives a market maker needs. That is the part worth naming: **the hard problem is the market making, not the pool**. Pricing, inventory and execution are where the difficulty and the edge live, and a CL DEX leaves all three to whoever shows up, while presenting the result to depositors as passive income.

Uniswap V3 is a good venue for traders and a poor one for liquidity providers, and the two are connected: the design hands the work of being a market maker to the people it treats as passive. V4 does not change that. Hooks add flexibility for whoever writes the hook; for a liquidity provider they add another axis of fragmentation and one more thing to evaluate before depositing.

We could have shipped AIMM as a V4 hook. We decided not to. It would charge traders gas on every swap to reach logic that does not need V4's core, and it would buy compatibility with an architecture whose central assumption, that a pool prices off its own reserves, is the one we set out to replace.

This is why we built **multi-asset pools**: spline-based, inventory-aware, natively single-sided.

A **better DEX design** can enable:
- Dynamic fees computed on-chain from keeper-pushed σ / confidence / staleness (plus inventory skew on mid), fee math is on-chain; mark inputs still arrive via the keeper feed
- Capital efficiency through unified multi-asset pools: stables, LSTs, and volatiles together, serving different user needs (low risk, yield, exposure) with reduced fragmentation
- Native inventory management eliminating rebalance transactions
- Full decentralization without external dependencies

---

## 2. Order books against AMMs

### 2.1. Order books are mature; AMMs are not

Order books are **mature infrastructure**. The dominant narrative, that on-chain CLOBs (dYdX, Hyperliquid, Aster, Lighter) represent DeFi's future, has merit: professional market makers prefer order books, CEXs run on them, and on-chain CLOBs are a natural evolution.

But maturity cuts both ways. Order book mechanics are well-understood, there's less unexplored design space. AMMs, by contrast, remain in their infancy. Concentrated liquidity (2021) was the last major architectural shift. The design space for oracle-aware, inventory-conscious, dynamically-priced AMMs is largely untapped.

### 2.2. Complementary, not competing

"AMM vs. Order Book" is a false dichotomy. Each architecture has structural advantages:

| Market Type | Order Book Strength | AMM Strength |
|-------------|---------------------|--------------|
| **High liquidity assets** (ETH, BTC) | Good | **Can be better** with proper design |
| **Low liquidity assets** (long tail) | Poor (no market makers) | **Excellent** (passive liquidity) |
| **Stablecoins** | Good on CEXs | **Superior** (hyper-concentration around peg, fully automatable) |
| **Yield-bearing assets** (LSTs) | Requires constant-drift spread pricing, active inventory management | **Formalizable** (drift-aware pricing, automated) |
| **Novel assets** | Non-existent (who will quote?) | **Always quoting**, a price exists regardless of liquidity or volatility |

Order books require active market makers willing to quote. No maker interest = no liquidity. This is why the long tail of crypto assets will always need AMMs.

**Two structural advantages AMMs have over CLOBs:**

1. **N-asset pooling**: Order books pair assets 1:1. AMMs can pool N assets together, sharing liquidity across all pairs. This is impossible in current CLOB designs and enables capital efficiency that scales with asset count.

2. **Dynamic depth curves**: volatility-responsive liquidity concentration in an order book requires continuous quote updates across the entire book, at prohibitive infrastructure and gas cost. AMMs encode it natively in the pricing function. Gyroscope's E-CLP demonstrated concentrated elliptical curves; AIMM extends this with volatility-scaled dispersion that widens or tightens the depth curve with market conditions.

### 2.3. The same advances that enable CLOBs make AMMs better

The case for on-chain order books rests on blockchain improvements:
- **Cheap transactions** → market makers can quote/cancel profitably
- **Fast block times** → real-time price discovery
- **Low latency finality** → competitive with CEX execution

The same advances benefit AMMs at least as much:

| Blockchain Improvement | CLOB Benefit | AMM Benefit |
|------------------------|--------------|-------------|
| **Sub-second blocks** | Near real-time quotes | Near real-time keeper-mark pushes → **minimal price lag** |
| **Cheap gas** | Affordable order placement | Affordable dynamic compute **and storage** → volatility tracking, dynamic fees |
| **Low latency finality** | Competitive execution | Block-scoped MEV window shrinks → **organic MEV protection** |
| **High throughput** | More orders per second | Cheaper, more frequent keeper-mark pushes → better price accuracy and a smaller stale-mark window for arbitrageurs to trade against |

**The MEV surface shrinks dramatically on fast chains:**
- Block time drops from 12s → as low as 10ms on the fastest L2s/alt-L1s = **1000× smaller MEV window**
- Arbitrageurs have less time to front-run oracle updates
- Statistical arbitrage becomes harder (price lag approaches zero)
- JIT attacks become unprofitable (must predict sub-second flow)

**Dynamic compute is now viable everywhere:**
- Since early 2025, L1 Ethereum base fees have dropped by more than 90%, making on-chain volatility tracking and dynamic fee computation economically viable, especially with efficient compute and data storage. Swap gas on AIMM is within the same order of magnitude as Uniswap V4 on L2s.
- On modern L2s (Base, Arbitrum) and alt-L1s (Monad, MegaETH, HyperEVM): basically free.

**Fast chains do not only enable CLOBs; they make AMMs competitive with CLOBs**, removing most of the historical AMM weaknesses (lag, static fees, MEV vulnerability). Not all of them, but enough to compete.

### 2.4. Embedding CLOB market-making logic into AMM design

Order books succeeded because they embed market maker psychology:

- **Adaptive strategies**: Widen spreads during volatility
- **Inventory protection**: Quote asymmetrically based on position
- **Risk pricing**: Charge more for adverse conditions

Static AMMs leave adverse-selection management to the LP layer - a trade-off LPs must price themselves. AIMM internalizes it in the curve.

**AIMM embeds CLOB market-making psychology into pool-based architecture:**

| CLOB Market Maker Behavior | AIMM Analog |
|---------------------------|-------------|
| Widen spreads during volatility | Volatility-based fees (vega × σ) |
| Quote asymmetrically based on inventory | Coverage-aware skew pricing (inventory adjusts mid-price) |
| Reduce exposure when overexposed | Inventory skew moves the mid against coverage-worsening flow |
| Adjust aggression based on conditions | Dynamic fees = f(volatility, confidence, staleness) |

### 2.5. The permissionless imperative

Order books require someone to *actively* provide liquidity. This creates centralization risk, market makers can withdraw, coordinate, or be regulated away.

**Permissionless liquidity is DeFi's core innovation.** Any attempt to re-centralize liquidity provision, whether through RFQ systems, solver auctions, or off-chain quote infrastructure, sacrifices what makes DeFi valuable.

AIMM maintains strict permissionlessness:
- **No privileged trading class**: no whitelist, no solver set, no manager lease. Every address trades the same quote, and adverse selection is priced in the fee rather than sold to a curated counterparty.
- **Governance-controlled keeper mark**: the pool quotes off a fresh per-asset mark (deviation-θ + heartbeat) pushed by BTR's own keeper, on a revocable key. See [Oracles](/docs/3-4-oracles).
- **Per-asset reference bands** check each mark against a second BTR-operated attestation of the same pair on a distinct oracle address. This is an *agreement* check, not a peg test: it catches one feed disagreeing with another, and there is no parent-depeg breaker in any form
- **Anyone can provide liquidity and swap** without approval

Most AMM design research in 2025 trends toward centralization: oracle-dictated pricing, whitelisted market makers, MEV auctions. AIMM solves the same problems in a fully decentralized manner. See [Foundations §15](/docs/foundations#15-permissionless-design-philosophy) for the comparison with RFQ/intent protocols.

### 2.6. The transparency thesis

The most effective oracle-referenced market makers in production - the Solana proprietary AMMs (HumidiFi, Obric, SolFi, and peers; see [Foundations §19.5](/docs/foundations#195-propamms-proprietary-oracle-amms-the-solana-frontier)) - are **closed-source and privately operated**. Their quoting methodology, their parameter-update policy, and their on-chain compute-unit optimizations are unpublished; the resulting outperformance accrues primarily to the teams operating them. A legitimate business model, but one with a structural consequence for the people supplying the capital: an LP routing flow to a closed prop AMM has **no visibility into how their capital is priced, what risk it is taking, or why**. The method is the moat, and the method is private.

BTR's position is the opposite, and deliberate: **the pricing engine should be open**. The methodology (mark-centered spline, inventory skew, multi-term spread) and the research it rests on (the oracle-AMM line above) are published in these docs; every parameter that drives live quotes is on-chain state, readable by any address, not an off-chain secret; the contract interfaces are public (ABIs served at `GET /v1/abis/<ContractName>`), so anyone can check the deployed enforcement surface against the published formulas. We would rather compete on a method the community can scrutinize, replicate, and improve than on an opaque one LPs must take on trust.

The trade-off: an open method can be studied by adversaries and copied by competitors (BTR makes no "unforkable" claim; see §9.2). BTR accepts that cost: a published, verifiable method is easier for LPs to price and easier for outside researchers to correct.

---

## 3. The opportunity: AMM design space is still open

Decentralized exchanges processed [$1.3 trillion in spot volume in Q3 2025](https://coinlaw.io/decentralized-exchanges-dex-statistics/), with perpetual derivatives hitting [$1.8 trillion](https://themarketperiodical.com/2025/09/25/spot-and-perps-dexs-see-surge-in-volume-amidst-rise-of-hyperliquid-and-aster/) - an 87% quarterly surge. Yet the architecture powering these markets is unchanged since concentrated liquidity arrived in 2021: concentrated-fee CFMM (Curve) or tick-based CLMM (Uniswap V3).

[Uniswap commands 35-50% of spot DEX volume](https://blockchain.news/news/uniswap-leads-dex-market-august-2025) with $4.5 billion TVL. Every major DEX, Raydium CLMM, LFJ's Liquidity Book, Meteora DLMM, Orca's Whirlpools, runs variations of the same concentrated liquidity model.

Uniswap v4's hooks lay foundations for more advanced AMMs: volatility tracking, dynamic fees, inventory awareness. Uniswap V4 did not invent hooks: Balancer V3 and Algebra Integral (which calls them "Plugins") had them first. And critically, V4 is deliberately infrastructure; default-hook curation is left to integrators.

**Three structural trade-offs remain open in the status quo:**

### 3.1. Static price discovery

Current AMMs derive price directly from reserves through rigid invariant formulas:

| AMM | Invariant | Shape Parameters |
|-----|-----------|------------------|
| **Uniswap v2/v3** | $x \cdot y = k$ | Tick spacing only |
| **Curve v1** | $A n^n \sum x_i + D = D A n^n + \frac{D^{n+1}}{n^n \prod x_i}$ | [Amplification coefficient A](https://docs.curve.finance/cryptoswap-exchange/in-depth/) |
| **Curve v2** | Complex with $K_0$, $K$ | [A + gamma (γ)](https://docs.curve.finance/cryptoswap-exchange/in-depth/) |
| **Gyroscope E-CLP** | Elliptical curve | [α, β bounds; c, s rotation; λ stretch](https://docs.gyro.finance/pools/e-clps) |

These parameters are **static**. Curve's A coefficient and Gyroscope's λ stretch factor do not respond to market volatility, price velocity, or inventory imbalance. They mechanically map reserves → price regardless of market conditions.

### 3.2. Fragmented capital

The explosion of isolated pairs, fee tiers, and hooks has shattered liquidity across thousands of pools. A single token might have:
- 5+ fee tiers on Uniswap (0.01%, 0.05%, 0.3%, 1%, custom)
- Separate pools on each L2/rollup
- Fragmented TVL across hook-enabled variations
- Multiple competing ranges within each pool

Capital efficiency plummets. Traders face worse execution. LPs spread thin across competing pools.

### 3.3. LVR: the largest LP cost center

**Loss-Versus-Rebalancing (LVR)** is the dominant LP cost, accounting for [5-7% of LP liquidity annually](https://docs.cow.fi/cow-amm/concepts/the-problem-of-lvr) - hundreds of millions in aggregate. Research by [Milionis et al.](https://arxiv.org/pdf/2208.06046) established that AMMs systematically trade at worse-than-market prices, creating guaranteed arbitrage profits.

> *"Fees do not sufficiently compensate for arbitrage losses in most of the largest Uniswap liquidity pools, historically, returns from fees have been smaller than losses to arbitrageurs."* -[Measuring Arbitrage Losses and Profitability of AMM Liquidity (2024)](https://arxiv.org/html/2404.05803v1)

LVR accounts for more value extraction than frontrunning and sandwich attacks combined. Yet every major AMM, including Uniswap V4's hook ecosystem, inherits the same exposure: **constant fees and reactive reserves admit one-sided extraction in most regimes**. V4 hooks are an active mitigation surface; AIMM explores a parallel curve-native path - whether the pool uses market price directly from reserves (CLMMs) or TWAP/VWAP derived (like Curve's EMA).

Uniswap v4 and Balancer V3 hooks host active experiments in LVR minimization, volatility-based fees and impermanent-loss hedging.

That design is heavier than necessary for the next generation of AMMs. A lighter, purpose-built AMM with native volatility tracking, dynamic fees, inventory-aware pricing and multi-asset pools is the better long-term direction, and inherits neither the pair-isolation nor the static-invariant constraints of earlier designs.

Hooks remain elegantly extensible, and the DAO may yet deploy Uni V4 hook pools as proxies to BTR's Core instance.

### 3.4. Why passive and concentrated liquidity cannot reliably beat HODL

The deeper motivation for AIMM is a result about the LP position itself: a Uniswap-v3-style concentrated-liquidity LP **cannot reliably beat buy-and-hold, or a constant-mix (50/50) benchmark** - even with optimized ranges, active range-shifting, and well-timed rebalancing. The reason is structural, not tuning:

- **LVR is bound to realized volatility.** The rebalancing rent a CL position pays scales with σ² and is paid whether price moves up or down - the position bleeds it in both directions (Milionis et al. 2022). Concentrating the range raises fee density but raises LVR density in lockstep; the ratio does not improve for free.
- **Fee income is not tied to LVR paid.** Volume varies day to day and there is no mechanism binding fees earned to the toxicity absorbed. A CL position writes an option (gamma) to arbitrageurs and collects fees that are *not guaranteed* to cover the premium. In most of the largest Uniswap pools, historically, they have not ([Measuring Arbitrage Losses and Profitability of AMM Liquidity](https://arxiv.org/html/2404.05803v1), 2024 - the empirical companion to the LVR result quoted in §3.3).
- **Timing cannot close the gap.** Because the loss is symmetric in price direction and the fee stream is exogenous, entry/exit/range timing cannot systematically convert the position into a positive-carry one. This matches the broader oracle-AMM literature (Milionis et al.; Bergault et al.) and our own two-year walk-forward backtests, which find directional CL edge indistinguishable from a random walk out-of-sample.

This is why BTR does not build its DEX on passive or concentrated liquidity provision. AIMM instead **prices the toxicity that CL gives away**: the fresh mark removes the stale-quote LVR channel, the σ-scaled spread charges for the volatility that drives it, and the inventory skew manages the position rather than mechanically rebalancing it.

---

## 4. The evolution: from strict invariants to inventory-first pricing

AIMM does not drop invariants entirely; it loosens the strict relationship between reserves and price. That relationship now lives in the inventory skew, shaped by the asset's liquidity profile, with a symmetric market-aware spread (volatility, feed confidence, keeper-lag staleness) around the inventory-dictated price.

**How AIMM pricing works:**
1. **Mark** = per-asset, read from the contract that asset names: almost always an `IOracle`, with an internal par helper reserved for cash collateral. See [Oracles](/docs/3-4-oracles).
2. **Mid-price** = adjusted based on inventory skew (inventory risk management) along pair-specific liquidity profiles with volatility-scaled dispersion. See [Anchor-Tree Pricing](/docs/1-1-3-anchor-path-pricing).
3. **Spread** = the round-trip fee **width**, symmetric around the mid-price = volatility band + feed-confidence surcharge + keeper-lag staleness surcharge (no directional term). A single swap pays **half** of it, once, on the output; total cost is that half plus price impact plus the coverage toll, and impact is the direction-asymmetric part ([Slippage & Price Impact §1.1](/docs/1-1-5-slippage-price-impact)).

### 4.1. The asset-liability foundation

The first break from invariant-based pricing came from **Platypus Finance** and later **Wombat Exchange**, which pioneered [asset-liability management (ALM)](https://medium.com/platypus-finance/platypuss-asset-liability-management-eli5-92a1ee85b17) for AMMs.

Their innovation: **Coverage Ratio** = Assets / Liabilities

Instead of deriving price from reserve ratios, they track what the pool *owes* LPs (liabilities) separately from what it *holds* (assets), enabling single-sided deposits, natural supply/demand growth per token, and explicit tracking of pool health.

Both Platypus and Wombat demonstrated the viability of the asset-liability model for stableswap at scale, and started working on volatile extensions. In both, coverage ratio remains a slippage modifier only: the pricing mechanism is still constrained by a modified strict invariant bonding all pooled assets together.

> For a deeper analysis of asset-liability mechanics and how AIMM extends them, see [Foundations §3](/docs/foundations#3-asset-liability-management-platypus--wombat).

### 4.2. The PMM lineage (DODO)

**DODO's Proactive Market Maker (PMM)** introduced **oracle-anchored, inventory-aware quote adjustment** for AMMs (an `i` mid-anchor and a `k` slippage coefficient that pushes the mid-price away from the depleted side). Separately, **Platypus** introduced the explicit **coverage-ratio** (`assets / liabilities`) framing as a pool-health metric driving slippage. AIMM's `computeInventorySkew` is **inspired by both intuitions**: it borrows DODO's inventory-aware mid-price shift and Platypus's coverage-ratio framing, but is decoupled from a strict invariant and layered with a spline depth profile and the keeper mark. Avellaneda-Stoikov frames the same idea as a continuous-time optimal-control problem (utility-maximizing reservation price); AIMM is the discrete, on-chain instantiation of that family.

### 4.3. Per-asset mark sources

Each listed asset names the contract its mid comes from: almost always an `IOracle` address (a signed keeper feed, a Chainlink adapter, a vault reader, or a custom discovery contract), with an internal par helper reserved for cash collateral whose honest price is 1.0. Neither path serves an on-chain price EMA. Mode semantics, reference-feed gating and the selection guidance for a listing live in [Oracles](/docs/3-4-oracles).

### 4.4. Consolidated heritage

BTR is an explicit synthesis, not a clean-room invention. Kept facts: asset-liability accounting and coverage ratio from Platypus/Wombat (decoupled from any strict invariant: coverage sets skew, spline sets depth); inventory-aware mid from DODO PMM and Avellaneda-Stoikov (discrete, mark-anchored); singleton multi-asset pool from Balancer/Curve V2/Uniswap V4 (anchor-tree pricing, per-asset inventory); Curve V2 internal price + concentration replaced outright (spline for amplification and $\gamma$, keeper mark for quote, no on-chain price EMA); spline depth curve has no known DeFi AMM precedent. Full attribution: [Foundations §12.1](/docs/foundations#121-component-attribution).

### 4.5. Academic lineage: the oracle-AMM line

The protocol prior art above (DODO, Platypus, Curve, LFJ) shaped the mechanics; the *design intent* comes from a specific academic line, of which AIMM is a concrete on-chain implementation, not an independent invention:

- **Loss-versus-rebalancing (LVR)** - Milionis, Moallemi, Roughgarden, Zhang, *Automated Market Making and Loss-Versus-Rebalancing* (2022, [arXiv:2208.06046](https://arxiv.org/abs/2208.06046)). LVR is the rent a CFMM pays to arbitrageurs for quoting a stale, reserve-derived price; it is bound to realized volatility and is incurred whether or not fees compensate. This is the cost AIMM is built to price rather than give away.
- **Oracle-AMM pricing functions** - Bergault, Bertucci, Bouba and Guéant, *Automated Market Makers Designs beyond Constant Functions* (2022, [arXiv:2212.00336](https://arxiv.org/abs/2212.00336)) and *Price-Aware Automated Market Makers: Models Beyond Brownian Prices* (2024, [arXiv:2405.03496](https://arxiv.org/abs/2405.03496)). This line derives the mean-variance-optimal quotes for an AMM that references an imported mark: markups linear in inventory, a spread that scales with volatility, and liquidity that is not statically fixed. AIMM's shipped pricing forms map directly onto that structure - a **mark-centered spline** (external reference), **linear inventory skew** (the reservation-price markup), a **σ-scaled spread** (the vol-optimal width), and a **σ√τ staleness surcharge** (the lagged-oracle pick-off term).
- **Inventory reservation price** - Avellaneda, Stoikov, *High-frequency trading in a limit order book* (Quantitative Finance 8(3), 2008). The reservation price $r(q) = s - q\gamma\sigma^{2}(T-t)$ - fair value shifted against inventory - is exactly the object AIMM's coverage-driven skew computes on-chain (see §5.3 and [Foundations §2](/docs/foundations#2-inventory-based-market-making-the-avellaneda-stoikov-framework)). Between keeper pushes, the pool reprices along this reservation curve around the frozen mark: inventory *management*, not exogenous price discovery.
- **Adverse selection & the information content of order flow** - Glosten, Milgrom, *Bid, Ask and Transaction Prices in a Specialist Market with Heterogeneously Informed Traders* (Journal of Financial Economics 14(1), 1985, [doi:10.1016/0304-405X(85)90044-3](https://doi.org/10.1016/0304-405X(85)90044-3)). The founding result that a maker quoting to a mix of *informed* and *noise* traders must let the bid-ask reflect the information each trade reveals: inventory-moving flow is, on average, the informed/toxic flow and must pay more than round-tripping noise. This is the basis on which AIMM prices toxicity through the **inventory skew rather than a flat fee**: the skew is a round-trip-neutral soft fee that only informed one-way flow pays (it walks up the reservation curve and the slippage is retained as LP surplus), while a competitive `minFee` floor serves the benign majority. The skew law itself is fixed; what tunes competitive-vs-defensive is the depth curve the skewed mid is traversed against (its `wQ` shape and the live `dispersion / dispRef` scale) and, on a walled leg, `kappaCovBps`. Not a high flat fee. See [Spread & Fees §7.2](/docs/1-1-4-spread-fees#72-inventory-skew-as-a-glosten-milgrom-soft-fee).

On the **protocol** side, the same intent shows up in production oracle DEXs: **Lifinity** (the first Solana oracle DEX, quoting off Pyth), the newer Solana proprietary market-makers (**HumidiFi, Obric, SolFi** and peers) that replace a fixed invariant with an oracle-referenced curve, and on EVM **Swaap v2** (an oracle/RfQ market-making AMM, transparent by whitepaper). These are the competitive frontier for oracle-AMM design; the factual comparison, and why BTR remains competitive on EVM, is in [Foundations §19.5](/docs/foundations#195-propamms-proprietary-oracle-amms-the-solana-frontier).

---

## 5. The solution: AIMM

**AIMM (Adaptive Inventory Market Maker)** extends the liability model with four key innovations:

### 5.1. Mark-centered spline pricing

Price is **decoupled from reserves**: AIMM quotes off a fresh external keeper mark rather than an invariant formula.

1. **External keeper mark**, a fresh per-asset `mark1e18` pushed by BTR's NX-Rates keeper, triggered by a per-asset deviation band θ or a heartbeat; the pool quotes off this mark, so it quotes at truth rather than a lagging average
2. **Single pushed volatility σ**, one realized-vol value sent with the mark, driving dynamic spread adjustment
3. **Preset Spline Curves**: Clamped quartic I-splines (C2 density, monotone by construction) defining liquidity depth at any price point

**EXTERNAL is the default for every launch pool**, including stable-core. The keeper mark drives quoting; tail risk is gated by **self-contained per-asset depeg bands**, each leg's mark held within `refBandBps` of an independent reference feed for the same pair, plus a base-token depeg halt. Stables can trade off peg for extended periods; the mark tracks NX truth, and inventory skew prices microstructure around it.

Optional operator tuning:
- **Tighter depeg bands / heartbeat**: per-asset deviation θ and heartbeat
- **Oracle-integrated extended**: pool-specific opt-ins for institutional/RWA feeds (not the default)

**Liquidity profiles are arbitrarily shapeable:**
- Concentrate liquidity around expected price ranges
- Create asymmetric depth for directional markets
- Update profiles based on multi-timeframe price density analysis

```mermaid
flowchart TB
  subgraph trad [Traditional AMM]
    direction LR
    t1[reserves] --> t2[invariant] --> t3[price]
  end
  subgraph aimm [AIMM]
    direction LR
    a1[keeper mark] --> a2[spline] --> a3[inventory] --> a4[price]
  end
```

> Spline-based liquidity profiles appear to be [novel in DeFi AMM design](/docs/foundations#11-spline-based-liquidity-profiles). For comparison with elliptical (Gyroscope) and parametric curves, see Foundations.

### 5.2. Multi-asset unified pools

AIMM pools contain **any number of tokens** priced through a multi-anchor tree rooted at the base token (`MAX_DEPTH = 4`). Each asset anchors to one parent, which is not required to be the base.

**Important distinction**: swaps do not all path through the base token. Each asset anchors to its correlated parent, so the path between two assets runs up to their **lowest common ancestor** and back down. Two assets can share an ancestor well below the root: `USDT -> USDC -> DAI` never consults the base mark. Accounting is still in the pool's base token (the numeraire), and every anchor chain terminates at the root, which is what makes unified accounting and risk management possible. The practical consequence: a BTC-based or ETH-based pool still quotes stable-to-stable and LST-to-underlying swaps tightly, because those pairs are edges of the tree rather than round trips through an uncorrelated numeraire.

**Why this matters:**
- **O(1) scaling**: pairwise designs (Curve v2 CryptoSwap, Wombat) need N² compute for oracle upkeep, pool configuration and invariant solving; the anchor tree scales linearly. Only two AMM families scale past 10-asset pools: anchor-tree (BTR AIMM) and CCMM/Orbital ([Paradigm's Orbital research](https://www.paradigm.xyz/2024/06/orbital), with a sphere/superellipse invariant; OrbSwap is one implementation). They are **complementary, not competing**: Orbital wins **pegged-only** deployments through intrinsic geometric risk isolation (the sphere drains a depegged asset asymmetrically without needing an oracle), with the Paradigm Orbital paper reporting 15-150× Curve capital efficiency for stables at 0.90-0.99 depeg thresholds; BTR wins **mixed-volatility** baskets (stables + LSTs + majors) where no peg constraint applies and regime-adaptive splines + inventory skew are required. See [Foundations §10](/docs/foundations#10-circularorbital-market-makers) for the sphere invariant and polar-tick mathematics, and [Foundations §19](/docs/foundations#19-amm-landscape) for the full side-by-side comparison.
- **Triangulated quoting**: All assets quote vs anchors, not directly against each other. This reduces mispricing arbitrage surface and provides robustness against market fragmentation and price manipulation.
- **Capital consolidation**: One pool depth serves all pairs, eliminating fragmentation. Correlation between the legs is the precondition rather than a detail: assets that move together see the flow that drains one arrive against another, so the inventory skew that prices an imbalance is also what gets it undone. A roster assembled without that relationship still shares depth, but nets nothing: it accumulates one-sided inventory and ends up holding whatever the market wanted to sell. The tendency is not a guarantee; correlated legs can move together and leave the pool displaced on every leg at once ([Pool Composition](/docs/2-3-pool-composition#why-several-cores-rather-than-one)).

The path between two assets is the unique tree path: up to the lowest common ancestor, then down. Endpoint legs carry full price impact and settle against reserves; interior legs price at mid with inventory skew and carry no impact, since interior reserves never move. Fees, $\sigma$ and confidence compose over every leg. This mirrors FX practice, where a cross settles through the nearest shared vehicle rather than through one global numeraire.

### 5.3. LVR-aware pricing

AIMM does not eliminate LVR. It prices LVR explicitly, in the quoted spread, rather than leaving the cost implicit on LP balance sheets.

**Inventory Skew Adjusts Mid-Price ([Avellaneda-Stoikov Framework](/docs/foundations#2-inventory-based-market-making-the-avellaneda-stoikov-framework))**

When coverage ratio deviates from target, inventory skew shifts the **mid** (reservation price); the spread itself stays **symmetric**:
- Pool accumulating token → mid skews down (both bid and ask shift lower together)
- Pool depleting token → mid skews up (both bid and ask shift higher together)

Inventory skew adjusts the **mid-price**, not the half-spread: the two sides move together.

**Symmetric Multi-Premium Spread**

The spread (symmetric around the mid) is the sum of three independent widths, one band and two surcharges; the derivation and the full parameter list live in [Spread & Fees](/docs/1-1-4-spread-fees).

| Premium | Formula | Purpose |
|--------|---------|---------|
| **Volatility band** | $S_{\text{vol}} = \sum_i f_{\min,i} + \dfrac{\sigma_p \nu_p}{100\,\text{BPS}}$ | Adverse-selection band. $\nu$ = vega; $\sigma$ arrives as `sigmaPbps` on the keeper push |
| **Confidence** | $U_{\text{conf}} = \left(\sum_i u_i\right)\dfrac{B}{\text{BPS}}$ | Feed's 1σ CI $u$ (bps) widens the spread; halts past `MAX_CONFIDENCE_HALT_BPS` (1000 bps = 10%) |
| **Staleness** | $U_{\text{stale}} = \sum_i \dfrac{z\,\sigma_i \sqrt{\tau_i}}{\text{BPS}}$ | Engages only past the grace $g_i = \min(\text{ttl}_i/2,\ 30\,\text{s})$, where $\tau_i = \max(0,\ t - t_{\text{obs},i} - g_i)$ |

High volatility + wide feed confidence + keeper lag = maximum spread. Stable, fresh conditions = tight execution. Every term is **symmetric** - there is no directional/deviation term; coverage moves the **mid** via inventory skew, never the spread.

**The Result: Risk Gets Priced**

The symmetric spread prices volatility, feed uncertainty, and keeper lag, while coverage-driven inventory skew moves the mid. AIMM:
- Widens the spread when volatility, feed confidence, or keeper staleness rise
- Shifts the mid against coverage-worsening flow and toward coverage-improving flow (inventory skew)
- Internalizes adverse selection costs that LPs would otherwise absorb

The pool charges for adverse selection instead of absorbing it.

---

## 6. Why now

### 6.1. The hooks experiment proves appetite

V4 hooks demonstrate demand for adaptive AMM features (volatility tracking, dynamic fees, inventory awareness); AIMM bakes those features into the pricing curve instead of bolting them on as hooks.

### 6.2. The LP experience is constrained

Passive V3/V4 LPs face execution complexity: range selection, rebalance cadence, JIT competition. AIMM's single-sided, natively inventory-aware deposits remove all of it from the LP's side.

Most liquidity providers do not want to run market-making strategies. AIMM offers a curve geometry that manages inventory risk in the curve itself, so LPs do not have to.

The design also addresses institutions. Professional market makers are not uniformly profitable. A fair share of whales providing to automated liquidity managers like Kamino, Beefy CLM, Gamma, and Arrakis underestimate their net result: these applications typically display short-term yield APRs without netting LVR. AIMM's LVR-aware pricing closes that industry-wide reporting gap by design rather than after the fact.

### 6.3. DEXs must rival CEX spot markets

We want AIMM to be **the spot DEX for everything**: stables, yield-bearing assets, majors, alts, and all the existing markets arriving on-chain (FX, commodities, stocks, indices). The design covers every one of those asset classes and stays complementary to order book exchanges.

To capture meaningful spot volume from centralized exchanges, on-chain markets need:
- Tighter spreads on liquid pairs
- Transparent, predictable pricing
- Sustainable LP economics

AIMM pursues all three structurally. There are no emissions.

---

## 7. Technical architecture

### 7.1. Pricing pipeline

```mermaid
flowchart TB
  In[Input tokenIn tokenOut amountIn] --> S1[Inventory skew from coverage]
  S1 --> S2[Keeper mark and pushed sigma]
  S2 --> S3[Per-hop and path sigma]
  S3 --> S4[Traverse spline by volume]
  S4 --> S5[Symmetric spread and protocol split]
  S5 --> Out[Output amountOut spreadPbps fees]
```

### 7.2. Coverage-aware asset-liability accounting

Building on Wombat's model:

- **Coverage Ratio**: reserves/liabilities per token
- **Withdrawal Haircuts**: Linear penalty when coverage < 100%, sized by the deficit and scaled by `haircutSuppressorBps`. This is what restores coverage: every exit from an undercollateralized leg leaves $c$ higher than it found it.
- **Convex Coverage Wall**: `kappaCovBps` tolls any swap that drains a walled leg further, superlinearly in the deficit, so the last of a leg is priced out before it can be taken
- **Critical Thresholds**: Circuit breakers at extreme coverage levels; the inventory skew itself saturates at $c \le 0.5$ and $c \ge 2$

### 7.3. Oracle security

**External keeper mark (primary quote source):**
- The quote is the pushed mark: swaps write no price state and there is no internal accumulator, so pool reserves are not an input to the price an attacker can move
- Trust rests on the k-of-n NXR signer quorum (a leaked key revocable immediately via `revokeSigner`) plus off-chain deviation-band + heartbeat monitoring; the residual risk is a stale/missed push (priced by the staleness surcharge)

**Per-asset depeg price bands (circuit-breakers against a second BTR-operated reference feed):**
- Feed-relative `refFeedId`/`refBandBps` per asset: halt swaps if the asset's mark leaves the band around a second attestation of the **same** pair. Mandatory on every non-base leg, and halt-only - nothing is adjusted inside the band. It is an agreement check between two attestations, **not** a peg test, and it says nothing about a parent asset depegging ([Anchor Path Pricing §7.1](/docs/1-1-3-anchor-path-pricing#71-what-reffeedid-is-and-what-it-is-not)). Policy halts that a listing-time price bound would express belong to the guardian halt instead, a human decision on a fast on-chain lever.
- Base-token depeg halt: reverts `BaseDepegged` when |basePrice - 1e18| / 1e18 > `BASE_DEPEG_HALT_BPS` (default 500 bps)
- See [Depeg Halt](/docs/3-5-depeg-halt) for the full mechanism

The keeper mark is the price source for every asset; there is no servable on-chain price EMA (smoothing lives at the source, the chain quotes the raw fresh mark only).

### 7.4. Extreme volatility handling

**What happens in a flash crash?**

1. **Volatility fees spike** - σ-based component widens spreads automatically
2. **The inventory skew index saturates at $\psi = \pm 100$** (an `int8`, clamped at $c \le 1/2$ and $c \ge 2$), bounding the mid displacement
3. **Maximum slippage = liquidity profile edge**, dispersion-scaled worst-case execution
4. **Halt available**, governance can halt an asset (`haltAsset`, with a source mask) if needed

The pool becomes a price-taker at extremes. The mid shift is explicitly bounded ($\psi$ saturates at $\pm 100$), but that bounds the quote, not LP claim value: on a fully deficient leg a claim can still go to zero. See the [Risk Disclaimer](/docs/risk-disclaimer).

### 7.5. Emergency mechanics

When coverage drops below 100% (reserves below liabilities on a leg):

1. **Withdrawal haircuts scale linearly** with the deficit, from the first basis point of under-coverage, not from a 50% threshold. Early exiters do not escape the shortfall, which protects remaining LPs.
2. **The convex coverage wall prices further drains.** On a walled leg, `kappaCovBps` tolls the drained output side with a cost that rises superlinearly as coverage falls. Nothing reduces LP claims on a clock: coverage is restored by exits paying the haircut and by the wall making the next drain expensive.
3. **Maximum skew offset applies**: $\psi = +100$ discourages further withdrawals. The skew saturates at $c \le 1/2$ (and at $c \ge 2$ on the other arm), which bounds the quote and is independent of the haircut in point 1.
4. **Manual halt available**, governance can halt an asset

### 7.6. Gas efficiency

AIMM is designed to be **gas-competitive with Uniswap v4**:

| Operation | AIMM | Uniswap v4 | Curve v2 |
|-----------|------|------------|----------|
| Curve traversal | O(1) range integral (5 cold SLOADs, flat in trade size) | pair-dependent, typically several to many ticks per swap | N/A |
| Price computation | Direct | Tick iteration | Newton iteration (~35k gas) |
| Storage pattern | EIP-1153 transient | EIP-1153 transient | Traditional SSTORE |

---

## 8. Governance and curator trust

### 8.1. The spline governance challenge

Customizable liquidity profiles create a trust question: who sets them, and how do LPs verify they are not being front-run?

1. **Time-locked parameter changes**: re-pointing a leg's preset (`UPDATE_PROFILE`) and writing a curve (`UPDATE_CURVE`) are both queued a full day ahead, so LPs can exit before a shape changes
2. **Off-chain fitting, on-chain data**: shapes are fitted from observed depth density off chain and installed as on-chain data, not code. The fit is not automated on-chain and no keeper writes curves
3. **Transparent on-chain state**: every parameter that drives a live quote is readable by any address
4. **One authority, not a curator set**: `createPool` is permissionless but takes no owner. Every admin-gated call on every pool resolves the same chain-wide `AccessControl.owner()`; there is no per-pool owner or curator role in the deployed contracts ([Pool Deployment & Curation](/docs/5-1-2-pool-deployment-curation))

Invariant risk becomes discretion risk, bounded by the timelock and by exit.

### 8.2. White-label architecture

**Deployment is permissionless; administration is not.** Any address can deploy an N-asset pool through `PoolFactory` with its own base token and initial fee params. Listing assets, installing curves, setting risk config and halting all route through the `Admin` singleton and resolve the chain-wide owner - the deploying address gains no keys. A white-label operator today gets its own pool and its own branding, not its own parameter authority; a per-pool authority model would be a contract change. See [Pool Deployment & Curation](/docs/5-1-2-pool-deployment-curation) and [White labeling](/docs/5-3-1-white-labeling).

---

## 9. Competitive position

### 9.1. Why BTR is a separate protocol, not a V5

**The tick model is structurally incompatible.**

Uniswap's architecture requires:
- Discrete tick traversal for price discovery
- Per-position liquidity accounting
- LP-managed range selection

AIMM requires:
- Keeper-mark-first pricing with spline depth
- Pool-level inventory accounting
- Curator-managed profiles

### 9.2. Structural differentiators

We are not claiming "unforkable": the design is documented and the live parameters are public on-chain state, so a serious team could replicate the architecture. The claim is a coherent combination of three load-bearing pieces that no other shipping AMM combines:

1. **Regime-adaptive policy substrate** - the spline depth profile is admin-mutable on-chain *data*, not hard-coded *code*. Concentration, asymmetry, and per-asset shape can be re-fit from on-chain trade-density analysis without a contract upgrade. Curve's `A` and Gyroscope's `λ` are immutable per-pool parameters; AIMM's spline is the policy itself.
2. **Shared-inventory multiplier** - the base token's reserves simultaneously back its approximately $N-1$ pair markets under base-token flow (see [Foundations §18](/docs/foundations#18-capital-efficiency)). Realistic ranges: ~3-5× V3-equivalent depth at `N=5`, ~5-10× at `N=10`, deployment-dependent, with a contention discount `γ ∈ [0.5, 1.0]`. UniV4's singleton is a storage optimization; AIMM's singleton is a liquidity-sharing geometry.
3. **Per-asset mark sources + reference bands** - every asset in one pool names its own mark contract, and `createPool` is permissionless. Tail risk is gated by a per-asset agreement band against a second attestation plus a base-token parity halt (`BaseDepegged` past `BASE_DEPEG_HALT_BPS` = 500 bps). See [Oracles](/docs/3-4-oracles) and [Depeg Halt](/docs/3-5-depeg-halt).

**Positioning**: liquidity for blue-chip multi-hop, curated, regime-adaptive, mark-synced. The design target is curated 5-15-asset blue-chip baskets. It is not built for stable-stable in-peg flow (Curve V1 leads there), nor for the long tail (UniV3/V4 lead on permissionless pair creation).

---

## 10. The BTR vision

We named ourselves **BTR (Bayesian True Range)** because our early research used Bayesian inference for price estimation. The philosophy persists: **we treat every swap as evidence updating our belief about fair price**.

- **Bayesian**: Beliefs (prices) update based on evidence (flow, volatility, coverage)
- **True Range**: We capture realistic dispersion of price outcomes, not idealized curves
- **Adaptive**: Every parameter responds to market conditions

Eliminating adverse selection is impossible without eliminating trading. The goal is to **price it more accurately, so that LPs are more likely to be compensated fairly** *(no guarantee; outcomes depend on market regime, oracle health, and adapter behavior; see [Risk Disclaimer](/docs/risk-disclaimer))* and arbitrageurs cannot extract risk-free profits.

A constant-product pool quotes the same curve regardless of what it holds or how uncertain its price is. AIMM re-prices on both.
