Skip to main content

Tricrypto-NG Overview

Contract Source & Deployment

Source code is available on GitHub. The following documentation covers source code up until commit number 33707fc.

All tricrypto-ng deployments can be found in the "Deployment Addresses" section. ↗.

For an in-depth understanding of the Cryptoswap invariant design, please refer to the official Cryptoswap whitepaper.


The Tricrypto-NG AMM infrastructure represents a technically enhanced iteration of the previous cryptoswap implementations. It comprises the following key components:

CurveTricryptoOptimized.vy

The AMM is a 3-coin, auto-rebalancing Cryptoswap implementation (version 2.0.0) with several optimizations. Unlike the older version, the pool contract is an ERC20-compliant LP token. Two implementations exist: one with native transfers enabled and one disabled.

→ CurveTricryptoOptimized.vy
CurveTricryptoFactory.vy

The Factory allows the permissionless deployment of liquidity pools and gauges. It can accommodate multiple blueprints of the AMM contract. Blueprints are specified by the user while deploying the pool.

→ CurveTricryptoFactory.vy
CurveCryptoMathOptimized3.vy

A contract which contains different math utility functions used in the AMM.

→ CurveCryptoMathOptimized3.vy
CurveCryptoViews3Optimized.vy

Contains view methods relevant for integrators and users. The address of the deployed Views contract is stored in the Factory and is upgradeable by the Factory's admin.

→ CurveCryptoViews3Optimized.vy
Liquidity Gauge Blueprint

A liquidity gauge blueprint implementation which deploys a liquidity gauge of a pool on Ethereum. Gauges on sidechains must be deployed via the RootChainGaugeFactory.

Price Oracles

Exponential moving-average oracles for the prices of coins within the AMM.

→ Price Oracles