# Convertible Notes

## The Problem

Leveraged ETH exposure in DeFi comes with strings attached. CDPs can be liquidated. Leveraged tokens bleed value through rebalancing. Perpetuals charge variable funding rates that compound against you. None of these structures let you hold a leveraged position that simply cannot be called away during its term.

ETH Strategy's convertible notes solve this by borrowing a structure that has powered billions in TradFi capital formation — the convertible bond — and decomposing it into composable DeFi primitives.

## What is a Convertible Note?

A convertible note is the protocol's primary mechanism for growing the treasury. A user purchases a USD-denominated convertible note and receives two separate tokens:

1. **CDT (Convertible Debt Token)** — a fungible ERC-20 representing \~$1 of protocol debt per token. CDT can be traded, used as collateral, or burned to exercise conversion rights.
2. **An NFT Option** — an ERC-721 encoding the holder's conversion entitlements: how much STRAT and esETH they can claim, subject to a timelock and expiry.

These two tokens are independent and composable. The CDT is fungible and can be traded separately from the NFT. The NFT is transferable and can be sold or used in secondary markets. But to exercise conversion rights, a holder must burn CDT against their NFT — reuniting the two pieces.

For a deep dive on CDT itself, see [CDT](https://docs.ethstrat.xyz/core-mechanics/cdt). For conversion and redemption mechanics, see [Conversion of Notes](https://docs.ethstrat.xyz/core-mechanics/conversion-of-notes).

<figure><img src="https://4118867301-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdVsn8HPU0Wps7d1zQcgD%2Fuploads%2Fgit-blob-f7a9dd81ad2114720a2e060f169ef01240d6748f%2FLong%20Bonds%20STRAT%20Bull%20infographic.png?alt=media" alt="How convertible notes create leveraged ETH exposure"><figcaption><p>Bonding creates two composable primitives: fungible debt (CDT) and an NFT encoding conversion rights.</p></figcaption></figure>

## Why Zero-Interest Debt

In traditional finance, a convertible bond issuer pays a coupon (interest) to the bondholder, and separately, the conversion option has value. ETH Strategy combines these by recognizing that the conversion option itself is the "payment" — its value is the implied premium that the bonder effectively pays for the right to convert.

The result: the protocol borrows at 0% interest. The implied option premium *is* the protocol's revenue from debt issuance. As long as there is bonding demand, the protocol generates revenue without paying interest — a fundamentally better capital structure than protocols paying depositors variable yields.

This is the same economic insight behind the MSTR trade: MicroStrategy issues convertible notes at low or zero coupon because the conversion option is valuable enough that investors accept minimal interest. ETH Strategy does the same thing on-chain, at DeFi speed, with composable primitives. See [MSTR Comparison](https://docs.ethstrat.xyz/tokenomics/mstr-comparison) for the full breakdown.

<figure><img src="https://4118867301-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FdVsn8HPU0Wps7d1zQcgD%2Fuploads%2Fgit-blob-055d3704d9ff134e13d6cc96da9bfb35e7c2acab%2FPayoff%20Chart%20for%20Option%20Holders%20at%20expiry.png?alt=media" alt="Payoff chart comparing option holder returns to STRAT holder returns"><figcaption><p>The conversion option (blue) has a classic hockey-stick payoff — limited downside with unlimited upside if STRAT price rises above the strike. This asymmetry is what makes zero-interest debt possible: bonders accept 0% interest because the option itself is the compensation.</p></figcaption></figure>

## How Bonding Works

Convertible notes are **USD-denominated purchases**. The buyer is purchasing a note with a specific USD notional value. At the smart contract level, the user sends ETH for convenience — the protocol prices it in USD via an ETH/USD oracle, acquires the ETH for the treasury, and wraps it into esETH. Think of it as: the user pays USD → the protocol buys ETH → the ETH enters the treasury as esETH.

When a user calls `bond()`, the following happens in a single transaction:

1. **The user sends ETH** — this is the payment mechanism, but the note is priced in USD.
2. **The protocol computes the USD notional** — using the ETH/USD oracle price, the sent ETH is valued in USD. This becomes the note's `settlementEntitlementUsd` and determines the CDT amount (1 CDT per \~$1).
3. **Conversion entitlements are calculated** — the protocol determines how much STRAT and esETH the buyer is entitled to convert into, using the PCF/GCF pricing formula (see [Pricing](#conversion-entitlement-pricing) below).
4. **esETH is minted in two separate calls** — the ETH is wrapped into esETH and allocated to the treasury:
   * **Encumbered holdings** — the `conversionEntitlementEth` portion is wrapped into esETH directly to the encumbered address. This esETH is locked and can only leave when a note holder exercises their conversion-to-ETH right.
   * **Unencumbered holdings** — the remaining ETH is wrapped into esETH directly to the unencumbered address. This is the protocol's "free" capital, available for lending, yield distribution, and operations.
5. **CDT is minted** — the buyer receives CDT equal to their `settlementEntitlementUsd` (1 CDT per \~$1 of notional).
6. **An NFT is minted** — encoding the note's full state: STRAT entitlement, ETH entitlement, CDT owed, expiry, and timelock.

The bonder specifies `minConversionAmountStrat` and `minConversionAmountEth` as slippage protection, along with a `deadline` to prevent stale transactions.

## Note Structure

Each NFT encodes the complete state of the note position:

| Field                        | Description                                                                   |
| ---------------------------- | ----------------------------------------------------------------------------- |
| `conversionEntitlementStrat` | STRAT the holder can receive by converting before expiry                      |
| `conversionEntitlementEth`   | esETH the holder can receive by converting before expiry                      |
| `settlementEntitlementUsd`   | USD notional value — paid in esETH after expiry                               |
| `amountOwedCdt`              | CDT required to fully settle the note (decrements on partial exercise)        |
| `expiry`                     | \~4.2 years from bonding — after this, conversion closes and redemption opens |
| `timelock`                   | \~6.9 days from bonding — conversion and redemption blocked until this passes |

All fields except `expiry` and `timelock` decrement pro-rata as the holder partially exercises the note.

## Pricing Conversion Entitlements

Conversion entitlements are determined by two governance-controlled parameters:

* **PCF (Premium Control Factor)** — scales the premium component of the price, derived from outstanding CDT supply.
* **GCF (GAV Control Factor)** — scales the protocol's gross asset value (total esETH in the treasury, valued in USD).

### The Formula

The conversion rate (USD per STRAT) is computed as:

```
premiumUsd     = pcf * adjustedCdtSupply / SCALE
numeratorUsd   = (gav * gcf / SCALE) + premiumUsd
stratConvRate  = numeratorUsd * SCALE / stratTotalSupply
stratAmount    = settlementUsd * SCALE / stratConvRate
```

Where:

* `gav` = total esETH (encumbered + unencumbered) valued in USD via the ETH/USD oracle
* `adjustedCdtSupply` = current CDT total supply + half the new settlement amount (smooths the impact of the bond itself on pricing)
* `stratTotalSupply` = current total supply of STRAT
* `SCALE` = 1e18

**ETH conversion entitlements** are derived from the net asset value (NAV) per STRAT:

```
debtInEth = cdtTotalSupply * ORACLE_SCALE / ethPriceUSD
navETH    = totalEth - debtInEth
ethAmount = stratAmount * navETH / stratTotalSupply
```

If the protocol is underwater (`debtInEth > totalEth`), the ETH conversion entitlement is zero — but STRAT conversion rights are still granted. This allows bonding to continue during adverse conditions, accepting fresh capital to aid recovery while protecting existing creditors.

### How the Control Factors Work

| Factor  | Default          | Effect of Increasing                           | Effect of Decreasing                         |
| ------- | ---------------- | ---------------------------------------------- | -------------------------------------------- |
| **GCF** | 1.0 (no scaling) | Higher conversion rate = fewer tokens per bond | Lower conversion rate = more tokens per bond |
| **PCF** | 1.0 (no scaling) | Higher premium = fewer tokens per bond         | Lower premium = more tokens per bond         |

Both factors give governance fine-grained control over bonding terms without changing the underlying formula. Doubling the GCF has roughly the same effect as doubling the ETH in the treasury; doubling the PCF has a similar effect as doubling the CDT supply.

### Worked Example

Suppose the protocol has:

* 10,000 esETH in the treasury (encumbered + unencumbered), ETH trading at $2,000
* 1,000,000 STRAT total supply
* 5,000,000 CDT total supply
* PCF = 1.0, GCF = 1.0

A user purchases a note worth $2,000 (sending 1 ETH at $2,000/ETH):

1. `gav` = 10,000 ETH \* $2,000 = $20,000,000
2. `adjustedCdtSupply` = 5,000,000 + (2,000 / 2) = 5,001,000
3. `premiumUsd` = 1.0 \* 5,001,000 = $5,001,000
4. `numeratorUsd` = $20,000,000 + $5,001,000 = $25,001,000
5. `stratConvRate` = $25,001,000 / 1,000,000 = $25.001 per STRAT
6. `stratAmount` = $2,000 / $25.001 = \~80 STRAT

For the ETH entitlement:

1. `debtInEth` = 5,000,000 / $2,000 = 2,500 ETH
2. `navETH` = 10,000 - 2,500 = 7,500 ETH
3. `ethAmount` = 80 \* 7,500 / 1,000,000 = 0.6 esETH

So the buyer receives \~80 STRAT conversion rights and \~0.6 esETH conversion rights, plus 2,000 CDT (reflecting the $2,000 USD notional).

## Note Lifecycle

A convertible note moves through three phases:

### 1. Timelock Period (\~6.9 days after bonding)

During the timelock, the note exists but cannot be converted or redeemed. This prevents immediate arbitrage against the bonding transaction and gives the market time to absorb the new issuance.

The holder can still transfer the NFT and trade CDT during the timelock. For most holders, the timelock is a brief wait — your position is set, you just can't settle it yet.

### 2. Active Conversion Window (after timelock, before expiry)

This is the core holding period — up to \~4.2 years where the note holder has full flexibility. The holder can convert at any time, burning CDT to receive either STRAT or esETH.

* **Convert to STRAT:** Burn CDT, receive newly minted STRAT. The pro-rata esETH backing is moved from encumbered to unencumbered holdings (freeing it for protocol use). This is the equity conversion path — the holder is betting that STRAT will appreciate beyond the conversion rate.
* **Convert to esETH:** Burn CDT, receive esETH. The pro-rata esETH backing moves from encumbered to unencumbered holdings, and is then transferred to the holder. This is the ETH conversion path — the holder exits into ETH directly.
* **Partial exercise:** The holder can burn a portion of their CDT and receive a pro-rata share of their entitlements. The NFT tracks the remaining balances and can be exercised again later.

On full exercise (all CDT burned), the NFT is burned and the position is closed.

Only the current `ownerOf(tokenId)` can convert — NFT approvals are intentionally not used for settlement authorization, reducing attack surface.

### 3. Post-Expiry Redemption (after \~4.2 years)

After expiry, conversion to STRAT or esETH is no longer available. Instead, the holder redeems their remaining CDT for the USD notional value, paid in esETH. Unlike conversion, redemption is single-shot — it settles the entire remaining position at once:

* **If the protocol is solvent** (treasury USD value > total CDT supply): the holder receives the full USD notional at the current ETH/USD price, denominated in esETH.
* **If the protocol is underwater** (treasury USD value < total CDT supply): the holder receives their pro-rata share of the total treasury. This means they get less than face value, but they are treated pari passu with all other CDT holders.

Redemption burns both the CDT and the NFT, fully closing the position.

The holder specifies `minEthOut` for slippage protection against oracle price movement between submission and execution.

## Permit Support

All conversion and redemption functions support ERC-2612 permits for CDT approval. This means a holder can convert or redeem in a single transaction without a separate `approve()` call — reducing gas costs and improving UX.

## NFT Transferability

Note NFTs are standard ERC-721 tokens. They can be freely transferred, sold on NFT marketplaces, or used as collateral in other protocols. Settlement payouts always go to the current `ownerOf(tokenId)` at the time of conversion or redemption — so buying a note NFT gives you full conversion rights (provided you also hold sufficient CDT).

{% hint style="info" %}
**Status: Upcoming Release** — Convertible note bonding is currently permissioned (ESPN bonds on behalf of depositors). Permissionless bonding will be available in the upcoming release.
{% endhint %}

## Failure Modes and Gotchas

**Bonding reverts if:**

* No ETH is sent (`NoEthSent`) — ETH is the payment mechanism for USD-denominated notes
* The recipient address is zero (`ZeroAddress`)
* The transaction deadline has passed (`TransactionStale`)
* Slippage bounds are breached — conversion entitlements fall below the specified minimums (`InsufficientOutput`)

**Conversion reverts if:**

* The timelock hasn't passed (`TimelockActive`) — wait \~6.9 days after bonding
* The note has expired (`OptionExpired`) — use redemption instead
* The caller is not the NFT owner (`NotOwnerOrApproved`) — transfer the NFT first, or call from the owning address
* The CDT amount is invalid — must be between 1 and the remaining `amountOwedCdt` (`InvalidExerciseAmount`)

**Redemption reverts if:**

* The timelock hasn't passed (`TimelockActive`) — in practice this is always satisfied before expiry, but the check exists
* The note hasn't expired yet (`OptionUnexpired`) — use conversion instead
* The caller is not the NFT owner (`NotOwnerOrApproved`) — same ownership requirement as conversion
* The esETH output is below `minEthOut` (`InsufficientOutput`) — this can happen if the ETH/USD price moves between submission and execution

**Bonding may revert on invalid timelock/expiry.** If the computed timelock or expiry values are invalid, bonding reverts with `InvalidTimelockOrExpiry`. This is a safety check on the governance-configured duration parameters.

**Bonding requires esETH minting authorization.** The `bond()` function mints esETH via the esETH contract, which may restrict minting to authorized callers (e.g., the treasury manager). If the caller is not authorized, the transaction reverts.

**Protocol underwater:** If total CDT supply exceeds the treasury's USD value, new bonds still receive STRAT conversion rights but get zero ETH conversion rights. The `conversionEntitlements()` preview function will show `ethAmount = 0` before bonding, so this is transparent upfront.

**Encumbered holdings:** esETH backing ETH conversion rights is locked in encumbered holdings. The protocol owner can release encumbrance on expired notes (via `releaseEncumbrance`) to free this capital, but only after expiry and only once per note. Calling `releaseEncumbrance` on a note whose encumbrance has already been released reverts with `EncumbranceAlreadyReleased`.

**Redemption shortfall from encumbered holdings.** If the computed esETH payout on redemption exceeds the unencumbered holdings balance, the shortfall is automatically pulled from encumbered holdings to unencumbered holdings before the transfer. This ensures redemption succeeds even when unencumbered liquidity is temporarily low.

**CDT is required:** You cannot convert without CDT. If you hold an NFT but have sold or used all your CDT, you must acquire CDT before converting. This creates organic demand for CDT beyond its face-value redemption right.

For a comprehensive view of protocol risks and mitigations, see [Risks](https://docs.ethstrat.xyz/security-and-risk/risks).
