Frankencoin (Ethereum)
Takes as collateral: bitcoin and ether
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 | administeredsourceFrankencoin lead-rate contract 0x3BF301B0e2003E75A3e86AB82bD1EFF6A9dFB2aE on Ethereum (chain 1) (the V2 hub's rate(), read 2026-09-30; no change pending) plus a premium fixed per position by whoever proposed it. Not a function of utilisation: per the published source the lead rate is changed by a proposal from a holder of 2% of the equity votes, effective after seven days — an administered rate. |
|---|---|
| Term structure | fixed_termsourceFrankencoin positions on Ethereum (chain 1) — every position carries an expiration(), read 2026-09-30: the 68 with debt expire between 2026-10 and 2029-02, none past expiry. Per the published source nothing can be minted after expiry and anyone may then buy the collateral in a forced sale, starting at 10 times the liquidation price and falling; the proceeds repay the debt and the surplus goes to the owner. A position can be rolled into a later one through the roller 0xAD0107D3Da540Fd54b1931735b65110C909ea6B6. |
| Rate certainty | fixed_at_originationsourceFrankencoin positions on Ethereum (chain 1) — read 2026-09-30: a position's annual rate is the lead rate (1%) plus its own risk premium, which is immutable; 1% to 3% across the 68 with debt, 1% to 1.5% on bitcoin. Per the published source the interest is charged UP FRONT at each mint for the time remaining to expiry and is not refunded on early repayment, and the debt does not accrue afterwards: a change in the lead rate reaches only later mints and rolls. |
Quality
What stands behind a position, and what can change under the reader?
| Oracle dependency | nonesourceFrankencoin MintingHub V2 0xDe12B620A8a714476A97EfD14E6F7180Ca653557 on Ethereum (chain 1) — read 2026-09-30: the hub's only external references are ZCHF, the lead-rate contract and the roller, and each position stores its own price(), set by its owner. Chainlink's read selectors are absent from the runtime code of ZCHF, both hubs, the lead-rate contract and the position implementation (a heuristic, not a proof). Per the published source no price feed enters minting or liquidation: minting requires collateral at the position's own price to cover what is minted, and a challenge is settled by auction. |
|---|---|
| Default & liquidation | thresholdsourceFrankencoin MintingHub V2 0xDe12B620A8a714476A97EfD14E6F7180Ca653557 on Ethereum (chain 1) — the threshold is a liquidation PRICE each position states, enforced by challenge rather than by an oracle. Read 2026-09-30: every position's price() and challengePeriod() (12h, 24h, 36h, 48h, 72h, 96h across the 68 with debt; bitcoin positions 24h or 48h, at 31,135 to 60,000 ZCHF per bitcoin); challenger reward 2%. Per the published source anyone may challenge by posting the same collateral; for one period anyone may avert it by buying the challenger's collateral at the liquidation price, and for a second the position's collateral is sold in a Dutch auction falling from that price to zero. So a position is liquidated when nobody will pay its stated price. None was under challenge at the read. |
| Custody & backing | protocol_custodialsourceFrankencoin positions on Ethereum (chain 1) — read 2026-09-30: each position is its OWN contract holding its own collateral (the token's balance of the position), with the borrower as owner(); nothing is pooled. V2 positions are minimal clones of a fixed implementation, and the EIP-1967 proxy slots are empty on ZCHF, the hubs and the lead-rate contract. Per the published source the owner may withdraw collateral only while what remains covers the debt at the stated price and no challenge is open; there is no admin key, and a new minting module needs a 14-day application period (read) that equity holders can veto. |
| Recourse | non_recoursesourceFrankencoin on Ethereum (chain 1) — per the published source (no view function states it) liability is bounded by the position's collateral and its own reserve contribution; a shortfall after a challenge or forced sale is covered from the system's reserve and equity, and nothing pursues the owner. Read 2026-09-30: reserve 8,014,668 ZCHF, equity 3,619,366 ZCHF. |
| Track record | 10 months observedsourceDerived from the first aggregator observation this dataset holds for the venue (defi_rates_llama, 2025-11-05; 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 positions (25): cbBTC, WBTCsourceFrankencoin ZCHF 0xB58E61C3098d85632Df34EecfB899A1Ed80921cB and MintingHub V2 0xDe12B620A8a714476A97EfD14E6F7180Ca653557 on Ethereum (chain 1) (registry/resolution/2026-09/frankencoin.json; roots: docs.frankencoin.com and github.com/Frankencoin-ZCHF/FrankenCoin exports/address.config.ts). 240 positions ever opened (found from the token's own minter and the hubs' position-opening logs, and checked against Frankencoin's API), 68 with debt, all on the V2 hub, 32,039,887 ZCHF in all, read 2026-09-30 at block 26090798. Bitcoin: cbBTC 0xcbB7C0000aB88B473b1f5aFd9ef808440eed33Bf (8 decimals) — 15 positions, 8,048,558 ZCHF minted against 216.79 held; WBTC 0x2260FAC5E5542a773Aa44fBCfeDf7C193bc2C599 (8 decimals) — 10 positions, 5,110,902 ZCHF minted against 144.43 held. The largest is position 0xDc189AC81BEC4db551A0478334691D71109d9382: 6,000,000 ZCHF against 150 cbBTC, 19% of all debt. ⚠ The debt is in Swiss francs (ZCHF), gross of the 10–40% each position leaves in the reserve; amounts are ZCHF, not dollars. NOT counted: a different token at 0x913B061e19549dEf21541d66fF121abA8e7F9221 that also names itself "Coinbase Wrapped BTC" — one position ever, no debt. |
|---|---|
| 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 |
|---|---|---|---|---|
| Swiss francs | ZCHF | $15.9m | 13,163,835 ZCHF | 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_custodialFrankencoin positions on Ethereum (chain 1) — read 2026-09-30: each position is its OWN contract holding its own collateral (the token's balance of the position), with the borrower as owner(); nothing is pooled. V2 positions are minimal clones of a fixed implementation, and the EIP-1967 proxy slots are empty on ZCHF, the hubs and the lead-rate contract. Per the published source the owner may withdraw collateral only while what remains covers the debt at the stated price and no challenge is open; there is no admin key, and a new minting module needs a 14-day application period (read) that equity holders can veto. - representation incomplete
source
wrapper_registry · wrapper_registry.yaml as of 2026-09-02deployment · chain 1 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- cbBTC established · direct_wrapped · identified by symbolCBBTC established · issuer Coinbase · custodial · holders [Coinbase]
source
issuer_doccoinbase.com/cbbtc — 'backed 1:1 and held in custody by Coinbase', cold storage - WBTC established · direct_wrapped · identified by symbolWBTC established · issuer BitGo · custodial · holders [BitGo]Reserves in 2-of-3 multisig with BitGo holding two keys. Since 2024 BitGo custodies jointly with BiT Global, a Hong Kong custodian part-owned by Justin Sun — a second name on the same bitcoin, recorded but not split because no share is published.
source
issuer_docBitGo, 'Wrapped BTC Launches with BitGo Custody and Full Proof of Assets', blog.bitgo.com; proof-of-reserve at wbtc.network
- cbBTC 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 | collecting (not read yet) — needs both a borrow and a lend rate; the borrow rate is not served here |
| Trailing realised average (7/30/90d) | collecting (not read yet) — no dollar loan at this venue cleared the gates and the $250k floor in the last 90 days |
| Rate volatility (30/90d) | collecting (not read yet) — no dollar loan at this venue cleared the gates and the $250k floor in the last 90 days |
| Spread to the pair aggregate | collecting (not read yet) — this venue has no borrow rate to compare |
| Spread to matched Treasuries | collecting (not read yet) — this venue has no borrow rate to compare |
| 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 | collecting (not read yet) — collateral is read here and the debt against it is not, so there is no numerator — an LTV of zero would be false |
| 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/frankencoin_ethereum |
|---|---|
| MCP | get_venue({ venue_id: "frankencoin_ethereum" }) get_venue({ venue_id: "frankencoin_ethereum", 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