How fills work

Every simulated order fills in the coin's real PumpSwap pool, at a real trade, with that trade's fee.

The order

When you place an order, it waits for the coin's next real trade, at least one Solana slot later, and fills against the coin's pool exactly as that trade left it. If the coin is quiet, it fills after about a second (three Solana slots) at the pool's current state, but only while our live pool data is flowing: a pool's price only moves with a trade, and by then every trade of those slots has reached us. Your order never reaches the real market: it does not move the price for anyone, and nobody trades against it.

The price

A graduated pump.fun coin trades in its PumpSwap pool, which keeps one number constant: its SOL (real plus a virtual reserve the pool reports) times its tokens. A buy gets the tokens that keep that product, a sell gets the SOL that keeps it, so the price impact of your size is in every fill, the same as on-chain. Every trade in the pool reports the pool's reserves, its fees and the token supply; we read them from the chain as they happen, through Solana's own public websocket. No chart, aggregator or price API is involved.

Fees

Each fill pays the fee the coin's latest real trade paid: the pool's LP fee, the protocol fee and the creator fee together, usually 0.3 % to 1.25 %. We add no network fee, no platform fee and no spread.

Limits on an order

Checked against the chain

We replayed 262 real PumpSwap trades from four pools through the same code and compared each result with what the chain recorded: the largest difference was 0.0003 %, from rounding the fee to whole basis points. On the bonding curve, 5,546 trades matched within 0.0002 %.

What we do not model

Records

Every order is stored with the slot it was placed in, the slot it filled in, the tokens, the SOL and the fee. If a fill looks wrong, send us its order number at and we recompute it from the recorded pool state.