Tessera

Bitcoin, by proxy

BTCPX · created 2 months ago by 29hM…8RhN

One share

—

— today

One BTCPX share is a claim on 4 holdings sitting in a vault this program controls. Nobody can move them except by redeeming a share, and a share can always be redeemed.

Everything in the vault
—Components held against every outstanding share
Against the real shares
—Needs a listed price for every component
Dividends inside
—Share of the value that is dividends already paid on chain
Shares outstanding
—1 creation, 1 redemption

No price for MSTR, COIN, HOOD, NVDA, so the value of a share is left blank rather than computed from part of the basket.

BTCPX shares

You hand the vault

  • MSTR0.191386
  • COIN0.141091
  • HOOD0.222762
  • NVDA0.116069

You receive 0.9965 BTCPX. The creator receives 0.0035, which is 0.35% of the shares created. The fee never comes out of the vault, so backing per share is unchanged.

In kind, so no price is quoted and no oracle is trusted. Amounts round up in the vault's favour.

The recipe

These numbers were written once, when the basket was created, and cannot be changed. The weight on the right drifts as prices move; nothing rebalances it, because rebalancing would mean somebody deciding to trade your holdings.

HoldingPer shareValueWeight
MSTR
0.191386—25.0%
COIN
0.141091—25.0%
HOOD
0.222762—25.0%
NVDA
0.116069—25.0%

Share mint BfSYL4…T4Z62k · vault owner EQRdi2…DkrohG · creator fee 0.35% of shares created

Is it actually backed?

Held is what the vault contains right now. Owed is what every outstanding share can claim. Deposits round up and redemptions round down, so held can only ever be at or above owed, and the difference is rounding dust that stays with the remaining holders.

Reading the vault…

Check it without this page

Two kinds of read, both against the public RPC, no key. First, how many shares exist:

curl -s https://api.devnet.solana.com -X POST -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getTokenSupply","params":["BfSYL4suKbozZwhKUD5m9qAdSqYJZioktiWPJzT4Z62k"]}'

Then what each vault holds:

MSTR · vault 6A7FkN…o18z91 · recipe 19138616 raw units per share

curl -s https://api.devnet.solana.com -X POST -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getTokenAccountBalance","params":["6A7FkNbLxDQ4sUPHrPuNh5pikC68fTCKQmriYCo18z91"]}'

COIN · vault 4HcG2x…V4a8Qs · recipe 14109136 raw units per share

curl -s https://api.devnet.solana.com -X POST -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getTokenAccountBalance","params":["4HcG2xoYTViEfw4B3q2SQcq5PMKZ5yLrjsfjoCV4a8Qs"]}'

HOOD · vault EaDNtw…dcNxX3 · recipe 22276158 raw units per share

curl -s https://api.devnet.solana.com -X POST -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getTokenAccountBalance","params":["EaDNtwhKKMLc3dUQ8sQuNWxbv7jQ6NtNUaKARJdcNxX3"]}'

NVDA · vault 6D4UF5…vzMM7V · recipe 11606854 raw units per share

curl -s https://api.devnet.solana.com -X POST -H 'content-type: application/json' -d '{"jsonrpc":"2.0","id":1,"method":"getTokenAccountBalance","params":["6D4UF5bBWC3vcD79YRC8aHW7g6k11WCo7gUUG6vzMM7V"]}'

For every vault, amount must be at least units per share × supply ÷ 1,000,000, both in raw units. If that holds, every share is backed. The program cannot make it false: deposits round up, redemptions round down, and no instruction moves anything out of a vault except a redemption.

Everything that has happened to it

Every creation and redemption since the basket was made, decoded from the program’s own events. The full ledger across every basket is on one page.

Reading the transactions…

The last mile

Creating shares means handing the vault the components themselves, which is what lets the program refuse to trust a price. Somebody holding only dollars has to buy those components first, so here is what that costs right now, priced through the routes that actually exist on mainnet.

One component has no mainnet price, so there is nothing honest to quote.

Prices come from Solana mainnet, balances from the program itself. The arithmetic behind both is written out in full.