Documentation
The Snowball Engine
How a snowball works, end to end.
The loop
Every coin here launches on a Meteora Dynamic Bonding Curve priced in SOL, with trading fees collected in SOL rather than in the token. Those fees are the fuel.
Of every fee a pool charges, 90% is spent buying that same coin back and 10% is platform revenue. Creators take no cut of trading fees, so nothing is skimmed between the trade and the buyback.
Nothing about that is new on its own. What is new is that the loop does not run at a fixed rate.
Every coin funds only itself
There is no shared treasury. Each coin has its own SOL reserve, credited only by fees from its own pool and spent only on its own curve. A coin doing enormous volume does not subsidise a quiet one, and a quiet one is never drained to prop up anything else.
The keeper claims fees per pool, tracks the balance per coin, and sizes each buy against that single balance. If a coin has never traded, its reserve is zero and its engine does nothing: it cannot spend what it has not earned.
Three coins on the platform at the same moment. No SOL crosses between them.
Heat
Each tick, the engine reads the pool’s cumulative fee counter on chain and works backwards to the volume traded since the last tick. That gives a velocity in SOL per second, which it compares against the token’s own trailing baseline, an EWMA with a 6-hour half-life.
The ratio between the two is the surge. A token trading 12× its own normal reads as full heat. Surge is blended 60% / 40% with raw absolute velocity, so a genuinely huge token cannot go cold simply by being consistently busy, and a tiny one cannot fake an avalanche off a single trade.
What heat controls
Three things, all at once:
- How much it spends. From 10% of the reserve when quiet to 50% when hot, on a convex curve (γ = 1.6) so it stays patient until the move is real. It never empties the reserve, so there is always powder left for the next tick. Each buy is then jittered by up to 30% either way, so the size cannot be predicted from public state and front-run.
- How much it burns. From 50% to 100% of everything bought. The remainder is vaulted rather than burned, so a cold token keeps some dry powder in token form.
- Nothing about the timing. Every coin is considered every 15 seconds, hot or cold. Heat changes how hard the engine pushes, never how often. A tick whose reserve cannot cover the minimum buy simply passes, which costs nothing.
Sampled live from the engine against a 4 SOL reserve and a quiet baseline. Deploy is shown as the band each tick lands in once jittered.
The fee rises when it gets violent
The 4% is a floor, not a fixed rate. Meteora’s dynamic fee sits on top of it and tracks a volatility accumulator: a number that climbs as the price moves and decays back down when it stops.
The two are simply added, then capped. Calm market, the variable part is zero and the fee is exactly 4%. As volatility builds, it climbs toward 4.8%.
Read from the deployed config: base numerator 40,000,000 plus a variable part capped at 7,999,844 of 1,000,000,000.
It can never go below the floor. The variable component only ever adds. A trader is never charged less than 4%, so the coin’s reserve is never starved by quiet conditions.
The timing is the point. Volatility and volume arrive together, so the surcharge lands exactly when the engine is already hot and spending hardest. A violent hour pays the reserve about 20% more per SOL traded than a calm one, on top of the larger volume itself. The decay period is two minutes, so the fee falls back to the floor shortly after things settle.
Why it compounds
A buyback is itself a trade on the curve, so it pays the same 4% fee, 90% of which lands straight back in that coin’s own reserve. It also moves the price up, which pulls in the next trader. Volume feeds heat, heat feeds buybacks, buybacks feed volume. That is the snowball.
There is no opening surcharge and no decay schedule on the base rate, so the first buyer pays exactly what everyone after them pays.
The limits
It is a flywheel, not a ratchet. If nobody trades, no fees accrue, the reserve stays empty and the engine does nothing. By design it never spends money it did not earn from that token’s own volume. Single buys are capped at 25 SOL, and anything under 0.02 SOL is skipped so transaction costs never exceed the buy. Once a pool graduates to DAMM v2 the curve-side engine stops.