How it works
Seven steps, the same seven as on the home page, take a list of companies to a token you can hold, buy or sell for dollars and buy every month; the last two are markets that sit beside it. The first six have already happened on devnet and link to the transaction or account that proves them; the seventh runs against Panta’s sandbox. The running example is The Big Five, five listed megacaps in one share.
The one thing Sheaf does differently: every share is backed by the exact stocks its recipe names, held in the basket’s own onchain vault, and anyone can redeem it for them at any time. The program reads no price: it checks backing itself, whether a share is created, redeemed or bought with dollars. Prices on the site, the house filler’s quotes and Panta’s resolution come from Jupiter and listed closes.
1Sheaf program · create_basket
Write the recipe
Pick up to 8 tokenized equities: xStocks such as Apple and NVIDIA, or PreStocks, which give indirect exposure to OpenAI, Anthropic and SpaceX through special-purpose vehicles. Set a weight for each.
Sheaf turns the weights into an exact number of raw token units per share at the prices on screen. The program writes that recipe into an account, then takes over the share mint for good.
One BIG5 share of The Big Five is exactly
- NVIDIA0.112707 NVDAx26%
- Apple0.058572 AAPLx20%
- Microsoft0.038166 MSFTx20%
- Alphabet0.051644 GOOGLx18%
- Meta0.022176 METAx16%
Stored as raw units in a program account. No instruction can change it.
2Token-2022 vault · mint_shares, redeem_shares
Create shares in kind
To create a share you hand the vault exactly what the recipe names. To redeem one you take exactly that back. No price is consulted at any point.
Some PreStocks charge a fee on every transfer. The program reads that fee live and grosses the deposit up, so the vault always nets the full recipe.
What you hold is one token. It sends, sits in any Solana wallet and can be sold like any token, and Portfolio looks through it to the companies underneath. xStocks pay dividends by raising a multiplier on the mint, and the recipe is in raw units, so the vault keeps every dividend for the people holding shares.
You hand over
NVDAxAAPLxMSFTxGOOGLxMETAx
The vault
The basket’s own token accounts
rounds up on the way in
You receive
BIG5 shares, less 0.25%
the 0.25% is minted to the creator
Redeeming runs it backwards: burn BIG5 shares and every component comes back, rounded down.
What a BIG5 token is · J4kz5T…G8ygB3
- Standard
- Token-2022, like any other token
- Mint authority
- the basket's program account, nobody else
- Freeze authority
- none, the program refuses one
- Transfers
- any wallet, any program
- Dividends
- raise the components' multiplier, so the vault grows
3Dollar order
Or buy with dollars
Most people do not hold eight stocks. So a buyer can escrow dollars instead, for a number of shares that starts a little above the fair count and falls over ninety seconds to a floor the buyer chose.
Anyone can fill it by delivering the stocks the recipe names at the current count. The vault receives them exactly as in a creation, the buyer receives the shares, and the filler takes the dollars. Fillers compete on timing, so the price is set by whoever fills first; the program reads none. If nobody fills in time, the order can be canceled and the dollars go back to the buyer.
4Sell order
Sell for dollars
The way out is the way in, reversed. A holder escrows shares and asks for dollars that start a little above fair value and fall over ninety seconds to a floor the seller chose.
Any filler can pay the current amount and take the shares, and can redeem them for the stocks whenever it likes. If nobody fills in time, the shares go back to the seller. There is no protocol fee on a sale; the filler keeps whatever spread the seller’s band allows. Redeeming for the stocks themselves is always free.
5Monthly plan
Then every month
A plan is that dollar order on a schedule: an amount, a period and a number of runs. Opening it approves exactly the amount per run for its runs, and nothing else. A plan run is the same auction, stretched to 30 minutes so any filler has time (four minutes on the demo pace that runs every five minutes).
When a run is due anyone may send it, and the person who does is repaid the small account deposit when the order closes. Each fill resets the plan's reference to the price the market actually cleared at, so next month starts from where this month landed, without the program reading a price.
1 of 12
3 of 12
6 of 12
12 of 12
6Launch market
Open a launch market
A basket’s creator can open a bonding curve beside it: a separate launch token, priced from the basket’s value, that people can trade as a bet on the basket. It is not a share. It is not redeemable for the stocks, and only a basket share is backed.
The curve is set from the basket’s own value per share (its NAV) rather than round numbers. It opens at half of it and, at 5 times it, moves into a permanent Meteora pool with every liquidity position locked. A quarter of the supply goes into that pool, so it starts deep enough to trade. The fee is 25% in the first seconds, to make sniping expensive, and falls to 1% over 10 minutes.
The market shown is Bitcoin, by proxy’s, on this curve. The first launches, The Big Five’s (since graduated) and Frontier Labs’ among them, opened on an earlier curve that graduates at 20 times NAV with a 4% opening fee, and keep it.
The shape is ours. Four segments, weighted evenly enough that the price climbs with every buy: the first fifth of the SOL raised buys about a third of the supply, not half of it, so no early wallet can corner the token. A basket is not a meme. The whole curve is published as a reusable preset in the repository.
The basket’s creator opens it from the basket page in one signature and earns 40% of the curve’s trading fees; Sheaf earns 40% and Meteora keeps 20%. The pool’s address is derived from the basket’s, so anyone can find it without an indexer, and a pool only counts as the basket’s launch if the basket’s creator opened it, on the published terms, at half the basket’s NAV. When the curve fills, anyone can move it into the permanent pool from the same page, and the same card keeps buying and selling there instead of on the curve.
7Prediction market · Panta
Bet on it
Every listed basket carries one question: will it beat SPY this week? (A pre-IPO basket has no listed close, so it has no market.) It settles from a published number at two week-ending NYSE closes: the recipe’s units times each holding’s adjusted close from Yahoo times its mint’s dividend multiplier, against SPY’s adjusted close. Every input is listed, so anyone can recompute it from public accounts and two public price sources.
Panta runs the market, a USDC bonding curve on Solana. Sheaf publishes the settling number at /api/nav/<basket>, with every input and the calls to check it. Today it runs against Panta’s sandbox, so nothing is opened on mainnet; every question is on one page.
- Question
- Will the Big Five (BIG5) beat SPY this week?
- Yes if
- one share's recipe value rose more than SPY between two week-ending closes
- Settles from
- /api/nav/FFGg…EfJ, every input listed
- Market
- Panta, a USDC bonding curve on Solana (sandbox today)
Why nobody has to trust the creator, or us
The program reads no price
Backing is checked by the program itself: shares are created and redeemed against tokens, never against a price. Prices on this site, the house filler's quotes and Panta's resolution come from Jupiter and listed closes, outside the program.
No edit button
The recipe is written once: a fixed basket, like a unit investment trust. There is no manager, no rebalancing and no instruction that changes what a share holds. To change a recipe, create a new basket.
Rounding favors holders
Deposits round up and redemptions round down, so the vault can only ever hold at least what the shares claim.
The fee never touches the vault
Sheaf's 0.10% and the creator's fee, up to 1%, are paid in new shares on each creation. The vault always receives the full recipe.
Anyone can create and redeem
In a traditional fund that right belongs to a few authorized participants. Here it belongs to whoever holds the tokens.
Buying with dollars, measured
Every basket page measures what buying its stocks through Jupiter costs a filler, one way, for a $100 and a $1,000 order, from live mainnet quotes. Where that cost is above Sheaf's 0.15% margin, its filler waits deeper into the auction.
A track record, not a promise
Every basket shows what its recipe would have done over the past year against SPY, from the listed shares' own closes, with the deepest fall beside the return.
A dollar order is an auction
The program never prices it. The buyer sets the floor, fillers decide when to fill from their own quotes (Sheaf's filler uses Jupiter), and the vault still receives the real stocks.
A plan can do one thing
Opening a plan approves exactly its per-run amount for its runs. Anyone can run it when due; nobody, including Sheaf, can make it spend more or buy anything else.
Everything is in the log
The program emits an event for every creation, redemption, order, fill and plan run. The site decodes them on its server, at most 30 seconds old, and your browser decodes them itself if that fails. Anyone can run the same decoder against a public RPC.
The same rules on every chain
On the EVM chains the vault, the recipe and dollar orders are immutable contracts with verified source, holding Robinhood's own stock tokens where they exist.
Verify it yourself
Under every backing table are the two RPC calls that reproduce it: the share supply and each vault's balance. If the inequality holds, every share is backed.
Who pays, and for what
Every fee is fixed for a basket when it is created. Holding and redeeming are free. The full business case has the costs beside the alternatives and the numbers so far.
Protocol fee
0.10% of shares created
- Paid by
- Whoever creates shares: in kind, by dollar order or by a plan run
- Paid to
- Sheaf's treasury
- How
- Minted as new shares and accrued in the basket; anyone can send the claim, which pays only the treasury. The vault still receives the full recipe, so what a share redeems for is unchanged. Written into the basket when it is created and can never change.
- Status
- Live on devnet since 9 Oct 2026 for Solana baskets created from then on; baskets created before it carry none, for good. On EVM, dollar orders and plan runs through the v3 desks pay 0.10% to a separate treasury key the server does not hold (the earlier v2 desks paid it to the house key); in-kind EVM mints carry none, because the v1 baskets are immutable.
Creator fee
0 to 1% of shares created
- Paid by
- Whoever creates shares in that basket
- Paid to
- The basket's creator
- How
- Chosen once when the basket is created (the composer suggests 0.25%) and paid in new shares, never out of the vault.
- Status
- Live on devnet and on the five EVM testnets. Sheaf earns it only on the baskets it creates itself.
Filler margin
Any filler: anywhere inside the buyer's ±2% band. Sheaf's filler: 0.15% over fair.
- Paid by
- The buyer of a dollar order or a plan run
- Paid to
- Whichever filler delivers the stocks first
- How
- The auction offers a share count that starts 2% above fair and falls to the buyer's floor, 2% below it. Sheaf's filler fills once the dollars cover the stocks at fair plus 0.15%. Another filler can fill earlier for less, and the buyer gets that better count; one that waits longer earns more, up to the floor the buyer signed.
- Status
- Sheaf's 0.15% is a policy of its filler, not a program rule. It leaves orders under $5 to others and refuses to fill on stale prices. Anyone can run a filler; the script is in the repository.
Launch markets
40% of curve and graduated-pool fees, 1% at graduation, 1% of supply
- Paid by
- Traders of a basket's launch token on Meteora
- Paid to
- Sheaf's treasury; the creator gets another 40% and Meteora keeps 20%
- How
- Meteora takes its share of every trading fee first and the rest is split evenly, on the curve and in the permanently locked pool it graduates into. At graduation the treasury also takes a 1% migration fee and 1% of the token's supply.
- Status
- Live on devnet. A launch token is its own market and is not a basket share.
Monthly plans
Free to open and to run
- Paid by
- Nobody, beyond each run's own dollar order
- Paid to
- —
- How
- Each run is a dollar order, so the protocol fee, the creator fee and the filler's margin apply to every run exactly as to any other order. Whoever sends a due run gets back the small account deposit it paid to place the order.
- Status
- Live on devnet.
Holding and redeeming
Free
- Paid by
- —
- Paid to
- —
- How
- No yearly fee and no exit fee. Redeeming burns shares and returns the stocks themselves, rounded down, for Solana's network fee.
- Status
- Live. No yearly fee will be added without legal advice first.
Selling for dollars
No protocol fee. Any filler: anywhere inside the seller's ±2% band. Sheaf's filler pays fair less 0.15%.
- Paid by
- The seller, through the auction
- Paid to
- Whichever filler takes the shares first
- How
- A sell order is the dollar order run backwards: the dollars offered start 2% above fair and fall to the seller's floor over 90 seconds. The filler redeems the shares for the stocks and sells them.
- Status
- Live on devnet since 9 Oct 2026.
| Line | Rate | Paid by | Paid to | How it works | Status |
|---|---|---|---|---|---|
| Protocol fee | 0.10% of shares created | Whoever creates shares: in kind, by dollar order or by a plan run | Sheaf's treasury | Minted as new shares and accrued in the basket; anyone can send the claim, which pays only the treasury. The vault still receives the full recipe, so what a share redeems for is unchanged. Written into the basket when it is created and can never change. | Live on devnet since 9 Oct 2026 for Solana baskets created from then on; baskets created before it carry none, for good. On EVM, dollar orders and plan runs through the v3 desks pay 0.10% to a separate treasury key the server does not hold (the earlier v2 desks paid it to the house key); in-kind EVM mints carry none, because the v1 baskets are immutable. |
| Creator fee | 0 to 1% of shares created | Whoever creates shares in that basket | The basket's creator | Chosen once when the basket is created (the composer suggests 0.25%) and paid in new shares, never out of the vault. | Live on devnet and on the five EVM testnets. Sheaf earns it only on the baskets it creates itself. |
| Filler margin | Any filler: anywhere inside the buyer's ±2% band. Sheaf's filler: 0.15% over fair. | The buyer of a dollar order or a plan run | Whichever filler delivers the stocks first | The auction offers a share count that starts 2% above fair and falls to the buyer's floor, 2% below it. Sheaf's filler fills once the dollars cover the stocks at fair plus 0.15%. Another filler can fill earlier for less, and the buyer gets that better count; one that waits longer earns more, up to the floor the buyer signed. | Sheaf's 0.15% is a policy of its filler, not a program rule. It leaves orders under $5 to others and refuses to fill on stale prices. Anyone can run a filler; the script is in the repository. |
| Launch markets | 40% of curve and graduated-pool fees, 1% at graduation, 1% of supply | Traders of a basket's launch token on Meteora | Sheaf's treasury; the creator gets another 40% and Meteora keeps 20% | Meteora takes its share of every trading fee first and the rest is split evenly, on the curve and in the permanently locked pool it graduates into. At graduation the treasury also takes a 1% migration fee and 1% of the token's supply. | Live on devnet. A launch token is its own market and is not a basket share. |
| Monthly plans | Free to open and to run | Nobody, beyond each run's own dollar order | — | Each run is a dollar order, so the protocol fee, the creator fee and the filler's margin apply to every run exactly as to any other order. Whoever sends a due run gets back the small account deposit it paid to place the order. | Live on devnet. |
| Holding and redeeming | Free | — | — | No yearly fee and no exit fee. Redeeming burns shares and returns the stocks themselves, rounded down, for Solana's network fee. | Live. No yearly fee will be added without legal advice first. |
| Selling for dollars | No protocol fee. Any filler: anywhere inside the seller's ±2% band. Sheaf's filler pays fair less 0.15%. | The seller, through the auction | Whichever filler takes the shares first | A sell order is the dollar order run backwards: the dollars offered start 2% above fair and fall to the seller's floor over 90 seconds. The filler redeems the shares for the stocks and sells them. | Live on devnet since 9 Oct 2026. |
There is no management fee and no fee switch: each basket's fees are part of its account and no instruction edits them. Sources, read 9 Oct 2026: Meteora, DBC fees; Sheaf, the Meteora lifecycle on devnet.
Beside the other basket products
Others already let you hold many assets in one place, and several are live on mainnet where Sheaf is not yet. None of the ones below, as far as their own docs say, pairs a token backed in kind with baskets anyone can publish, redemption by anyone, and dollar buying where the program reads no price.
Sheafdevnet and testnets
- Backing
- In kind: the exact stocks, in the basket's onchain vault
- Who can publish a basket
- Anyone
- Redeem in kind
- Yes, by anyone, at any time
- How a dollar buy is priced
- Fillers bid in an auction on share count; the program reads no price
- Recurring plans
- Yes, from $5 a run, one order for the whole basket
- Chains
- Solana, plus five EVM testnets
CestoColosseum Frontier winner
- Backing
- No basket token: you hold each asset in your own wallet
- Who can publish a basket
- Anyone can publish an idea; managed baskets go through a creator program
- Redeem in kind
- Not needed: you already hold the assets
- How a dollar buy is priced
- One swap per asset at quoted prices, not atomic
- Recurring plans
- Not stated
- Chains
- Solana
PeaksColosseum Frontier winner
- Backing
- Not stated
- Who can publish a basket
- Anyone, as agent-run portfolios
- Redeem in kind
- Not stated
- How a dollar buy is priced
- Not stated
- Recurring plans
- Not stated
- Chains
- Not stated
Symmetry
- Backing
- In kind: a vault token over the tokens it holds
- Who can publish a basket
- Anyone; a creator and up to ten managers, who can rebalance
- Redeem in kind
- Yes, burn for the underlying tokens
- How a dollar buy is priced
- Vault value and keeper auctions start from oracle prices
- Recurring plans
- Not stated
- Chains
- Solana
Kraken bundlesCrypto + xStocks, since Apr 30 2026
- Backing
- Held in your Kraken account, with Kraken as custodian
- Who can publish a basket
- Kraken only
- Redeem in kind
- Unbundle into the holdings inside Kraken
- How a dollar buy is priced
- Bought at Kraken's prices; Kraken+ makes conversions fee-free
- Recurring plans
- Not stated; bundles auto-rebalance on Kraken's schedule
- Chains
- Kraken; not offered in the US, UK, EEA, Canada or Australia
Bitget Wallet Basket
- Backing
- Self-custody: you hold each token in your wallet
- Who can publish a basket
- Curated themes, with community voting
- Redeem in kind
- Not needed: you already hold the tokens
- How a dollar buy is priced
- Swaps at market prices
- Recurring plans
- Automatic regular investments mentioned, details not stated
- Chains
- Solana and Robinhood Chain; memecoin baskets
Weavehackathon project
- Backing
- Not stated
- Who can publish a basket
- Creators publish thematic stock baskets
- Redeem in kind
- Not stated
- How a dollar buy is priced
- Not stated
- Recurring plans
- Not stated
- Chains
- Robinhood Chain, per its listing; deployment not confirmed
Basketbasketsolana.xyz
- Backing
- In kind: a share token over crypto tokens it holds; no stocks
- Who can publish a basket
- Not stated
- Redeem in kind
- Yes, for your portion of the underlying
- How a dollar buy is priced
- Not stated
- Recurring plans
- Not stated
- Chains
- Solana
Jupiter recurringa plan of single-token orders
- Backing
- No basket token: each order buys one token into your wallet
- Who can publish a basket
- You set up your own orders
- Redeem in kind
- Not needed: you hold the tokens
- How a dollar buy is priced
- Swaps at the route's price; 0.1% per order
- Recurring plans
- Yes, but at least $50 per order and 2 orders: a five-stock plan starts at $250 a month. The API does not support Token-2022 mints such as xStocks
- Chains
- Solana
Issuer ETF tokense.g. xStocks SPYx, QQQx
- Backing
- One token per ETF, backed 1:1 by the ETF share in offchain custody
- Who can publish a basket
- The issuer only
- Redeem in kind
- Through the issuer, after KYC, to a whitelisted wallet
- How a dollar buy is priced
- Issued at the underlying's market price; otherwise traded on DEXs
- Recurring plans
- Not stated
- Chains
- Ethereum, Solana, BNB Chain, Arbitrum and others
From each product’s own documentation, checked 9 October 2026: Cesto, Peaks, Symmetry, Kraken bundles, Bitget Wallet Basket, Weave, Basket, Jupiter recurring, Issuer ETF tokens. “Not stated” means we could not find it published, not that it is missing. Corrections are welcome.
What could still go wrong
The program can promise that a vault never holds less than its shares claim. It cannot promise anything about the tokens it holds, the people allowed to hold them, or the law. These are the limits, in plain words.
The issuers keep their own powers
Real xStocks give their issuer power to pause transfers and to move tokens (a permanent delegate), as any regulated tokenized stock does. Sheaf accepts those powers only when they belong to a known issuer, and refuses them from anyone else, so a basket creator can never add a backdoor. If an issuer paused or took tokens held in a vault, the shares backed by them would be short. The devnet mirrors carry a subset of these extensions; the program's tests run against real xStock mints cloned from mainnet.
Not everyone may hold xStocks
xStocks are not offered to US persons and are restricted in some other countries, and PreStocks set their own terms. A basket that holds them inherits those limits, so a mainnet Sheaf would have to check where its users are before letting them in.
Devnet is a rehearsal
Prices, multipliers and liquidity are read from mainnet, but every vault today holds devnet mirrors of the real mints, worth nothing. On mainnet the vaults would hold the real tokens, and dollar orders would need fillers buying real xStocks. Today two fillers run, both ours: Sheaf's house filler, and a second filler running the published reference code with its own key. Both deliver mirrors.
The program is not audited
The program and the EVM contracts have their own test suites, but nobody outside has reviewed them. The upgrade key is a deploy wallet on devnet. It moves to a multisig before mainnet, so new issuers can be added to the allowlist; it will never be used to move funds.
A basket of stocks may be a fund
A token backed by a basket of securities can look like a fund or an ETF to a regulator, depending on the country. Sheaf has no license or legal opinion yet. Before mainnet it needs a legal structure or a licensed partner, and may have to limit who can create or hold shares.
A launch token is not a share
The launch market's token trades on a curve priced from the basket's value, but it is not redeemable for the stocks, and it can trade far above what the basket holds. Only a basket share is backed.
What is live
Every price, 24-hour move, liquidity figure and dividend multiplier is read from Solana mainnet as you look at it.
Creation and redemption settle on devnet against mirrors of the same mints, with the same decimals, metadata, multipliers and transfer fees, though not every issuer extension the real mints carry (see the risks above). You can try the whole thing without spending money.
Solana is what makes it worth doing: issuing the instrument, taking custody of its backing and settling the trade happen in one transaction for a fraction of a cent.
- Components per basket
- 1 to 8
- Share decimals
- 6
- Protocol fee
- 0.10% of each creation, in shares (Solana baskets created from Oct 9)
- On the EVM chains
- the v3 desks pay the 0.10% to a separate treasury key the server does not hold (v2's went to the house key)
- Creator fee ceiling
- 1%
- Deposits
- round up
- Redemptions
- round down
- Prices the program reads
- none
- Recipe after creation
- immutable
- Creator's income
- up to 1% of each creation, in shares
- Sheaf's income
- the 0.10% protocol fee, then the house filler's 0.15% margin, then launch-market fees
- Launch market
- Meteora bonding curve
Built by Rohan Borade, solo, in India. The code, the program and every script behind these pages are on GitHub.