# Pool dynamics

### **Dynamic Amplification Coefficient (A)**

The Amplification Coefficient (A) is a key parameter that controls the StableSwap curve used by Tapio, determining how pools maintain price relationships between correlated assets. Proper A management is essential for optimizing pool performance and trading efficiency.

**A Management & Governance:** A designated Curator is responsible for adjusting A values according to market conditions to optimize pool performance and trading efficiency. These changes are implemented through a sophisticated governance system with built-in safety mechanisms:

* **Automatic Adjustment:** A values change smoothly over time through the RampAController, preventing sudden shifts that could destabilize trading
* **Safety Controls:** The Guardian can immediately stop any A adjustment if market conditions require intervention
* **Curator Managed:** All A changes operate within bounds set by protocol governance, ensuring responsible parameter management

**Why A Management Matters:** The pool's trading efficiency and pricing function depend heavily on appropriate A values for current market conditions. Professional A management helps maintain optimal trading conditions while protecting liquidity providers from unnecessary risks.

### **APR**

Let's understand different terminologies to help you better understand Tapio's APR calculations:

**Total APR** Total APR represents the complete annual percentage return earned by liquidity providers. It is the sum of all revenue sources within a Tapio pool.

**`Total APR = Base APR + Fee APR`**

This metric provides a global view of a pool's potential returns, making it easier for liquidity providers to compare opportunities across different pools.

**Base APR**

Base APR represents the weighted average yield from all assets in the pool based on their individual exchange rate (Asset’s Internal Exchange Rate) changes and pool composition.

**Calculation:** `Pool Base APR = Σ(Token USD Value × Token Individual Yield) / Total Pool USD Value`

Where each token's individual yield is calculated as `Token Individual Base APR = ((Latest Asset’s Internal Exchange Rate - PreviousAsset’s Internal Exchange Rate) × SECONDS_IN_YEAR) / (Time Difference In Seconds × PreviousAsset’s Internal Exchange Rate)`

**Example:**

Let's say we have a WETH-wstETH pool with equal dollar amounts of WETH and wstETH, and we're measuring changes over 1 week:

**WETH (Reference Token):**

* Latest Rate: 1.0 (always 1.0 since it's the reference token)
* Previous Rate: 1.0 (no change)
* Token Individual Base APR: 0%

**wstETH:**

* Latest Rate: 1.150 WETH per wstETH
* Previous Rate: 1.143 WETH per wstETH (from 1 week ago)
* Rate increased due to accumulated ETH staking rewards

**Calculation for wstETH:**

```

Token Base APR = ((1.150 - 1.143) × 31,536,000) / (604,800 × 1.150)
               = (0.007 × 31,536,000) / 695,520
               = 220,752 / 695,520
               = 31.7% annualized
```

**Pool Base APR (if equally weighted):**

```tsx
Pool Base APR = (50% × 0%) + (50% × 31.7%) = 15.85%
```

**Fee APR** Fee APR represents the annualized return from trading fees collected in the pool. The system tracks fees from all pool operations and calculates the annual return based on recent activity.

**Fee Sources:**

* **Swap fees** - Collected when users exchange tokens
* **Mint fees** - Collected when users deposit assets to receive LP tokens
* **Redeem fees** - Collected when users withdraw assets by burning LP tokens

**Calculation:** `Fee APR = (Last Day Fees × 365) / Total LP Supply`
