Meteora
  • Meteora: The most dynamic and sustainable liquidity layer on Solana
  • PRODUCT OVERVIEW
    • Meteora Liquidity Pools
      • DLMM Overview
        • What is DLMM?
        • DLMM Program
        • Dynamic Fees
        • Strategies & Use Cases
        • DLMM Farming Rewards
      • DLMM Launch Pool Overview
      • Dynamic AMM Overview
        • What is a Dynamic AMM Pool?
        • Dynamic AMM LP Fee and APY Calculation
        • Creating a Dynamic AMM Pool via the UI
        • Claiming Fees from Permanently Locked Liquidity
        • Dynamic AMM Stable Pools
        • Dynamic LST Pools
        • Additional yield from Dynamic Vaults
        • Dynamic AMM Farm Overview
      • DAMM v2 Overview
      • Memecoin Pool Overview
        • Memecoin Pool v2
          • What is Memecoin Pool v2?
        • Memecoin Pool v1
          • What is Memecoin Pool v1?
          • Permanently Locking Liquidity
      • Stake2Earn Pool Overview
        • What is a Stake2Earn Pool?
        • Stake2Earn for Launchpads
      • Multi-Token Stable Pool Overview
    • Alpha Vault Overview
    • Dynamic Vault Overview
      • What is a Dynamic Vault?
      • Dynamic Vault Program
      • Hermes - Meteora's Keeper
        • Algorithm to find optimal yield allocations
        • Rebalance crank
        • Operation fee calculation
      • Design Goals
      • Security
      • Dynamic Vaults Whitepaper
      • Dynamic Vaults Community Explainers
      • Affiliate Program for Dynamic Vault
        • Become an Affiliate Partner (Dynamic Vaults)
    • Dynamic Bonding Curve (DBC) Overview
      • What is the Dynamic Bonding Curve?
      • Customizable Pool Configuration
      • Bonding Curve Formula
      • DBC Migrator Keeper
  • Meteora's Anti-Sniper Suite (A.S.S.)
    • Meteora’s Anti-Sniper Suite
      • Dynamic Fees
      • Fee Scheduler
      • Alpha Vault
  • INTEGRATION
    • DLMM Integration
      • DLMM SDK
        • DLMM TypeScript SDK
        • CPI Examples
      • DLMM API
      • Fetching information on locked liquidity in a DLMM
    • Dynamic AMM Pool Integration
      • Dynamic AMM SDK
        • Dynamic AMM TypeScript SDK
        • CPI Examples
      • Dynamic AMM API
        • Pool Info
        • Pool State
      • Setting Pool and Fee Config for Dynamic AMM Pools
      • Create Dynamic Pool with Timestamp/Slot Activation
      • Dynamic AMM - Farm Integration
    • DAMM v2 Integration
      • DAMM v2 SDK
        • DAMM v2 TypeScript SDK
        • DAMM v2 Rust SDK
      • Setting Pool and Fee Config for DAMM v2
      • Technical FAQ
    • Memecoin Pool Integration
      • Memecoin Pool v2 Integration
        • Setting Pool and Fee Config for Memecoin Pool v2
      • Memecoin Pool v1 Integration
        • TypeScript Code Examples
        • CPI Examples
        • Setting Pool and Fee Config for Memecoin Pool v1
        • Track permanently-locked liquidity in Memecoin Pool v1
        • Track Protocol Fee from swaps in Memecoin Pool v1
    • Stake2Earn Pool Integration
    • Dynamic Vault Integration
      • Using TypeScript-Client
      • Using Rust-Client
      • Using CPI
      • Vault API
        • Vault Info
        • Vault State
      • Vault Developer Resources
    • Alpha Vault Integration
      • Alpha Vault TypeScript SDK
      • Alpha Vault without Whitelist Setup
      • Alpha Vault with Whitelist Setup
    • Dynamic Bonding Curve (DBC) Integration
      • DBC SDK
        • DBC TypeScript SDK
        • DBC Rust SDK
      • DBC Fee Scheduler Formula
      • DBC Scripts
      • Program Repo
      • Launchpad Template
      • Technical FAQ
  • TOKEN LAUNCH POOLS
    • Steps to Create a Pool for a Token Launch
      • Create: DLMM Launch Pool
      • Create: Dynamic AMM Pool
      • Create: Memecoin Pool v1
      • Create: Stake2Earn Pool
      • Create: Pools with Alpha Vault
        • Create: DLMM Launch Pool with Alpha Vault
        • Create: Dynamic AMM Pool with Alpha Vault
        • Create: Memecoin Pool with Alpha Vault
        • Create: Stake2Earn Pool with Alpha Vault
    • Anti-Sniper Fee Suite for a Token Launch
  • Resources
    • Audits
    • Meteora Program IDs
    • Meteora APIs
    • Devnet Testing
    • Community Data Dashboards & Tools
    • Meteora Brand Assets
    • THE MASSIVE METEORA STIMULUS PACKAGE
      • Overview
      • 1. Dynamic Liquidity Market Maker (DLMM)
      • 2. Formation Of An LP Army DAO
      • 3. The 10% Stimulus Proposal
  • USER FAQ
    • Getting Started LPing
      • Supported Wallets
      • Prepare SOL
      • SOL required for Rent
      • What is Wrapped SOL?
      • What is an AMM?
      • What does it mean to provide liquidity?
      • How to swap to the tokens required for adding liquidity to a pool
      • How to quickly check if a token has any risks
      • Viewing your transaction history
      • My wallet has been compromised. What should I do?
    • Differences between DLMM and Dynamic Pools
    • DLMM FAQ
    • Dynamic AMM FAQ
      • How is the pool price of the token calculated in a Dynamic AMM?
      • What is a Meteora LP token?
      • How do I see fees earned on a Dynamic AMM Pool?
      • How to track your earnings for a Dynamic Pool?
      • What is Virtual Price in a Dynamic Pool?
      • How do LP tokens, fees, and virtual price work for Dynamic Pools?
      • Why must I add liquidity in non-stable Dynamic Pools using a 50:50 value ratio?
      • What is AMP in a Dynamic Pool with stable coins?
      • Why is the USDT-USDC pool not 1:1 in ratio of assets?
      • Can I create an LST, FX, or Multi-token pool using the Dynamic Pool creation tool?
    • Alpha Vault FAQ
    • Why is the token sometimes not picked up and tradable on Jupiter?
    • How do I create a new farm?
    • Video Tutorials to Get Started
      • LP Army Boot Camp
      • DLMM Strategy Sessions / Jam Sessions
  • Security and Risks
    • Risk of Impermanent Loss (IL)
    • Risk of depositing into an imbalanced pool / pool with price out of sync
    • Smart contract risk
    • Risk of a stablecoin depeg
    • Operational risk for dynamic vaults and pools
    • Lending risk for dynamic vaults and pools
  • legal
    • Terms of Service
    • Stake2Earn Terms of Service
Powered by GitBook
On this page
  • Alpha Vault Process
  • 1. Pro rata mode
  • A) Deposit Period
  • B) Token Purchase Period
  • C) Launch Pool Activation Slot / Timestamp
  • D) Tokens Unlock and Vesting Period
  • Example Timeline (Alpha Vault: Pro rata mode)
  • 2. FCFS (First Come First Serve) Mode
  • Whitelist and Individual Deposit Cap
  • Whitelist
  • Individual Deposit Cap
  • Alpha Vault Audit
  • Alpha Vault Typescript SDK
  • Other Considerations
  1. PRODUCT OVERVIEW

Alpha Vault Overview

PreviousMulti-Token Stable Pool OverviewNextDynamic Vault Overview

Last updated 1 month ago

Alpha Vault is an anti-bot tool to guard against sniper bots and allow genuine supporters to be the first to buy tokens at launch.

Alpha Vault can be used for token launches on DLMM Launch Pools, Dynamic AMM Pools v1, or Memecoin Pools.

The Alpha Vault doesn't hold any token supply at the start. The Alpha Vault collects SOL or USDC from users, then subsequently has the ability to buy tokens from the pool before public trading. SOL or USDC goes from the Alpha Vault into the pool, and token from the pool goes to the Alpha Vault - to be distributed to depositors.

Projects who use the Alpha Vault have the flexibility to tailor vault parameters to suit their specific token launch requirements, such as setting maximum purchase limits and defining the lock-up and vesting periods for users.

Our aim building such tools is to help projects ensure fairer token launches for their community.

  • First-to-purchase ability to prevent snipers: The vault is whitelisted to buy tokens from the liquidity pool before the launch activation slot, so vault users can buy the token at the earliest (and likely lowest) price before the activation slot and thus before sniper bots.

  • Fairer distribution: All vault users get their tokens at the same average price and the amount of tokens received is proportional to their share of the total amount of USDC deposited.

  • Configurable token lock-up period: Projects can configure vault parameters such that tokens bought by the vault are locked for a day or more, and subsequently vested for a few days, encouraging purchase by genuine supporters of the project.

This solution mitigates against the negative effects of mercenary capital from sniper bots while encouraging purchase from genuine supporters, who'd be more willing to receive their tokens a day or so later than others. This helps ensure greater alignment between projects and token holders! Read about our Alpha Vault launch .

Alpha Vault has two modes: and .

Alpha Vault Process

1. Pro rata mode

A) Deposit Period

The deposit period will always take place a period of time before the main token launch, so vault users are the earliest to secure the token at launch.

During the deposit period, users are able to deposit their preferred amount of USDC into the vault. A timer shows a countdown to the end of this period. Before the end of the deposit period, if users change their mind, they can also withdraw their deposits.

Based on users' USDC deposit amount and the current deposit TVL in the vault, the estimated token amount received and discount from launch price is calculated.

B) Token Purchase Period

At the end of the deposit period, the token purchase period begins, and the vault will start using the USDC collected to buy tokens from the liquidity pool. During the token purchase period, users can no longer deposit more USDC or withdraw their earlier deposit.

If the vault max cap is not reached, all the USDC collected in the vault would be used to buy the token from the pool.

Claim unused USDC (only for Pro rata mode): However, if USDC in the vault exceeds the max cap the vault can buy from the pool, unused USDC will be returned to users and they can withdraw them anytime once the token purchase period is over.

  • Example: you deposited 100 USDC and TVL in the vault is 10M USDC, but the vault max cap is 1M USDC. Only 1/10th of your USDC deposit will be used to purchase tokens. 90 USDC from your 100 USDC deposit will be unused and returned to you.

How to calculate Average Vault Price?

All vault users get their tokens at the same average price and the amount of tokens received is proportional to their share of the total amount of USDC deposited.

Average vault price = USDC used by vault to buy tokens / Tokens bought by vault

Example:

  • USDC used by vault to buy tokens = 2.424685m

  • Tokens bought by the vault = 39.49m

  • Average vault price = 2.424685m / 39.49m = ~0.06139 USDC per token

C) Launch Pool Activation Slot / Timestamp

A short period of time after the vault finishes its token purchase, the launch pool activation slot / timestamp will be reached and the pool becomes open and active for everyone to trade and LP.

D) Tokens Unlock and Vesting Period

A short period of time after the launch pool activation slot, locked tokens in the vault start getting unlocked and vested over a few days. Users can claim unlocked tokens anytime, there is no deadline!

The exact slot where tokens get unlocked and vested depends on the token project, who can configure the parameters based on their needs.

Important Reminder: Claim start time should NOT be earlier than Pool activation time

For a new token launch, the project should ensure that token claiming from the Alpha Vault is NOT possible before the launch pool trading activation or before the token starts trading anywhere, whether on a Dynamic AMM or DLMM Pool. If users are able to claim tokens before the launch pool/token starts trading, they may create a separate market with a price that deviates from the project's preferred launch price.

How to calculate the token amount to receive?

Amount of tokens to receive = Your USDC used by vault to buy tokens / Average Vault Price

Example:

  • Your USDC used by vault to buy tokens = 100

  • Average Vault Price = 0.061396 USDC per token

  • Amount of tokens you’ll receive = 100 / 0.061396 = 1,628.77 tokens

Note: Meteora cannot guarantee that market price after the launch will remain above the average vault price over time before all tokens are vested/unlocked. This is a risk that users have to consider.

Example Timeline (Alpha Vault: Pro rata mode)

2. FCFS (First Come First Serve) Mode

Alpha Vault has another mode called FCFS (First Come First Serve), which follows a similar process to Pro Rata mode, but with the following differences:

  • Unlike Pro rata mode, in FCFS mode, during the deposit period, Alpha Vault max buying cap = max amount of deposits the Alpha Vault accepts. Users can deposit as much as they want initially, but as soon as the vault’s reserve reaches the deposit/buy cap, then no one can deposit more (TVL cannot exceed Vault Max Cap). In other words, deposits are first come first served, up to the Alpha Vault max deposit/buy cap.

    • For example: If Vault Max Cap is 1M USDC, and a single user is the first to deposit 1M USDC right when deposits open, the vault gets fully filled and no longer accepts further deposits.

  • By default, each user has no individual deposit cap, which means a single user can technically fill up the entire Alpha Vault deposit/buy cap. However, if required, the project can specify an individual user cap and/or submit a whitelist to allow only certain wallets to deposit.

  • Once a user deposits funds, the user cannot withdraw them, even during the deposit period.

  • In FCFS mode, there won’t be any unused USDC or SOL. All deposits would be used to buy the token.

  • After the Alpha Vault buys the tokens, all depositors will also get tokens at the same average price.

Whitelist and Individual Deposit Cap

Whitelist and Individual Deposit Cap are optional features for your Alpha Vault.

Whitelist

For both Pro rata and FCFS mode, projects can submit a whitelist (csv file format) to specify which wallets are allowed to deposit into the Alpha Vault.

Individual Deposit Cap

  • Projects can specify a global individual deposit cap, where all depositors have the same individual deposit cap.

  • Projects can also specify unique individual deposit caps for each wallet e.g. Wallet A = max 500 USDC, Wallet B = max 1,000 USDC, Wallet C = max 1,500 USDC. But this requires the submission of a whitelist.

Alpha Vault Audit

Alpha Vault Typescript SDK

Other Considerations

Read how to configure Alpha Vault timings .

Alpha Vault has been by the experienced team from Offside Labs.

Alpha Vault SDK and code examples in .

Please read our .

here
Pro rata
FCFS (First Come First Serve)
here
audited
this section
Create: Pools with Alpha Vault
Alpha Vault FAQ