# Phoenix Bonds

## What is Phoenix Bonds?

Phoenix Bonds is a principal-protected bonding platform that help protocols with liquidity-bootstrapping and provide perpetually-boosted yield to users. Phoenix Bonds can work with all yield bearing assets. The first version will be launched for $LiNEAR, the staking derivative token of LiNEAR Protocol.

## How does LiNEAR Phoenix Bonds work？

### Core mechanism

<figure><img src="https://2170515651-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FVUsjtIZTjrEX8y9oBG0Z%2Fuploads%2FNHmWGugLBAXxV9obSXbX%2Fimage.png?alt=media&#x26;token=0d1cabd8-d9a1-4342-a860-840e8accb268" alt=""><figcaption></figcaption></figure>

#### Bond

Users bond $NEAR, which goes into the Pending Bucket, and accumulates balance of $pNEAR over time. All $NEAR in the Pending Bucket will be deposited into LiNEAR protocol to generate staking rewards.

$$
A= \frac{t}{t+a}*cap*(1-c)
$$

A: the amount of claimable $pNEAR

t: time lapse after bonding

a: see [Alpha controller](#alpha-controller)

cap: upper limit of $pNEAR amount one can receive，cap=Bonded amount / Redemption price

c: commission fee, c=3%

If you are a $LiNEAR holder and want to bond $NEAR without unstaking,  you could choose to bond by depositing $LiNEAR. Please note that principal protection of Phoenix Bonds is defined in terms of value in $NEAR. This means you may receive less $LiNEAR than what you bonded when cancelling the bond, because $LiNEAR price always grows every epoch.

#### Cancel

Users can withdraw the bonded amount of $NEAR anytime before they choose to claim $pNEAR.

#### Claim

Users can claim the accumulated $pNEAR anytime after bonding. One bond can only be claimed once. After claiming, users get the accumulated $pNEAR, while their bonded $NEAR (now staked as $LiNEAR) enters the Reserve Bucket and the permanent bucket.

A 3% commission is collected upon claim on every bond, which will be mainly used to incentivize $pNEAR/$NEAR liquidity.&#x20;

#### Redeem

Users can always redeem $pNEAR for $NEAR from the Reserve Bucket. The initial redemption price before the first claim is set at 1.0

Redemption price = Total $NEAR in the Reserve / $pNEAR supply

Redemption amount of $NEAR = Redemption price \* Redeemd amount of $pNEAR

### Components

#### Pending Bucket

All bonded $NEAR is held by Pending Bucket until claimed. All staking rewards of $NEAR goes to Reserve Bucket. When users claim $pNEAR, corresponding $NEAR (staked as $LiNEAR) is transferred from Pending Bucket to Reserve Bucket and Permanent Bucket, according to the following formulas:

* Commission transferred to the treasury = Bonded $NEAR amount \* commission fee
* $NEAR transferred to Reserve Bucket = Accumulated $pNEAR \* Redemption price
* $NEAR transferred to Permanent Bucket = Bonded $NEAR amount - (Commission transferred to the treasury + $NEAR transferred to Reserve Bucket)

#### Reserve Bucket

Staking rewards from all three buckets go to Reserve Bucket, creating amplified yield for $pNEAR holders.

#### Permanent Bucket

Protocol-controlled-value (PCV) of Phoenix Bonds. It guarantees boosted yields to $pNEAR even when if Pending Bucket becomes empty.

#### Alpha controller <a href="#alpha-controller" id="alpha-controller"></a>

The alpha parameter of the accrual function variable implements a feedback controller which adjusts the parameter in one direction.

T\_a =(Bond1\_amount \* t\_1 + Bond2\_amount \* t\_2 +...+ BondN\_amount \* t\_N) / Total bonded amount

T\_a: the size weighted average age of pending bonds

N: the amount of pending bonds

t\_N: time lapse after bonding of bondN

T\_target: target average age, T\_target=15 days

When T\_a <= T\_target, alpha remains unchanged

When T\_a > T\_target,  reducing by a 1% for each day

Alpha initial value：4.4 days

Alpha lower limit：0.1 days
