ALLOY A token you can melt · 5 metals · owner: none alloyv4.xyz · @alloy_eth
Drag to stir the crucible
Tap to pour ether in

ETH · wstETH · WBTC · USDC · PAXG, in one token

Melt it down.

Every trade pays into a strongroom of five metals. Any holder, at any moment, can burn ALLOY and walk out with their exact share of all five.

Charge what goes into the crucible

Five metals. One ingot.

A crucible is charged by weight. ALLOY's is charged by value: every wei of duty the pool takes lands in the Strongroom as ether, and is smelted, a little at a time, toward these five targets.

Tap a band. Prices come from each pool's own 30 minute average (its TWAP), read at mainnet fork block 26,049,355: ETH $2,694, BTC $84,756, gold $4,265 an ounce. Never a spot price, never anybody's feed.

Furnace ether becomes metal

Run the furnace.

Anyone may fire the furnace. Each smelt buys the metal furthest below target, through Uniswap's deepest pool for it, in a piece no larger than that pool can safely absorb. The caller is paid its gas.

This bench runs the Strongroom's own rules: the ether above its own 20%, the metal's shortfall and the metal's cap, whichever is smallest, and never a smelt under 0.02 ETH. Choose how costly each fill is and watch the moulds fill.

MetalRouteCapSlippage
wstETHwstETH / WETH 0.01%0.2 ETH0.10%
WBTCWBTC / WETH 0.30%1.0 ETH1.00%
USDCUSDC / WETH 0.05%1.0 ETH0.50%
PAXGWETH, USDC, then PAXG / USDC 0.05%0.1 ETH0.60%
20 ETH
fee
Smelts0
Lost to fees0.00%
Furthest off target80.0 pts
Guard the sandwich that does not pay

Try to rob it.

A permissionless buyer is a target: buy first, let it buy at your price, sell after. ALLOY's furnace is built so that attack loses money on every route.

Pushing a pool by some fraction costs about fee x fraction x depth. The most it can take from a smelt is that fraction times the smelt. And the moment the pool's spot price sits further from its 30 minute average than the guard allows, the Strongroom refuses to trade through it at all.

Measured on a mainnet fork: pushing the real WBTC pool with 600 ETH moved its spot 602 ticks. Its 30 minute average did not move. The smelt was refused, and another metal was bought instead.

spot at its averageguard trips
Refused
Price pushed0.00%
You pay in fees + gas0
Your profit0
Melt the floor, in five metals

Burn it. Take the metal.

Burn n ALLOY and receive n / supply of everything in the Strongroom, in one transaction, straight from live balances. No price is read, so no price can be bent.

Paying out n / supply of each metal and burning n leaves every other holder's share exactly where it was. If ALLOY ever trades below what it melts for, buying and melting is profit, and that is what holds the price up. Nobody defends the floor. Arithmetic does.

If one metal cannot reach you (a stablecoin issuer can freeze an address), leave it behind. Your share of it stays in the vault for everyone else, and the rest is paid.

Your share0%
Melt value0
In dollars$0

Example reserve: a year at 10 ETH a day of volume and a 1.00% duty is about 36.5 ETH. Weights at their targets; dollar values from the fork prices above.

Duty what every trade pays in

The first hours are not free.

The duty is one percent of the ether leg of every swap, buy or sell, and every wei of it goes to the Strongroom. It opens at 5.00% on the first swap and falls in a straight line to 1.00% over 48 hours.

For the first 30 minutes no single swap may take more than 1% of the supply out of the pool. That rule lives in the hook, inside the swap, reading what the pool actually paid out. A cap written in a token's transfer function can be walked around by a v4 swap that settles as an ERC-6909 claim and moves no token at all. Another launchpad's own authors measured exactly that: 96.92% of a launch taken in its creator-only block.

Duty now5.00%
To the Strongroom0
Early capon

Hallmark what it is made of

Four contracts. No keys.

ContractWhat it doesSize
Alloy.solThe token. 1,000,000,000, fixed. Permit, burn. No owner, no tax, no pause, no blacklist.2,218 B
Strongroom.solHolds the five metals, prices them from 30 minute averages, smelts ether into them, pays redemptions.13,053 B
Crucible.solThe Uniswap v4 hook. Takes the duty in ether, straight to the Strongroom. Enforces the early cap. Pins the pool.5,195 B
HookDeployer.solStrikes the Crucible onto the address whose low bits are its permissions, 0x20CC. A miss reverts.702 B

Against the launchpad it answers

A typical v4 launchpad tokenALLOY
Who can change itAn owner sets fees, pauses, and can repoint the treasuryNobody. No owner, no setter, no proxy
What holders getDividends in one assetA claim on five: ETH, wstETH, WBTC, USDC, gold
What is behind the tokenNothingBurn for your exact share of the Strongroom, at any time
Anti-snipeIn the token, and walked around onceIn the swap, reading what the pool paid out
Cost to move the tokenReward bookkeeping on every transferA plain ERC-20

Measured on a mainnet fork, against the real pools

OperationGas
The Crucible on a buy+24,187
The Crucible on a sell+6,659
Smelt into wstETH, WBTC or USDC~375k to 385k
Smelt into PAXG, two hops~485k
Melt: burn and receive all five~218k

40 of 40 fork checks passing, including a real push of the WBTC pool, every metal bought through its real route, and a redemption of 15.48% of supply paid out to the unit. An economics model of 20,000 random redemptions found no holder ever diluted in any metal.

EIPs in the metal

EIPWhere
1153Transient storage: reentrancy locks, and the one pool allowed to call back during a smelt.
2612Permit: melt in one transaction, with a signature instead of an approval.
1014CREATE2: the hook is mined onto an address that spells its permissions.
6909Why the early cap lives in the hook: a claim-settled swap moves no token.
7702 / 8141Nothing reads tx.origin, so delegated wallets and frame transactions are nobody special.

Read this before an audit would