An open API service indexing awesome lists of open source software.

https://github.com/saucepoint/v4-constant-sum

Constant-sum AMM curve on Uniswap v4
https://github.com/saucepoint/v4-constant-sum

Last synced: 18 days ago
JSON representation

Constant-sum AMM curve on Uniswap v4

Awesome Lists containing this project

README

        

# v4-constant-sum
### **Constant-sum swap on Uniswap v4 🦄**

> **This repo is not production ready, and only serves as an example for custom curves on v4**

With [recent changes](https://github.com/Uniswap/v4-core/pull/404) to v4, Hooks can swap on custom curves!

`v4-constant-sum` implements constant-sum swaps (*x + y = k*), allowing for an exact 1:1 swap everytime

---

## Methodology

2. The hook will hold its own token balances (as liquidity for the constant-sum curve)

3. The `beforeSwap` hook will handle the constant-sum curve:
1. inbound tokens are taken from the PoolManager
* this creates a debt, that is paid for by the swapper via the swap router
* the inbound token is added to the hook's reserves
2. an *equivalent* number of outbound tokens is sent from the hook to the PoolManager
* the outbound token is removed from the hook's reserves
* this creates a credit -- the swap router claims it and sends it to the swapper

---

Additional resources:

[v4-template](https://github.com/uniswapfoundation/v4-template) provides a minimal template and environment for developing v4 hooks

[Uniswap v4 docs](https://docs.uniswap.org/contracts/v4/overview)

[v4-periphery](https://github.com/uniswap/v4-periphery) contains advanced hook implementations that serve as a great reference

[v4-core](https://github.com/uniswap/v4-core)

[v4-by-example](https://v4-by-example.org)