Felix CDP (Hyperliquid L1)
Takes as collateral: bitcoin
Dollar loans only: other currencies are separate books, never added in
Debt and rates count loans made in US dollars and dollar stablecoins. Loans in euros, francs, yen, ether or bitcoin itself are separate books, shown by currency on each venue, never added in.
- BTC collateral — the supplied amount of the venue's pegged-bitcoin reserves as each pool reports it — what is deposited, not what is pledged against a loan.
Loan duration is not a venue figure on an on-chain pool: these markets are open-term, and a position runs until it is repaid or liquidated. A fixed term exists only where the venue writes one — the custodial desks (cefi_credit_rates.term_days) and Gavel's auction, which is fixed-rate and fixed-term by construction.
10 of 10 criteria researched. What the criteria are →
Markets — as served, not a venue rate
One row per market, as the venue publishes them. These are market rates: combining them into a single venue rate is a weighting across this venue's markets, and choosing one here would be a methodology decision taken in a web page.
No BTC market rows are served for this venue. It runs contracts, so the absence is this dataset’s, not the venue’s.
Price
What does credit cost here, and how is the price formed?
| Rate formation | borrower_setsourceFelix on HyperEVM (chain 999) — set by each borrower, per trove, and changeable by that borrower (or a batch manager the borrower delegates to; none in use, read 2026-09-30). Neither a function of utilisation nor set by governance: borrower_set, the value added on 2026-09-30 for this design (the venue was filed under algorithmic_utilisation until then). |
|---|---|
| Term structure | open_endedsourceFelix on HyperEVM (chain 999) — a trove carries no expiry (TroveManager.getLatestTroveData has no such field); it persists until repaid, liquidated or redeemed against. |
| Rate certainty | fixed_at_originationsourceFelix on HyperEVM (chain 999) — each trove carries the annual rate ITS BORROWER set (TroveManager.getLatestTroveData(id).annualInterestRate). Read 2026-09-30 on the feUBTC branch: 25 distinct rates from 0.6% to 25%, 11.19% weighted by debt; no trove is in a delegated batch. The protocol does not move a trove's rate. ⚠ It is fixed only until the borrower changes it, and a low rate has a cost the rate does not show: redemptions take the lowest-rate troves first. Per the published source the rate must lie between 0.5% and 250%. |
Quality
What stands behind a position, and what can change under the reader?
| Oracle dependency | singlesourceFelix feUBTC branch on HyperEVM (chain 999) — AddressesRegistry 0xfC4e20bd9F0e4F8782beA92a7bd8002367882407 → priceFeed() = 0xf59F338424062dD1D44A9b4dD2721128A45358ab, which names ONE aggregator, 0x3587a73AA02519335A8a6053a97657BECe0bC2Cc (description() "RedStone Price Feed for BTC", staleness limit 24 hours), read 2026-09-30. It prices bitcoin, not UBTC or the wrapper, and no fallback was found. Each branch has its own feed and a trove depends on its own branch's only: WHYPE 1, kHYPE 2, wstHYPE 3 source(s). Per the published source, a failed feed shuts the branch down at the last good price. |
|---|---|
| Default & liquidation | thresholdsourceFelix feUBTC branch on HyperEVM (chain 999), TroveManager 0xbbe5f227275f24B64bD290a91f55723a00214885 — read 2026-09-30: minimum collateral ratio 125% (a trove below it can be liquidated), critical ratio 150% for the branch, shutdown ratio 120%; liquidation penalty 5% through the stability pool and 20% by redistribution. The branch's StabilityPool 0xabF0369530205aE56dD4C49629474C65d1168924 holds 1,967,880 feUSD. Per the published source anyone may liquidate; the stability pool absorbs the debt first and the rest is redistributed to the branch's other troves. ⚠ A healthy trove can also lose collateral to REDEMPTION: CollateralRegistry.redeemCollateral exchanges feUSD for collateral, lowest-rate troves first (the ordering is published source; the fee, 0.5%, is read). |
| Custody & backing | protocol_custodialsourceFelix feUBTC branch on HyperEVM (chain 999) — read 2026-09-30: the branch's collateral sits in its ActivePool 0x8D99575EBbBda038a626cA769561C16Fdd7a5939 (token balance equals the pool's own account), and the UBTC behind the wrapper sits in the wrapper contract 0xEfBd9Cfe88235F0E648aEfb52c8E8dc152A9Ad6F. Every core contract is a proxy under ProxyAdmin 0x44A600C031dBDF652500F4a6d84b168056f13692, owned by the AdminController 0xF42fDD953E68D0010F5fA9d61ef1ba0Fc997Ef2F (delays of 1 day and 7 days); the AdminController's own ProxyAdmin is owned by a Safe, 0x699090E73c4077eF2aF42773b31788C6564F079c, 3 of 6. Who holds the AdminController's roles was not read. |
| Recourse | non_recoursesourceFelix on HyperEVM (chain 999) — per the published source (no view function states it) liability is bounded by the trove's collateral; a shortfall is absorbed by the stability pool or redistributed to the branch's other troves, and nothing pursues the borrower. |
| Track record | 4 months observedsourceDerived from the first aggregator observation this dataset holds for the venue (defi_rates_llama, 2026-05-11; the registry holds no first_date for it). This is a LOWER BOUND on the venue's age, not the age itself: a venue trading long before the aggregator began listing it reads short here. The observer is the aggregator, not the venue's own contracts. Not typed, and not a claim about the venue's longevity. |
Composition
Who and what makes up this market?
| Collateral accepted | BTC branches (1): feUBTC (a wrapper of UBTC)sourceFelix CollateralRegistry 0x9De1e57049c475736289Cb006212F3E1DCe4711B on HyperEVM (chain 999) — getToken(i)/getTroveManager(i) (registry/resolution/2026-09/felix.json; root: github.com/felixprotocol/felix-contracts addresses/999.json and usefelix.gitbook.io/docs). 4 branches, 9,724,357 feUSD of debt in all, read 2026-09-30 at block 47294918. Bitcoin branch: TroveManager 0xbbe5f227275f24B64bD290a91f55723a00214885; collateral feUBTC 0xEfBd9Cfe88235F0E648aEfb52c8E8dc152A9Ad6F ("Felix - Unit Bitcoin", 18 decimals), a wrapper token whose contract holds UBTC 0x9FDBdA0A5e284c32744D2f17Ee5c74B284993463 (8 decimals) one for one (22.5114 held against 22.5114 issued); 21.5217 of collateral, 466,837 feUSD of debt, 29 troves, minimum collateral ratio 125%, lowest trove at 145.88%. feUBTC: asset_peg holds it as a bitcoin; UBTC: asset_peg holds it as a bitcoin. Other branches (not bitcoin): WHYPE 8,218,681 feUSD, kHYPE 576,363 feUSD, wstHYPE 462,476 feUSD. |
|---|---|
| Book depth & concentration | unknown (no per-venue counterparty count exists in this registry or in the comparison payload, so depth and concentration cannot be established. This is a gap in THIS DATASET, not in the venue, and is a different value from `undisclosed`, which would mean the venue does not publish it.) |
| Observability | price: partial — Observed through the aggregator (DefiLlama). The aggregator's rows are each pool's published borrow and supply rates as it reports them — not a read of the venue's own contracts, and not checked against one. As of 2026-10-01. quantity: partial — Observed through the aggregator (DefiLlama): bitcoin collateral is the supplied amount of each pegged-bitcoin reserve, converted at the day's bitcoin reference, and debt is the borrowed amount per pool or vault. Neither is a read of the venue's own contracts. As of 2026-10-01. composition: none — Not obtainable from an aggregator — composition is loan-level and requires event ingestion, which is not planned for this venue. |
What the loans are denominated in
| Borrowed in | Assets | Size (USD equivalent) | In the loan asset | Read by |
|---|---|---|---|---|
| US dollars | FEUSD | $451k | — | contract read, 2026-10-13 |
Each currency is a separate book; the dollar equivalents compare sizes and are never added together.
Backing chain
Each link from what this venue takes as collateral down to the bitcoin it rests on, in order, with how each link was established.
How a chain is read, and what it does not claim
backing_chain: the ordered claims standing between a creditor and the coins, each link derived from a sourced fact already held and carrying it in `derived_from` — the custody cell, the venue's borrow card, or wrapper_registry.yaml for who holds the bitcoin behind a token. A `representation` link has one branch per token the venue takes; branches are alternatives, not a sequence. A link nobody has established is shown with status `incomplete` and names what is missing — it is never dropped, because a missing link omitted makes a long chain look short. `undisclosed` means the party does not publish it; `incomplete` means this dataset has not established it. NEVER SCORED AND NEVER COUNTED: no length, link count or ranking is published, and none should be derived — chain length and link transparency are orthogonal (ETP-backed margin is the longest chain here and every link of it is regulated). `recourse` is what the creditor holds beyond the chain. ⚠ Tokens are identified BY SYMBOL: the wrapper registry is not keyed by chain or address, so every `representation` link carries a `deployment` step that is incomplete — whether a token is native to the chain of the venue or a bridge receipt (one more link) is not established — and a symbol the registry knows to name a different token on a venue is shown unresolved, not given that wrapper's holders.
- contract_escrow established — the protocol contract — the collateral is escrowed and neither the operator nor the borrower can move it
source
attribute · custody_model = protocol_custodialFelix feUBTC branch on HyperEVM (chain 999) — read 2026-09-30: the branch's collateral sits in its ActivePool 0x8D99575EBbBda038a626cA769561C16Fdd7a5939 (token balance equals the pool's own account), and the UBTC behind the wrapper sits in the wrapper contract 0xEfBd9Cfe88235F0E648aEfb52c8E8dc152A9Ad6F. Every core contract is a proxy under ProxyAdmin 0x44A600C031dBDF652500F4a6d84b168056f13692, owned by the AdminController 0xF42fDD953E68D0010F5fA9d61ef1ba0Fc997Ef2F (delays of 1 day and 7 days); the AdminController's own ProxyAdmin is owned by a Safe, 0x699090E73c4077eF2aF42773b31788C6564F079c, 3 of 6. Who holds the AdminController's roles was not read. - representation incomplete
source
wrapper_registry · wrapper_registry.yaml as of 2026-09-02deployment · chain 999 incompletewhether each token is issued natively on this chain or bridged to it — a further link when bridged — is not in wrapper_registry.yaml, which is keyed by symbol, not by chain or address- feUBTC established · direct_wrapped · identified by symbolFEUBTC established · issuer Felix · consortium · holders []Felix's wrapper of UBTC ('Felix - Unit Bitcoin'). Read on-chain 2026-09-22 (Hyperliquid L1, 0xefbd9cfe88235f0e648aefb52c8e8dc152a9ad6f): the contract held 24.28794439 UBTC against a feUBTC supply of 24.287883855, and its bytecode references the UBTC token — one for one. Counts against UBTC's holders.
source
onchain_readview calls name(), totalSupply() on feUBTC and UBTC.balanceOf(feUBTC), Hyperliquid L1, 2026-09-22UBTC established · issuer Unit · consortium · holders [Unit, Hyperliquid, Infinite Field]Held by a 2-of-3 MPC threshold signature among three named Guardians — Unit, Hyperliquid and Infinite Field — each holding a key share in a secure enclave. Classed consortium, as FBTC is: the coins move when two NAMED institutions sign, which is who could fail; tBTC's threshold-signature class is reserved for an anonymous rotating group.source
issuer_docdocs.hyperunit.xyz/architecture/security ('a 2-of-3 MPC threshold signature scheme (TSS), requiring a majority of Guardians to sign'); docs.hyperunit.xyz/architecture/components ('Initial Guardian Network Participants': Unit, Hyperliquid, Infinite Field)
- feUBTC established · direct_wrapped · identified by symbol
source
The generic axis set
Identical for every venue, identically computed. An axis that cannot be computed here renders its reason — never silently omitted, because an omitted axis says it was not considered. A figure that covers only part of what the axis asks is marked, with what it leaves out beneath it. Collateral, debt and the borrow and lend rates are the tiles at the top of this page.
| Utilisation (venue roll-up) | collecting (not read yet) — no dollar reserve of this venue cleared the quantity gate on the latest day |
|---|---|
| Intermediation margin | not applicable — needs both a borrow and a lend rate; the lend rate is not served here |
| Trailing realised average (7/30/90d) | 7d 4.87% · 30d 4.97% · 90d 5.62% dollar loans, debt-weighted over the days observed (7 / 30 / 90 of 7 / 30 / 90); continuously compounded defi_rates_llama — the 30-day window's rows, gates and floor (098) |
| Rate volatility (30/90d) | 30d 0.17 pts · 90d 0.94 pts the standard deviation of the daily debt-weighted borrow rate, in percentage points — not annualised the daily rate above |
| Spread to the pair aggregate | −2.70 pts vs Minted · derived this venue's borrow rate minus its class's (7.67%), both as served on the spine /v1/market/tree — the venue's and its class's borrow rates |
| Spread to matched Treasuries | +0.84 pts vs the 1-month bill (4.13%) · derived the venue's borrow rate minus the 1-month bill, both continuously compounded. An open-term loan has no maturity of its own, so the bill stands for a 30-day window macro_rates — the 1-month Treasury bill, 2026-10-08 (Federal Reserve H.15) |
| Origination flow | collecting (not read yet) — loan events are read for Morpho Blue (Ethereum, Base) and the six Aave v3 chains only |
| Repayment flow | collecting (not read yet) — loan events are read for Morpho Blue (Ethereum, Base) and the six Aave v3 chains only |
| Aggregate and distributional LTV | 25.9% latest day, as each market reports it; dollar loans only; the aggregate only — no distribution is read here defi_rates_llama — read from the venue's own contracts, pool by pool |
| Residence distribution | collecting (not read yet) — how long positions stay open needs each loan's history; it is held for Morpho Blue and the Aave v3 chains and not yet computed |
| Liquidation incidence | collecting (not read yet) — liquidations are read from events for Morpho Blue and the Aave v3 chains, and as positions past threshold where a pool is read account by account |
| Top-10 concentration share | collecting (not read yet) — borrower concentration is read where a pool is read account by account (21 venues) |
There is no score on this page and none will be added. The criteria are published and versioned before any venue is measured against them, and this venue's row is produced by the same pipeline as every other.
Access routes
Unknown (not surveyed yet). No one has looked for an MCP server for this venue. That is not the same as having looked and found none, and this row will not say the second while meaning the first. The listing criteria are published.
Ask for this by machine
| REST | GET https://api.bitcoincreditstack.com/v1/market/venues/felix_cdp_hyperliquid_l1 |
|---|---|
| MCP | get_venue({ venue_id: "felix_cdp_hyperliquid_l1" }) get_venue({ venue_id: "felix_cdp_hyperliquid_l1", include: ["axes", "headline"] }) |
The same figures, the same names and dates. Connect your AI →
How this venue compares depends on what you'd borrow, for how long, against what. That's a question for your AI, with this data behind it.
https://mcp.bitcoincreditstack.com/mcp