Same tokens. More flexibility
| Classic AMM pool | RFQ system | Aqua | |
|---|---|---|---|
| Custody | Deposited into the pool | Often delegated to the quoting firm | Tokens stay in your wallet |
| Liquidity reuse | One position per deposit | The firm's inventory backs its quotes | One balance backs many positions |
| Pricing | Fixed curve, same for everyone | Off-chain quoting logic | Programmable on-chain logic |
| Fee capture | Split among whoever is in the pool at the fee moment, JIT bots included | No LP fee: the firm prices its own spread | Your fee, set per position, shared with no other LP |
| Approvals | One per token to the contract you deposit through | Per counterparty | One revocable allowance per token and chain |
| Transparency | On-chain | Pricing private, fills on-chain | Fully on-chain, verifiable before signing |
Against a classic AMM pool
A pool needs a deposit, and deposited tokens work only in that pool. Fees are shared with whoever is in the pool at the fee moment, which is exactly the moment JIT bots exploit. On Aqua nothing is deposited: the same balance backs many positions, each position has one owner and its fees are not shared with other LPs. Read how JIT protection works.
Against an RFQ system
An RFQ system fills swaps from inventory that a quoting firm prices off-chain. That model is flexible but hard to inspect, and supplying the inventory usually means handing it over. An Aqua position gives you the same active pricing role with the opposite custody model: the pricing logic is published on-chain where anyone can verify it, and the inventory is simply the balance of your own wallet.
How they work together
In 1inch routing these models are liquidity sources, not competitors: routing compares AMM pools, RFQ quotes and Aqua positions, then fills each swap at the best price it finds. What Aqua adds is a source where liquidity is shared, self-custodial and verifiable end to end.