Price Market cap.
Last updated: Aug 31, 2023
Osmosis is an automated market maker (AMM) protocol built atop the Cosmos SDK, supporting cross-chain transactions. The project is governed by staked OSMO token holders, which can submit proposals on creating and managing liquidity pools and their incentives. Osmosis liquidity pools include features such as bonding curves and multi-weighted assets. The Osmosis AMM protocol supports the management of a non-custodial, self-balancing, interchain token index similarly to Balancer.
Besides the AMM, Osmosis is also a Proof-of-Stake blockchain built using Cosmos Hub.
Osmosis states that its goal is to provide tools extending the use of AMMs through the Cosmos ecosystem. Osmosis builds on the typical bonding curve mathematical concept used by most AMMs (usually AMMs rely on a bonding curve to manage the price of the assets in their liquidity pools – simply put, the price increases as the supply of the token decreases), by introducing customizability such as custom-curve AMMs, dynamic adjustment of swap fees, multi-token liquidity pools, interchain staking, options market, and more.
To differentiate itself from most cosmos zone projects focusing their incentive scheme on delegators, Osmosis attempts to align liquidity providers, DAO members, and delegators' interests through incentives such as granting staked liquidity providers with sovereign ownership over their pools. They can adjust the parameters of the pools depending on various factors such as competition from other pools or market conditions, through the governance platform of the project.
Osmosis describes the use cases that may require adjusting a liquidity pool’s parameters, as including various factors such as block times, slippage, transaction fees, market volatility, and more. By having adjustable parameters, Osmosis liquidity pools are aiming to satisfy the various different participants in the DeFi market, such as traders, MEV bots managers, liquidity providers, investors, emerging projects looking to bootstrap liquidity, arbitrageurs, and others.
Emerging projects can use Osmosis liquidity pools to airdrop their tokens to osmosis accounts, by following a detailed guide available on the platform’s documentation webpage. Similarly, projects looking to create liquidity bootstrapping pools can create such by visiting the documentation portal and following the detailed guide available.
Osmosis Liquidity bootstrapping pools (LBP) differ from other liquidity pools on the platform by the ratio of assets within the pools. Each LBP has a preset ratio which adjusts over time, a target ratio, and an interval of time over which it adjusts. Each LBP becomes a normal Osmosis liquidity pool once its preset period has ended or its final ratio is reached.
As Osmosis utilizes Cosmos’ IBC (Inter Blockchain Communication) protocol, the AMM’s design is mainly focused on trading IBC tokens (ICS-20 standard tokens). Therefore, for the creation of liquidity pools with IBC assets, the Osmosis team has created a separate guide, available on the documentation portal of the project. One of the main prerequisites includes the native chain of the asset having IBC transfers enabled, which requires using Cosmos SDK v0.40 or higher.
The Osmosis blockchain currently uses the Go v1.18 programming language. Just like all Cosmos networks, Osmosis is comprised of different modules. Currently, these are “Epochs”, “GAMM”, “Gov”, “Incentives”, “Lockup”, “Mint”, “Pool Incentives”, “Superfluid Staking”, “Token Factory”, “TWAP”, and “Txfees”. Each of these modules has extensive information available to developers through a webpage, part of the Osmosis documentation.
In order to deposit funds to the Osmosis app, users must acquire a Keplr wallet account. After that, they need to connect the wallet with Osmosis and approve the connection from within the wallet’s interface. Once connected with the dApp, users need to deposit funds by navigating to the “Assets” tab, located on the left-side panel, and clicking on the deposit link next to the desired asset’s ticker. Following that, users need to approve the connection to cosmoshub-4 from within the Keplr wallet, and then finally they can select the amount they want to deposit and finish setting the transaction by clicking on the deposit button. Nevertheless, in order to complete the transaction, users need to approve it from within their wallet.
Once a transaction to the Osmosis app is completed, its interface displays a series of confirmations in the top right corner of the dApp.
Swapping through Osmosis happens by visiting the “Trade” link located on the left-side panel, and following the instructions. The Osmosis app displays information such as an estimated slippage percentage, the rate of the trade, and the swap fee percentage.
For those interested in adding liquidity to a pool on the Osmosis app, the process requires navigating to the “Pools” page by locating the link on the left-side panel of the dApp, then choosing a pool from the available ones on the list, clicking on the “Add/Remove Liquidity” Button on top of the pool, and finally inputting the desired quantity from one of the assets in the pool – the quantity required to be deposited from the other asset(s) gets auto-completed as Osmosis pools require assets to be deposited in preset weights.
An important note in adding liquidity to an Osmosis pool is that this isn’t enough to allow users to earn LP rewards. To earn rewards, users need to bond their LP tokens. Bonding LP tokens on Osmosis happens by clicking the “Start earning” button in the pool of choice and choosing a bonding length. Bonded LP tokens are only eligible for LP rewards if they meet each pool’s specific minimum bonding length requirements. Unbonding LP tokens requires users to submit a transaction beginning the unbonding period (there are different unbonding periods available, each with a different APR). Once the unbonding period has passed, users need to submit another transaction to withdraw their tokens.
Removing liquidity from an Osmosis pool happens by visiting the pool of choice, clicking the “Add/Remove Liquidity” button, inputting the desired percentage to be withdrawn, and finally, clicking on the “Remove Liquidity” button.
As the creation of a liquidity pool on Osmosis is permissionless, any user can create a pool with two or more assets, supported by Osmosis. To do so, users need to navigate to the Pools tab and click on the “Create New Pool” button, located at the top of the liquidity pools list. Once the pool creation tab opens, users need to set up the new pool by selecting the amount of initial liquidity to be allocated to the pool from their wallet and choosing each asset's weight, measured in percentages. Following that, users need to pick the swap fee accrued from transactions with the pool’s liquidity, and finally, they need to click the “Create a Pool” button to launch the liquidity pool. Currently, the creation of a new liquidity pool on the Osmosis app requires a one-time fee of 100 OSMO tokens, which get transferred to the Osmosis community pool.
Osmosis fees are divided into three types – transaction fees, swap fees, and exit fees. Transaction fees are paid by any user posting a transaction on the chain and are determined by the computation and storage of the transaction. Swap fees are charged for making swaps in liquidity pools, they are paid by traders in the form of the input asset, and are specified by the Pool’s creators when the pool is being established. Exit fees are charged to liquidity providers when they withdraw their assets from liquidity pools. These fees are also preset by pool creators with the creation of the pool. Osmosis exit fees are paid in LP tokens, meaning that when withdrawing liquidity from a pool, users withdraw their assets minus a percent charged for the exit fee.
OSMO is Osmosis’ governance token, through it, OSMO stakers can manage the development of the Osmosis protocol. Initially, the token was launched with a supply of 100 million tokens, 50% of which were airdropped to ATOM (Cosmos’ native token) stakers. The other half of the token’s total supply was allocated to the project’s treasury, also called Strategic Reserve.
As a Cosmos-native project, Osmosis also has its own Proof-of-Stake blockchain. To secure it, validators and delegators are required to stake OSMO when verifying and producing new blocks.
The Osmosis team was gathered by Sunny Aggarwal and Josh Lee. Aggarwal worked as a Research Scientist at Tendermint in 2017. In 2018, he founded Sikka, a blockchain infrastructure company focused on participating in protocols and networks for the decentralized internet. Lee was Aggarwal’s colleague at Tendermint 2019. Then, he founded Chainapsis, which built Keplr wallet, an IBC-enabled wallet for the Cosmos ecosystem.
So far, there are no audits Osmosis has published, however, the Osmosis team has stated that there is a first round of audits planned for shortly after the launch of the platform. At the time of writing this review, the project has been launched for nearly a year.
At the beginning of June 2022, a Reddit user disclosed a vulnerability in the Osmosis DEX protocol that was later hacked in an exploit worth around $5 million. The bug would increase a user’s position by 50% if they add and remove funds to one of Osmosis’ pools. The incident made the team halt the Osmosis chain in an emergency move to avoid further damage.
Although the chain remained halted for several days, the bug was identified and a patch for it was released hours after the network’s stop. Moreover, shortly after that announcement, the Osmosis team released an update stating that four individuals accounting for 95% of the realized exploit amount have been identified and expressed intent to return the exploited amount in full.
One of Osmosis’ recent partnerships is with Kado – a fiat on- and off-ramp. The collaboration allows Osmosis users to buy axUSDC and OSMO directly from their bank accounts via a single transaction. Another recent partnership is with Laika – a project described as a “request builder for smart contract developers”. Laika’s onboarding to the Osmosis ecosystem provides developers with a simpler way to query CosmWasm smart contracts. Osmosis has also partnered with REStake, an auto-compounding tool built by the ECO Stake validator utilizing the “authz” Cosmos SDK module, through which one wallet account can authorize another wallet account to carry out actions on its behalf. The Osmosis ecosystem also features projects such as Phase Finance, Croncat, Axelar, Mars Protocol, and others.
Some of the features that are part of the Osmosis roadmap include a stableswap AMM, introducing a volatility awareness ability to the protocol (similar to the one developed by Uniswap v3), and an on-chain conditional execution layer including stop and limit orders – under development by Autonomy. Osmosis is also looking to expand its cross-chain support by introducing trading of more assets from other ecosystems.
Osmosis is also working closely with WosmoNFTs, to provide every wallet account on the network with “accessory NFTs” that will be attached to actions such as liquidity provision, airdrops, and others.
Furthermore, the Osmosis team is working on improving the project’s UI, trading engine, the Keplr wallet’s security, overall cross-chain UX, and various tooling improvements.