$STOCKFUN

The protocol token. It captures value from the whole launchpad, and applies to itself the rule it imposes on others.

The flywheel

flowchart LR A[Trade on any market] -->|0.5 % of every trade| B[BuybackBurner] B -->|buys on the pool| C[$STOCKFUN] C -->|sent to 0xdEaD| D[Circulating supply shrinks] D -.->|the protocol grows| A

Every trade, on every market, credits the buyback line, 0.5 % by default, to the buyback balance on the hook, owed to the BuybackBurner. The burner pulls that balance at the start of each burn, and anyone can send it there with claimBuybackFees(); since 2026-10-01 the hook no longer sends it during the trade. The burner has no owner of its own, no withdraw, no sweep: while the $STOCKFUN pool is locked, the only thing its current code can do with the ETH it receives is buy $STOCKFUN and send it to the burn address, which is hardcoded. Since 2026-10-05 StockFun's owner has one lever on it, rescue: a token sent to it by mistake, at any time, and its ETH only once no burn could spend it, before the protocol market is named or once the end mode has recovered the $STOCKFUN pool.

"Bought back then burned" is therefore a property of the code rather than a promise, as long as the burner is not upgraded: since 2026-10-02 StockFun's owner can upgrade it, with immediate effect, like every module but the tokens and the liquidity lock.

Its own market

$STOCKFUN has a TreasuryVault, on the Index basket, fed by the same 2 % as any market and airdropped to $STOCKFUN holders like any treasury. The protocol applies its own rule to itself. No $STOCKFUN is reserved for the team. Its airdrop cycles leave out the burn address, as on any market, and the launch operator, who holds the whole supply for the few blocks between the mint and the lock: since 2026-10-05 the launch script lists that address before the mint.

The buyback feeding that vault is not a flaw in the model, it is the flywheel: a $STOCKFUN purchase by the burner itself pays 5 %, of which 2 % returns to the protocol vault and 0.5 % to the next burn. The series converges.

What sets it apart

Launched market $STOCKFUN
Schedule 2 / 2 / 0.5 / 0.5 2 / 2.5 / 0.5
Creator A user, 2 % None; the line goes to the team
Treasury airdrop To the market's holders To $STOCKFUN holders
Supply 100 % in locked liquidity 100 % in locked liquidity, none reserved for the team
Launch Two positions One single-sided position

The schedules are the default settings of the tax, which StockFun's owner can change: see Fees.

The contract

$STOCKFUN is a plain ERC-20 and cannot be upgraded. Its whole supply, 1,000,000,000 tokens by default, is minted once, in the constructor, to the launch operator, who deposits all of it in the locked position: none is reserved for the team. It has no mint, no burn function, no pause, no blacklist, and no logic of its own beyond one setter and its rescues, which belong to StockFun's owner. The setter, setRecorder, names the holding recorder every balance change is reported to, since its treasury is airdropped to its holders too. If the report fails, the transfer fails: the one deliberate exception to the protocol's isolation rule, see Architecture. The rescues, since 2026-10-05, move out only what was sent to the token's own address by mistake.

The launch script, LaunchProtocol, requires the airdrop contract to be named on the factory first. It sets $STOCKFUN's exclusion list, with the launch operator, on the address the token will take, then deploys the token there and deposits its supply in the locked position. Since 2026-10-06 a run that stopped before the protocol market was named resumes with the token and the vault it left, which the script checks first, instead of minting a second $STOCKFUN. See Deployment.

The burn

"Burning" means sending to 0x000000000000000000000000000000000000dEaD. Total supply never moves — it is the circulating supply that shrinks, and the difference is verifiable by anyone with a balanceOf call.

That is more honest than a real burn: nothing hides behind a changing totalSupply, everything is a public balance.