Frequently asked questions on Saddle Finance, Liquidity Pools, Pegged Assets, Rewards and Incentives.
Saddle is a decentralized automated market maker (AMM) on the Ethereum blockchain, optimized for trading pegged value crypto assets with minimal slippage. Saddle enables cheap, efficient, swift, and low-slippage swaps for traders and high-yield pools for LPs. We believe in collaboration, in building Saddle as a DeFi lego block, in helping DeFi teams bring AMMs to any blockchain.
Saddle is built by DeFi natives with prior years of developer experience at Web2 companies like Uber, Amazon, and Square. As regular DeFi users ourselves, we’ve seen first-hand how important an active and vibrant community is for a project’s success. We know Web2, but we know Web3 better.
Saddle is an automated market maker (AMM) enabling trading between pegged value crypto assets. Saddle liquidity pools implement the StableSwap mathematical formula to reduce slippage and keep the market liquid. First introduced by Curve, Stableswap is a hybrid algorithm. The Stableswap hybrid combines both Constant Product and Constant Sum models.
SDL is non-transferrable for 3-12 months following launch (depending on governance). During the lockup period, SDL is not tradable.
SDL is non-transferrable for 3-12 months following launch (depending on governance). During the lockup period, SDL is not tradable, so it does not have a price.
- Swapping between two assets on Saddle gives users efficient trading and low slippage.
- Providing liquidity by depositing assets into a pool on Saddle allows users to take part in the protocol as liquidity providers and earn reward incentives.
There are several frontends available:
You can also use any of the following aggregators:
You can also run the frontend locally using the GitHub repo:
Trading on a Saddle pool carries two fees – a trading fee and a gas fee.
Trading fee: The trading fee applies to every trade and the prevailing fee is displayed in the pool information. Typically, the fee is 0.04%. However, the fee may vary depending on the pool.
Admin fee: The admin fee is included as a % of the trading fee. Currently it is zero.
Gas fee: The fee payable to Ethereum network to confirm the transactions. The gas fee varies depending on the speed of confirmation time required and represented in gwei (1 gwei = 10-9 ETH).
Example of Saddle Fees
Note: There is no fee to withdraw your liquidity from Saddle pools. Initial versions of our contracts contained a withdrawal fee feature, but we have removed this from all future pools.
Disclaimer: Investing in cryptocurrencies is risky. Using Saddle as an exchange should be significantly less risky, but keep in mind there are still risks. Refer to the risks section for more details.
This 3/7 multisig has capabilities to pause new deposits and trades in case of technical emergencies. Users will always be able to withdraw their funds regardless of new deposits being paused. The multisig can also change the swap/withdrawal fees and the per pool/account deposit limits.
The community multisig currently owns all pool/metapool, team/investor vesting, and MiniChef rewards contracts.
No, the Saddle protocol does not use any oracles as all computation is a function of the current pool balance/composition.
The Saddle protocol does not contain any front running mitigations as they are not possible to include in the protocol itself.
Our original vision was to use Synthetix as a bridge across asset pools to facilitate large, low-slippage trades (alla virtual swap). In the ideal scenario, we would have just built on top of Curve’s StableSwap, but they had a restrictive license, so we had to reimplement it.
From the beginning, we’ve been open about using the StableSwap algorithm. StableSwap is a Hybrid Function Market Maker based on the Constant Product Market Maker (implemented by Uniswap) and Constant Sum Market Maker. While the StableSwap algorithm was indeed developed by a member of the Curve team, it is nonetheless published in the public domain.
The comparison of Curve and Saddle is rooted in the algorithm used. Saddle’s technical implementation (and perhaps equally important, our ethos) is different.
Principally, Saddle is built on the values of open-source and collaboration, while Curve operates on a restrictive license. We welcome anyone who wants to build on top of Saddle or bring stablecoin / pegged asset DEX/AMM to another chain. Check out Build with Saddle on ways to collaborate.
Saddle launched with Proof of Governance (PoG) to protect our users with certain limits and discourage sybil attacks. Initially, there will be a pool TVL cap of 150 BTC and a per-address deposit limit of 1 BTC. These limits were raised every 1-2 weeks.
For LPs to qualify for PoG, an address must have demonstrated active network participation in one of the following ways:
- On-chain voting or delegation (MKR, COMP, YFI, YAM, CRV, UNI, UMA, Moloch DAO)
- Off-chain voting on Snapshot (all protocols)
- Staking SNX and minting sUSD (>$20)
The cutoff date for all activity was 1st October 2020, except for UNI, which was 1st January 2021.
We implemented this guarded launch to establish a more controlled environment that will allow us to ensure a stable launch and remain responsible with users’ funds. Our aim above all else is to ensure the application performs to its expectations, users’ funds remain safe, and our community of supporters, developers, and users remain confident in our ability to launch successfully and fairly.
Our goal is to provide you with the safest Saddle protocol. We encourage the community to help us find bugs or vulnerabilities in the protocol. The bounty reward is up to US$ 50,000. Report your findings via any one of these channels.
The Terms and Conditions cover your participation in the Bug Bounty Program. By submitting any vulnerabilities to Saddle Finance or otherwise participating in the Program in any manner, you accept these Terms.
The token is initially non-transferable for a period of between 3 to 12 months. During this lockup period, the only way to earn SDL is by LPing in Saddle’s incentivized pools or by participating in the bounties4bandits (b4b) program. Learn more here.
Once the lockup period ends, you'll be able to buy SDL on an exchange.
There are two time locks on the SDL Token:
- 1.A non-transfer period of 3 to 12 months
- 2.A vesting period of 2 to 3 years
No, all contracts that have admin functionalities are owned by the community multisig and do not have any time locks so the multisig can act quickly in case of an emergency.
After the vesting period ends, users have 1 year to claim the SDL tokens. After 1 year, all unclaimed goes to the protocol treasury.
SDL tokens are initially non-transferable / non-tradable. Wallets that received the airdrop can vote with their tokens, but they cannot transfer between wallets or different users. If governance does not vote to make SDL transferable early (vote can happen as early as 3 months from now), then 12 months after token launch, SDL will automatically unlock. That means before the end of 2022, the SDL token will be unlocked and operate as typical (transferable) ERC-20.
Open the SDL claim UI by clicking the SDL icon on the top right
As of time of writing, SDL is only claimable on mainnet. The claim UI on Arbitrum is just meant to be a preview of your SDL rewards. They will be claimable once SDL is supported on the network (estimated Q1, 2022).
Pegged value crypto assets (pegged assets) are tokens having their value pegged to an underlying asset. For example, the value of a stablecoin or tokenized bitcoin is supposed to be $1 or 1 BTC, respectively.
Pegged assets fix this value using different mechanisms:
- Some assets, like Synthetix sBTC or sUSD, maintain their peg synthetically (in this case, via collateralization of Synthetix’s SNX tokens)
- Other assets maintain their peg by being backed by and redeemable for the actual underlying asset, either permissionlessly (e.g., tBTC) or through a centralized custodian (e.g., WBTC, USDC).
Because of the different approaches and the associated risks, the prices of pegged assets of the same type may vary slightly.
Stablecoins are cryptocurrencies whose value is pegged to another asset class to stabilize its price. The pegged asset can be a fiat currency like US$, or a real-world commodity like gold. Based on the pegging mechanism, stablecoins can be divided into several groups:
- Fiat-collateralized stablecoins – E.g., USDC, USDT, BUSD
- Commodity-collateralized stablecoins – E.g., DGX (backed by Gold), SRC (Real Estate)
- Crypto-collateralized stablecoins – E.g., DAI
- Algorithmic stablecoins – E.g., FRAX, AMPL
Tokenized bitcoin is BTC “sent” from the Bitcoin blockchain to the Ethereum blockchain. BTC is held in a deposit contract which “mints” a token on Ethereum. The minted Bitcoin token on Ethereum has the same value as the regular BTC and can be used to the full capability of an ERC-20 token.
Some examples of tokenized bitcoin include tBTC, renBTC, wBTC, and sBTC.
Wrapping (minting) is done by sending an asset to the custodian's deposit address and by submitting a wrapping request.
Unwrapping (burning) an asset is done by submitting a request to the custodian. Once unwrapped, the custodian will send the equivalent underlying asset (minus applicable fees) to the user's account.
Some examples of wrapped tokens include wBTC, wETH, and wCUSD.
Synthetix is a protocol for issuing and trading synthetic assets on the Ethereum blockchain. Synths are ERC-20 tokens, providing exposure to a range of assets. Each synth tracks the price of an external asset (fiat currency, cryptocurrency, commodities, etc). For example:
- sBTC synth tracks the price of Bitcoin (BTC) through price feeds supplied by an oracle.
- sUSD synth tracks the price of a single US Dollar (USD). This synth is always valued at $1 in the debt repayment mechanism of Synthetix.
- sCHF tracks the price of the Swiss Franc (CHF) through price feeds supplied by an oracle.
Synths provide exposure to an asset (at a clear price) without holding the asset. With synths, traders can get exposure to assets which don’t exist on-chain.
Follow us, if you haven’t already, for the latest updates on new assets and pools.
Investing in cryptocurrencies is risky. The cryptocurrency assets in the various Saddle protocols are an integral part of the Saddle ecosystem. Any risks to the assets have a cascading effect on Saddle. Before we accept a cryptocurrency for the liquidity pools, we evaluate the underlying risks for the assets and operations of the asset. If one or more risks are significant, we don’t accept the cryptocurrency for the Saddle pools. The three main risk evaluation parameters are:
- Smart-contract risks
- Counter-party risks
- Market risks
Saddle is a decentralized exchange. A cryptocurrency exchange is a marketplace for trading cryptocurrencies. Broadly, two types of cryptocurrency exchanges exist:
- Centralized Exchanges (CEX): A cryptocurrency exchange owned and governed by a 3rd party. E.g., Binance, Coinbase, and Bitfinex.
- Decentralized Exchanges (DEX): A cryptocurrency exchange, unlike CEX, is not owned or governed by a 3rd party. A DEX acts as a peer-to-peer (P2P) platform, facilitating trade with no central party. E.g., Saddle, Uniswap, Sushiswap, and Mdex.
Market makers are essential in an exchange to provide liquidity, control spreads, and maintain slippages. Since cryptocurrency exchanges work 24x7, the need for automated market makers rose. AMMs democratized cryptocurrency trading by doing away with order books and institutional market makers. Instead, AMMs execute trade automatically using algorithms and liquidity pools.
x * y = k
where x is the amount of Token#1 in the liquidity pool, y is the amount of Token#2 in the liquidity pool, and k is a fixed constant.
Given the volatile nature of cryptocurrency, the market price of the tokens also fluctuates. The constant product formula does not update the price of the tokens in the pool with the market movement. This resulted in the risk of higher slippages.
x + y = k
where x is the amount of Token#1 in the liquidity pool, y is the amount of Token#2 in the liquidity pool, and k is a fixed constant.
While the constant sum formula solves the slippage problem, it provides only fixed liquidity. For markets to function well, they need a constant supply of liquidity and hence this model didn’t suit the purpose well.
- Constant Sum: When the liquidity pool portfolio is balanced, the algorithm functions as a Constant Sum formula; x + y = k.
- Constant Product: As the liquidity pool portfolio becomes imbalanced, the StableSwap algorithm functions as a Constant Product formula; x * y = k.
The Constant Product formula does not update the price of the tokens in the pool with the market movement. The Stableswap formula motivates swaps around price ratio 1.0, well suited for stablecoins. Dynamic pegs are the next evolution of AMMs.
Dynamic pegs will bring the benefits of Stableswaps to cryptocurrency assets, which aren’t pegged to another asset. By using an automatic price change mechanism, the algorithm will move the price based on real-time profit margin calculations to adjust for slippages. Thus, benefiting both the traders and the AMMs.
In AMMs, traders interact with the smart contracts, to enable liquidity and price discovery. Because of the permissionless nature, AMMs allow anyone to provide liquidity to the liquidity pool. The liquidity pool smart contract holds two or more tokens and allows anyone to deposit and withdraw funds from them, but only according to specific mathematical rules.
Liquidity providers (LPs) contribute assets (cryptocurrency tokens and coins) to liquidity pools.
In exchange for providing the tokens, the LPs normally earn a fee. Now, when a trade executes on an AMM, the trade executes against the liquidity pool. This eliminates the need for an order book and for the buyer and seller to be present at that moment in time.
Saddle pools are of two types – base and metapools.
- Base pools contain two or more tokens and implement the StableSwap algorithm.
- Metapools contain one token to trade with another underlying Base pool. Metapools provide the flexibility for liquidity providers to get exposure to the metapool asset for additional rewards. For example, in the sUSD Pool, we pool the single token sUSD alongside Stablecoin Pool V2 (DAI, USDC, USDT). Adding the single asset to the metapool, however, does not dilute the liquidity of the underlying base pool.
You can provide liquidity to a metapool in two ways - as individual assets or as LP tokens from the base pool .
- Step 2: Choose the metapool from the list of pools available
- Step 3: Click on Deposit
Option 1 : Deposit individual assets
Option 2 : Deposit LP tokens from the base pool
While synths are great, they came with a limitation. Many decentralized exchanges (DEX) suffer from front-running. Because of constraints on Ethereum, there is a latency and cost in sourcing and updating the real-world asset price for the synths. Front-runners can see the difference between price of the asset in the real-world and on-chain. They see an arbitrage opportunity and over-pay for Ethereum gas fee to prioritize their orders in the queue, before the on-chain price reflects the real-world.
In DeFi, composability is the ability of open-source protocols to interact and combine creatively to form new products and services. There are two key aspects for composability to work:
- Standardization: The ability of DeFi protocols to connect and communicate in a standardized and open way.
- Atomicity: The need for the DeFi protocols to connect instantly within a single transaction.
To overcome the front-running challenge, a time delay was introduced before a trader gets the underlying asset. While the solution was successful in addressing the front-running issue, introducing rebate and reclamation presented significant friction because of a second transaction required to settle the exchange. The need for two transactions breaks down the property of composability (atomicity in particular).
Virtual swaps are a new feature in Saddle pools leveraging Synthetix’s vSynths. This version 2 is an upgrade over the siloed version 1 synth pools. With implementing vSynth logic in Saddle’s AMM, it’s possible to use synths as bridges between pools.
Saddle Synths: Version 1
Saddle Synths: Version 2
You can withdraw your assets from the paused pool. When withdrawing, you need to withdraw proportionally all assets of the pool (combo).
Withdrawing a single asset is fundamentally a swap and therefore not allowed in the paused pools.
A pool can be paused for a variety of reasons, including, but not limited to:
- Suspicious activity going on (e.g., malicious bots)
Slippage is the difference between the expected price of a trade and the execution price. This happens as there is a time delay between the trade request and execution in the market. Slippage can occur at any time but is amplified during periods of high volatility and with large volume trades.
With max slippage setting, you can specify the maximum % of price movement you can accept for the trade. Your order will not execute if the slippage is beyond your maximum specified. The default for Saddle is 0.1%, but you can set it to any % you want.
Price impact is the difference between the current market price and estimated execution price due to order size.
StableSwap = ( Constant Sum * A ) + Constant Product
A parameter, or amplification coefficient, is a configurable setting which determines how flat the liquidity curve for each pool is.
- A is small or 0: The StableSwap algorithm functions as a Constant Product function
- A is large or infinite: The StableSwap algorithm functions as a Constant Sum function
For example, consider A = 1 vs. A = 10:
The A parameter gives the flexibility to the fund managers to balance the pool stability by changing the amplification coefficient. Pools with more volatile assets will use lower A values.
Gas refers to the unit that measures the amount of computational effort required to execute specific operations on the Ethereum network. Since each Ethereum transaction requires computational resources to execute, each transaction requires a fee. Gas refers to the fee required to successfully conduct a transaction on Ethereum.
Gas fees are paid in Ethereum's native currency, ether (ETH). Gas prices are denoted in gwei, which itself is a denomination of ETH - each gwei is equal to 0.000000001 ETH (10-9 ETH). For example, instead of saying that your gas costs 0.000000001 ether, you can say your gas costs 1 gwei. The word 'gwei' itself means 'giga-wei', and it is equal to 1,000,000,000 wei.
Ethereum network is a popular destination for most decentralized apps (dApps). The popularity has led to enormous activity of Ethereum which results in high gas fees, i.e., higher transaction (gas) fees to miners. The good news is the London Upgrade of Ethereum alters the way transaction fees are calculated, ideally smoothing them out and making them less volatile. There are also Layer-2 solutions being actively explored to reduce the load on Ethereum network.
- Combine related transactions to save on gas
- Plan ahead and process your transactions when Ethereum network is not at its peak
- Choose a transaction speed (slow or fast) to minimize the gas fee
The total value locked (TVL) details and stats are available alongside the Saddle Pools.
Yes, you may deposit into the pool if the assets are imbalanced. In fact, if you deposit underweight assets, you’ll get bonus LP tokens.
- Step 1: Choose the pool on the top navigation bar
- Step 2: Click on Withdraw
- Step 3: Enter the amount you’d like to withdraw from one or more of the assets listed in the Saddle pool.
- Step 4: Click Advanced Options to select options like slippage and gas.
- Step 5: Click Withdraw and review the details and confirm the transaction.
As with any investment, traditional or DeFi, providing liquidity to the pools carries a risk. Typically, the risks include risk of smart contracts, risks associated with the tokens/Stablecoins in the liquidity pools, and/or the risks associated with the AMMs. We outline the risks in the Saddle pool risk section.
The first thing you need to do when a transaction’s stuck is to not send any new transaction. All new transactions will also get stuck until the pending old transactions are confirmed. Then you have the option to speed up or cancel the stuck transaction. The options for speeding up or cancelling are dependent on the wallet you use.
The liquidity providers fees come in two forms - trading fees and flash loan fees (where applicable). You can see the fees in the trading window of the pools.
Yield farming is an incentive mechanism to put an individual’s cryptocurrency assets to work and generate high returns. Liquidity providers, in yield farming protocols, stake or lock up their assets to earn rewards and higher interests.
Saddle rewards the liquidity providers for their contribution to the liquidity pool. Depending on the liquidity pool, the rewards structure varies. There are many ways to earn rewards – interest from trading fees, interest from lending, and pool specific incentives. Refer to the incentives section for details.
Liquidity provider tokens (LP tokens) are tokens issued to liquidity providers. LP tokens are used to track individual contributions (proportional share of liquidity) to the overall liquidity pool.
- Annual Percentage Yield (APY): APY refers to the amount of interest a liquidity provider earns over one year. APY is like an interest rate, but the biggest benefit of APY is the compounding.
- Annual Percentage Rate (APR): APR does not factor compounding and represents the annual interest rate.
Let’s take a scenario of 1% interest each month. Therefore,
Depending on the liquidity pool, the staking/unstaking process varies. The typical process is as shown below: