November, 2024

1. Introduction

Skate is pioneering a new approach to concentrated Automated Market Makers (AMMs) by implementing a single, unified liquidity state that operates across all blockchain ecosystems. This innovative architecture allows Skate’s AMM to continuously rebalance liquidity, effectively addressing the issue of Loss Versus Rebalancing (LVR). By maintaining one global liquidity state across multiple chains, Skate minimizes the risks posed by adverse price movements and adverse selection, where informed traders exploit market inefficiencies, leading to suboptimal positions and potential losses for liquidity providers (LPs).

Drawing on deep expertise, including facilitating over $4 billion in trading volume through their work on Range Protocol, the Skate team has identified and overcome the inefficiencies of traditional AMMs. Typically, scaling liquidity across multiple ecosystems requires duplicating pools on each chain, which increases capital requirements and exposes LPs to greater LVR risk. For instance, achieving $10 million in liquidity across 10 chains might require $100 million in capital—a strategy that is both inefficient and risky.

Skate’s AMM eliminates the need for such capital duplication by maintaining a single, unified liquidity state across all chains. This approach allows projects to scale liquidity horizontally without multiplying capital requirements, significantly reducing the costs and risks associated with liquidity provision. The unified liquidity state also facilitates real-time, cross-chain rebalancing, shielding LPs from losses due to market volatility and information asymmetry.

For basic understanding of Skate’s Stateless App Model, can refer to https://docs.skatechain.org/main/architecture/skate

2. Overview

Codebase

The Uniswap’s V3 core codebase is structured to facilitate the factory creations of pools that allow users with features of adding and removing of liquidity along with tokens swap among the token pair, and when restructured into Skate’s Stateless App model, its components are divided into Kernel (core logic) and Periphery (user interactions).

Key Components:

  1. PeripheryManager - Periphery: This contract serves as factory for creating new pools of SkateAMM on any chain. It also stores address of the ActionBox to which all the SkateAMM pools refer to.
  2. PeripheryPool - Periphery: This contract takes the custody of pool’s asset. The users are able to deposit tokens into this contract when adding liquidity or performing a swap. The users also receive tokens from this contract when removing liquidity or receiving the swapped amount back. The fees are also paid to the LPs from this pool contract.
  3. KernelManager - Kernel: This ****contract serves as an entry point for the executors to perform transactions on the Skate chain. The contract owner can create new pools on the Skate. The executors take intents and calls into this contract to add liquidity, remove liquidity, perform swap and trigger collection of fees for the LP providers.
  4. KernelPool - Kernel: This contract has the main logic of building liquidity tick bitmap based on the assets added on all the corresponding pools on periphery chains. It also tracks the liquidity of the pool as well as the liquidity belonging to individual users who LP into the pool from any of the contracts of the pool on periphery chains.

Flow of Control in Stateless App Model

The flow of control in the Stateless App model is as follows: