# Looping

## What is Looping?

Looping allows sophisticated investors to amplify their yield exposure by providing first-loss capital to access high leverage. Loopers automatically borrow from SLF against their collateral to buy more of the same RWAs and <mark style="color:green;">interest-bearing</mark> assets, creating looping positions that multiply returns while serving as the Looping protecting SLF providers.

### **How Looping Works?**

#### <mark style="color:green;">**Step 1: Position Setup**</mark>

<mark style="color:green;">Bondify offers two distinct methods for establishing a Looping position:</mark>

* <mark style="color:green;">**Native Looping Creation:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Select your preferred yield-bearing asset as collateral and configure your desired leverage ratio directly within the Bondify</mark>
* <mark style="color:green;">**External Position Migration:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Atomically migrate your existing leveraged looping positions from external lending markets (e.g., Aave, Morpho) directly into Bondify</mark>

#### <mark style="color:green;">**Step 2: Ongoing Management**</mark>

<mark style="color:green;">System monitors position health and allows flexible management:</mark>

* <mark style="color:green;">**Position Management:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Manage leverage by raising/repaying SLF debt</mark>
* <mark style="color:green;">**Issue YT:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Tokenize the yield rights to YT and Sell them to YT buyers</mark>
* <mark style="color:green;">**Tokenize:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Tokenize entire position to JR Token for secondary market trading</mark>
* <mark style="color:green;">**Rewards Claim:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Claim accumulated rewards and points</mark>

#### **Step 3: One-Click Exit Management**

While users can still repay debt with available assets and withdraw collateral normally, Bondify also offers delegated unstaking where you select your desired exit percentage (partial or 100%). The Looping handles the unstaking process, uses proceeds to repay outstanding SLF debt, and distributes remaining profits plus accumulated points to you.

**Benefits:**

* Avoid typical T+x days redemption periods multiplied by leverage (e.g., 5x leverage of 7-day-waiting = 35 days to fully unwind)
* No burden of extra unstaking costs (e.g., 1% instant redemption × 5x = 5% total cost)
* Delegate the unstaking job to save time and reduce operational complexity
* Secondary market alternative (Fastest within 1 minute): Sell tokenized position instantly for immediate liquidity

```mermaid
graph TD
    %% Styling
    classDef user fill:#f9f9f9,stroke:#333,stroke-width:2px
    classDef action fill:#e1f5fe,stroke:#0288d1,stroke-width:2px
    classDef core fill:#fff3e0,stroke:#f57c00,stroke-width:2px,font-weight:bold
    classDef exit fill:#e8f5e9,stroke:#388e3c,stroke-width:2px

    User([User / Investor]):::user

    %% Phase 1
    subgraph Phase 1: Position Setup
        User -->|Method 1| Native[Native Creation:<br/>Deposit RWA&Interest-bearing assets + Borrow SLF]:::action
        User -->|Method 2| Migrate[External Position Migration:<br/>1-Click Aave Position Migration]:::action
    end

    Native --> LoopPos((Leveraged Looping<br/>Position)):::core
    Migrate --> LoopPos

    %% Phase 2
    subgraph Phase 2: Profit & Tokenization
        LoopPos -->|Amplifies Yield| Profit[Capture Yield Spread:<br/>Asset APY > Borrow Cost]:::action
        LoopPos -->|Tokenizes into| JRToken((JR Token)):::core
        LoopPos -->|Tokenizes into| YT((YT<br/>Tokenize the yield rights to YT and Sell them to YT buyers)):::core
        
        JRToken -.->|Feature| F1[Fungible & Standardized<br/>Active LTV Management]
        JRToken -->|
Position Management| E1[Manage leverage by raising/repaying SLF debt]:::exit
        JRToken -->|Rewards Claim| E3[Claim accumulated rewards and points]:::exit
    end
```

### How You Make Money from Looping?

**The Profit Mechanism** With quality RWAs and interest-bearing earning 10-20% APY and borrowing costs of 5-10%, looping amplifies your exposure to capture the yield spread at scale.

**Example with 4x Leverage:**

* Initial deposit: $250,000 in RWAs and interest-bearing earning 20% APY
* Borrowed from SLF (75% LTV): $750,000
* Total exposure: $1,000,000 (4x leveraged position)
* Gross earnings: $1,000,000 × 20% = $200,000/year
* Borrowing cost: $750,000 × 10% = $75,000/year
* **Net profit: $125,000/year vs $50,000/year without leverage**
* **ROI: 50% on your $250,000 equity (2.5x the base 20% yield)**

### <mark style="color:green;">**Position Migration from Other Lending Market**</mark>

<mark style="color:green;">AAVE V3 is an external lending protocol. Users with existing leveraged looping positions on AAVE V3 can migrate them into Bondify without unwinding, preserving their leveraged state. Users with existing leveraged looping positions on AAVE V3 can migrate atomically into Bondify without manually unwinding.</mark>

<mark style="color:green;">**For example, if the SLF currently lists an sUSDE pool:**</mark>

* <mark style="color:green;">Max LTV:</mark> <mark style="color:green;"></mark><mark style="color:green;">**75%**</mark> <mark style="color:green;"></mark><mark style="color:green;">→ up to</mark> <mark style="color:green;"></mark><mark style="color:green;">**3× leverage**</mark>
* <mark style="color:green;">Points multiplier for sUSDe collateral:</mark> <mark style="color:green;"></mark><mark style="color:green;">**5×**</mark>
* <mark style="color:green;">After migration, the position is managed by Bondify's smart wallet and behaves identically to a natively-created position</mark>
* <mark style="color:green;">The lower points multiplier means YT bundles from AAVE-migrated positions have different economic value than SLF-sourced bundles — this is the primary reason YT-O/YT-P decomposition exists (see YT-O and YT-P section)</mark>

#### <mark style="color:green;">**Challenge and Solution**</mark>

<mark style="color:green;">**The challenge:**</mark> <mark style="color:green;"></mark><mark style="color:green;">AAVE's variableDebtToken is non-transferable — debt cannot be moved to another address directly. An intermediate liquidity step is required.</mark>

<mark style="color:green;">**Solution:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Balancer V3 flashloan-powered atomic migration in a single transaction:</mark>

1. <mark style="color:green;">**Debt repayment via flashloan:**</mark> <mark style="color:green;"></mark><mark style="color:green;">The Bondify smart wallet (PositionManagement contract) uses a flashloan to fully repay the user's existing AAVE debt</mark>
2. <mark style="color:green;">**Collateral transfer:**</mark> <mark style="color:green;"></mark><mark style="color:green;">With debt cleared, collateral is withdrawn from AAVE and moved into the smart wallet</mark>
3. <mark style="color:green;">**Resupply + flashloan repayment:**</mark> <mark style="color:green;"></mark><mark style="color:green;">Collateral is re-supplied to AAVE under the smart wallet's address; the corresponding borrow repays the flashloan</mark>
4. <mark style="color:green;">**Target LTV adjustment:**</mark> <mark style="color:green;"></mark><mark style="color:green;">User specifies their desired target LTV at migration time; system auto-adjusts on completion</mark>

<mark style="color:green;">The entire sequence is atomic — all steps succeed together or revert together with no intermediate state risk. If the resulting LTV would exceed AAVE's max LTV, the transaction reverts automatically via AAVE's health factor check.</mark>

***

## Ongoing Management: JR Token and YT

### Differences Between JR Token and YT

Every JR Token and YT is backed by a looping position that borrows from one of two funding sources. Understanding the difference matters because the source determines max leverage, points multiplier, and YT pricing.

|                           | JR Token                                                            | YT                                                                        |
| ------------------------- | ------------------------------------------------------------------- | ------------------------------------------------------------------------- |
| **What it represents**    | Standardized leveraged looping position                             | Yield rights (organic yield and/or points) from the underlying collateral |
| **Primary user**          | Leveraged yield seekers; traders wanting managed exposure           | Loopers hedging yield risk; buyers speculating on yield                   |
| **Key benefit**           | Tradeable exit liquidity for looping positions; no forced unwinding | Fixed yield upfront for sellers; leveraged yield exposure for buyers      |
| **Secondary market**      | Staple AMM / OTC swap                                               | FIFO queue with time-decay pricing                                        |
| **Unique differentiator** | Fungible, actively managed leveraged position token                 | Bundle or split sale (YT-O + YT-P independently)                          |

{% hint style="info" %}
**Note:** JR Tokens and Yield Tokens (YT) represent the two primary use cases derived from a Looping position. The following sections on this page focus exclusively on the mechanics of the **JR Token**. For detailed information regarding the YT Liquidity Layer, please refer to the [Yield Tranche section](https://docs.cian.app/bondify/for-users-quick-start/three-tranches/yield-tranche)
{% endhint %}

### Bondify JR Liquidity Layer

Bondify introduces two dedicated liquidity layers that transform illiquid DeFi positions into tradeable, standardized instruments — one for leveraged looping positions themselves, and one for the yield rights they generate.

#### What is JR Token?

JR Token is a standardized, fungible representation of a leveraged looping position. Each JR Token maintains a constant target LTV ratio through active management, enabling positions that are otherwise heterogeneous and non-transferable to become tradeable on secondary markets.

**Token format:** `jr[Collateral][Leverage][LiquiditySource]` Examples: `jrUSDe4xSLF`, `jrwstETH5xMorpho`

#### Why It Matters?

Traditional leveraged looping positions are trapped — they cannot be transferred, listed, or sold without fully unwinding the position. This creates significant friction for users who need to exit early or rebalance exposure. JR Token solves this by:

* **Fungibility:** All positions with the same collateral, leverage target, and liquidity source are represented by the same token — enabling a real secondary market
* **Active LTV Management:** The protocol actively rebalances positions to maintain the target LTV, ensuring JR Tokens remain consistent and comparable over time
* **Standardized Leverage Exposure:** Buyers of JR Tokens gain instant, managed leveraged exposure without building a position from scratch
* **One-Click Exit:** Holders can exit leveraged positions at any time by selling JR Tokens on the secondary market, bypassing lengthy unwinding periods (e.g., a 5x leveraged position on a T+35 fund could otherwise take 350 days to fully unwind)

#### Minting JR Tokens

When a user contributes a looping position into the JR pool, the protocol calculates how many JR tokens to issue based on the current per-share value (PSV) of the pool.

**First position (pool creation):**

The PSV is initialized from the incoming position's NAV and total collateral value:

```
PSV = NAV / totalCollateralValue
    = (C × P_deposit - D × P_borrow) / (C × P_deposit)
    = 1 - LTV    (when P_borrow = 1.0, e.g. USDC debt)

tokens_to_mint = NAV_in_baseToken / PSV
```

Example (sUSDe pool, P\_deposit = $1.21, LTV = 75%):

```
C = 500 sUSDe, D = 400 USDC
totalCollateralValue = 500 × 1.21 = $605
NAV = $605 − $400 = $205
PSV = 205 / 605 = 0.3388
tokens_to_mint = 205 / 0.3388 = 605 JR
```

**Subsequent positions:**

New entrants use the existing PSV. Tokens issued are proportional to the NAV contribution, so existing holders are not diluted.

**LTV adjustment at entry:**

If the incoming position's LTV differs from the pool's target LTV, the protocol adjusts it automatically before accepting the position:

* Incoming LTV **above** pool target → user must repay the excess debt first
* Incoming LTV **below** pool target → protocol withdraws excess collateral back to the user's wallet

This ensures the pool always operates at a consistent LTV, and the user retains any collateral or debt difference returned to them.

#### Redeeming JR Tokens

When a holder redeems JR tokens, they receive a proportional share of the pool's underlying position:

```
exit_collateral = pool_collateral × (redeem_amount / total_supply)
exit_debt       = pool_debt       × (redeem_amount / total_supply)
```

* **Full redemption** (all JR tokens burned, pool empties): the holder receives the pool's entire holding position directly — no split required
* **Partial redemption**: the protocol splits the holding position proportionally; the user receives a new independent looping position with the corresponding collateral and debt

**PSV is not affected by entry or exit.** Mints and redeems transfer proportional value in and out; they do not change the per-share value. Only yield accrual or liquidation loss moves PSV over time.

#### Understanding PSV vs. USDC/JR

Two metrics are used to track JR Token value. They measure different things and should not be conflated:

**PSV (Per-Share Value) — denominated in sUSDe/JR**

PSV reflects how much of the underlying collateral each JR token represents. It changes when:

* sUSDe price appreciates (PSV rises even if borrow costs equal yield)
* The pool incurs a liquidation loss (PSV falls)

PSV is a reference/oracle metric used for internal pool accounting and Staple pricing. It is **not** a direct measure of user P\&L.

**USDC/JR — the correct user-facing P\&L indicator**

USDC/JR measures the dollar value of what each JR token can be redeemed for. It reflects the net result of yield earned minus borrow cost accumulated over time.

| Scenario      | Debt Growth | NAV (USD) | PSV (sUSDe/JR) | USDC/JR  |
| ------------- | ----------- | --------- | -------------- | -------- |
| Initial state | —           | $710      | 1.0000         | $1.21    |
| Yield > Debt  | +$10        | $790      | 1.0356 ↑       | $1.346 ↑ |
| Yield = Debt  | +$90        | $710      | 0.9308 ↓       | $1.21 →  |
| Yield < Debt  | +$20        | $680      | 0.8914 ↓       | $1.159 ↓ |

Note: In Case 2, PSV falls (because sUSDe price appreciation is captured in PSV denominator) while USDC/JR stays flat — this is the expected outcome when yield exactly offsets debt. PSV moving down does **not** mean the user lost money. Always use USDC/JR to evaluate position performance.

#### Active LTV Management: Asymmetric Range Model

The protocol uses an asymmetric rebalancing mechanism to maintain the target LTV:

| Condition                     | Tolerance        | Rationale                                            |
| ----------------------------- | ---------------- | ---------------------------------------------------- |
| LTV too low (under-leveraged) | Tight (3% gap)   | Low LTV = idle capital; users expect leveraged yield |
| LTV too high (over-leveraged) | Wider (10% gap)  | Still safe; frequent rebalancing increases gas costs |
| LTV ≥ max\_borrow             | Immediate action | Liquidation risk; protocol de-leverages instantly    |

#### Value Dynamics

The USDC/JR price reflects the P\&L of the underlying leveraged position:

* **Yield > Debt growth** → JR Token appreciates
* **Yield = Debt growth** → JR Token holds value
* **Yield < Debt growth** → JR Token depreciates

This makes JR Token a clean, price-transparent instrument for leveraged yield exposure.

***

### **Risk Considerations**

* **Liquidation risk:** If the collateral value of RWA or interest-bearing assets drops significantly or net LTV exceeds liquidation LTV, position may be liquidated. As the Looping, Loopers absorb initial losses before affecting SLF providers.&#x20;
* **Interest rate risk:** Borrowing costs from SLF may increase based on utilization, reducing net returns
* **Market risk:** Amplified exposure means amplified downside in adverse RWA performance

Bondify's Looping actively monitors positions and provides auto-deleveraging tools to mitigate these risks through dynamic position management.
