PIXEL ETF

DOCS

How the whole thing actually works.

Every figure below is read from Robinhood Chain as you load the page — fees, thresholds, addresses, the palette. Nothing here is transcribed, so nothing here can be out of date. Where a number is still in flight it shows a dash rather than a guess.

01

A deposit gives you shares, not an NFT

Depositing mints you an ERC-20 token in the same transaction. It carries the canvas’s own name and ticker — deposit into a canvas called Cat and you hold CAT — and it is your claim on everything that vault holds.

There is exactly one NFT per canvas and it belongs to the creator. It is the deed: whoever holds it can claim that canvas’s creator fees, and transferring it transfers the income with it. Depositors never receive one and are not waiting for one.

Neither token appears in a wallet that has not been told its address — the shares, or the stock tokens a redemption pays out. That is a wallet display default, not a delivery still pending. Every canvas page carries its share token’s address under the title: click it to copy, or use “add to wallet” beside it and the balance appears.

Token standard
ERC-20, one per canvas
Decimals
—USDG's decimals plus a six-place virtual-share offset
Minted
In the deposit transaction, immediately
02

What a share is worth

Net asset value divided by supply. NAV is what the vault holds — every stock token valued at its leg’s price source, plus the USDG sitting as the cash leg — and the canvas page states both numbers beside each other so the division is checkable.

A vault’s first deposit opens it at exactly one dollar per share, which is an artefact of the share-decimal offset rather than a peg. From then on the price is whatever the basket is worth. It moves with the stocks and it can fall.

Shares mint on the NAV the deposit actually realises, never on its face value. If the routed swaps come in worse than the pool’s average, the delta is smaller and so is the share count. The deposit panel predicts that number before you sign, and passes a floor with the transaction so a materially worse outcome reverts instead of settling.

03

Getting out

Redemption burns exactly the number of shares you pass and pays you that fraction of every leg in kind — the stock tokens themselves plus the cash leg’s USDG, not a dollar figure. Any amount, down to the last decimal place. There is no lock-up, no queue and no notice period.

Redemption never pauses. It reads no prices, calls no price source and touches no venue — it is division, not a trade. Every deposit path in this document can refuse for one reason or another; this one keeps working through all of them, including with every price source down.

Because it is paid in kind, a redemption is invisible in a wallet that does not know the stock tokens. The canvas page quotes every token a redemption would pay, and in what quantity, before you sign — worth reading either side of the transaction, since it names exactly what should have arrived.

Accrued creator and protocol fees sit in the vault but are excluded from NAV, so they are never part of what a share redeems for. They belong to the creator and the protocol from the moment they accrue.

04

Depositing the basket instead of cash

If you already hold the underlying stock tokens you can deliver them directly and mint shares without touching a venue. You name the share count you want and a ceiling on each token you are prepared to hand over; the vault takes exactly the proportion that leaves its own ratios unchanged.

This path reads no prices either. If the vault holds some quantity of each leg against a supply, and you deliver exactly that proportion of each, then minting leaves every ratio identical — an identity, not a valuation. Two consequences worth knowing: you pay no swap fee, no price impact and no execution band, and it keeps working when USDG deposits are being refused because a pool is off its average.

Fees on this path are taken as share dilution rather than in USDG, because there is no cash in the transaction to skim.

This site has no interface for it yet. The path is live on the vault and anyone can call it, but only by calling the contract directly — the deposit panel here does the USDG route alone. Said plainly because the rest of this page describes things you can do in the app, and this one you cannot.

05

What a canvas is

A hundred squares. Each one is one percent of the portfolio, each colour is a real tokenized stock, and a blank square is a percent held in cash. The picture is not a representation of the allocation — it is the allocation, stored on chain as four packed words and read back by the vault as the weights it buys to.

Weights are frozen at mint. No function exists to repaint a canvas or rebalance it to different targets, so the fund you deposit into is the picture you looked at. The artwork is drawn by the contract itself — there is no image file, nothing hosted and nothing to go missing.

Grid
10 × 10, one percent per cell
Palette
—
Canvases minted
—
06

Fees

There is no management fee. Nothing is charged against assets held, so a position that sits untouched is not eroded. Fees are charged on money coming in, once.

Creator fee
Set per canvas at mint, up to —Chosen once by the creator. No function exists to change it afterwards, on any canvas, by anyone.
Protocol fee
—Charged on top of the creator's, not carved out of it. Adjustable by the protocol owner; every vault reads it live.
Typical all-in on a deposit
—At the suggested 0.75% creator fee. The canvas page states the actual number for that canvas before you sign.
Redemption fee
None
Mint a canvas
—Paid once by the creator. The exact amount is required — a mint with anything else reverts.
07

How a deposit executes

One transaction, and it either completes in full or reverts. The steps below are what the vault does between receiving your USDG and minting your shares.

  1. 01
    Fees come off the topCreator and protocol cuts are taken in USDG before anything is routed, and held aside — excluded from NAV, so they never dilute a share.
  2. 02
    NAV is snapshottedEvery leg is priced and valued, held or not. A leg whose source refuses closes the deposit here, including legs the deposit would not have bought.
  3. 03
    Targets are computedEach leg's target is its cell count as a percentage of the vault's total value after the deposit — not of the deposit alone.
  4. 04
    The deployable amount is worked outEverything the vault holds in USDG above the cash target, which can be more than you deposited: cash left behind by earlier deposits is swept in too.
  5. 05
    Allocation corrects driftBuying is not pro-rata. Each leg's shortfall against its target is what gets filled, so a deposit pulls a drifted vault back towards the picture. Deposits only ever buy — nothing is sold to rebalance.
  6. 06
    Legs under — are deferredA leg too small to be worth a swap is skipped and its share held as USDG. It is not lost — it counts in NAV, you get shares for it, and step 4 means the next deposit into that canvas deploys it.
  7. 07
    Delisted legs are held as cash tooIf a ticker has been deactivated in the palette its share stays in USDG. The artwork is unchanged and redemption still pays out whatever the vault holds of it.
  8. 08
    Swaps execute against your boundsEach leg carries a minimum output you signed. A leg that cannot meet it reverts and takes the whole deposit with it — atomic, or nothing.

Execution is bounded in both directions. A leg coming in worse than your bound reverts, and so does a deposit whose realised value exceeds what it deployed by more than —. The second one sounds like a bargain and is not: shares mint on realised value, so buying far below the mark mints more shares than the deposit paid for, at the expense of everyone already holding.

08

Pricing, and when deposits are refused

Every leg is priced off the Uniswap pool it trades in, as a — time-weighted average rather than the spot price. The same pool that sets the mark is the pool the swap goes through, so there is no gap between the price the vault believes and the price it can get.

A source refuses to answer rather than answering badly, and a single refusing leg closes deposits into every canvas that uses it. That is deliberate: a price the vault cannot vouch for is one somebody can mint shares against.

Averaging window
—
Deviation bound
—Spot further than this from the average and the source refuses — someone is pushing the pool, or the market has genuinely moved and the average has not caught up.
Also refuses when
The pool has no liquidity at the current price, or is too new to serve the full window
Effect on redemption
None, ever

The canvas page states each leg’s status live — its spot, its average, how far apart they are, and whether it is refusing — so a closed deposit says which leg and why rather than failing at signature.

09

The palette

The tickers below are the deepest USDG pools on the chain, ranked by what it costs to move each one one percent — depth, not size, and measured rather than picked. Depth is the metric because pool prices are what the vault trusts: a pool that is cheap to move is cheap to steal through.

A colour is permanent from the moment its index is assigned. There is no function to recolour one, because doing so would repaint artwork somebody already owns.

IndexColourTickerDeposits
0CASHA blank square. USDG, never traded.
1SGOVOpen
2NVDAOpen
3QQQOpen
4GLDOpen
5SPCXOpen
6AMCOpen
7TSLAOpen
8LLYOpen
9MUOpen
10AMZNOpen
11HIMSOpen
12DJTOpen
13TTWOOpen
14SLVOpen
15RDDTOpen
16GMEOpen
17LULUOpen
18CRCLOpen
19COSTOpen
20AAPLOpen
21BABAOpen
22MSFTOpen
23GOOGLOpen
24SPYOpen

The colour map shows how the set reads at thumbnail size, which is the size that decides whether two holdings are tellable apart.

10

Addresses

Robinhood Chain, chain 4663. Every contract is source-verified. A canvas’s vault has its own address, shown on that canvas’s page — that is the one to add to a wallet to see your shares.

Canvas NFT
0xf5fE6EdcAac468aBB76799A79ce6FAa605252193
Vault factory
0x08583D523C3bCa670862Ac508Cc3D089E3B0f9CF
Palette registry
0x569e67486998A0C0987EAB5d86E685834D0a4be2
Renderer
0x75e1F8285af88F59Bf6aCB10Bc392414eA40F02E
Vault implementation
—Every vault is a minimal proxy to this. Changing it affects only vaults created afterwards.
Deposit asset
—
11

What can change, and what cannot

The distinction worth trusting is not a promise, it is whether a setter exists. Each guarantee below is pinned by a test that fails if someone adds one.

No function exists to change these
  • A canvas’s weights, once minted.
  • A creator’s fee, once set at mint.
  • A palette colour, once assigned.
  • Which token a palette index means.
  • The renderer a canvas was minted against.
  • That redemption is always open.
The protocol owner can retune these
  • The protocol fee, within a hard cap.
  • Where protocol fees are collected.
  • The dust threshold — — today.
  • The favourable-execution band — — today, bounded at both ends.
  • The mint fee, and the creator-fee ceiling for future canvases.
  • Whether a palette index accepts new deposits.

Nothing in the right-hand column can reach vault assets, existing shares, or anyone’s ability to redeem. Deactivating a ticker stops new money going into it; it does not touch what a vault already holds, and it never blocks getting out.

An on-chain index, not an ETF in the regulated sense — the name is a nod. Nothing here is investment advice, and a canvas is only ever worth what its holdings are worth. If something on this page disagrees with what a contract does, the contract is right and this page is a bug.