GooseFX
  • Welcome to GooseFX
  • Risks & Disclaimer
  • GAMMA
    • GAMMA v2 - Hybrid CLMM
    • GAMMA - CPAMM
      • Learn about AMMs
      • Dynamic Fees
      • Fusion
      • Boosted Rewards
      • Program Instructions
      • FAQs
      • Risks
      • GAMMA Audit
    • GAMMA for LPs
      • How to Provide Liquidity
      • How to Add Liquidity
      • How to Withdraw Liquidity
      • How to Claim yield
      • FAQs - for LPs
    • GAMMA for Pool Creators
      • How to Create a New Pool
      • FAQs for Pool Creators
    • GAMMA Partner Program
    • Developer Docs
  • Tokenomics
    • GOFX Token
    • Validator & LST - goSOL
    • Stake Rewards & Fee Share
  • Platform Tutorials
    • How to Stake/Unstake GOFX
    • Geo Restricted
  • Community
    • Twitter
    • Blog
    • Discord
    • Telegram
    • Github
Powered by GitBook
On this page

Was this helpful?

  1. GAMMA
  2. GAMMA - CPAMM

Dynamic Fees

GAMMA Dynamic Fees Explained

The dynamic fee model and pool reblancing for our AMM was created by iterating on the numerous AMM designs throughout crypto over the years but adapted to the specific characteristics of a constant product system, which doesn’t use discrete price bins. Instead, we use factors like volatility to compute the dynamic fee.

Dynamic Fee depends on

  1. How volatile the market is: If prices are fluctuating frequently, we increase the fee to protect the pool and generate more rewards for Liquidity Providers (LPs).

  2. How balanced the pool is: GAMMA aims for a 50/50 split of token amounts in the pool. The further away from that balance we get, the more we adjust the fee.

  3. Volume: If trading volume is high, fees can adapt to provide the optimum returns for LPs.


Dynamic Fee Formula

dynamic_fee_rate = base_fee + volatility_component + recent_price_volatility
  • volatility_component

volatility_component = min(max_volatility_fee, volatility_factor * recent_price_volatility)
  • recent_price_volatility

recent_price_volatility = (max_price - min_price) / avg_price over the last N observations

Last updated 1 month ago

Was this helpful?