Curve and worked examples
The official coefficients, price derivative, and fee-inclusive arithmetic.
Reserve equation
Let S be circulating SHOOK in whole tokens, C = 500,000,000 SHOOK, and x = S / C. The official curve uses the following ETH-valued coefficients. The contract evaluates this with 18-decimal fixed-point arithmetic and integer truncation.
A = 55.757887851558124 ETH
B = 338.484224296883752 ETH
R(x) = A·x + B·x² + A·x³
p(S) = (A + 2·B·x + 3·A·x²) / 500,000,000Endpoints
At zero circulation the marginal reserve price is about 0.000000111515776 ETH per SHOOK. At 500M circulation the curve holds 450 ETH and its marginal reserve price is 0.0000018 ETH per SHOOK.
The seed ratio at graduation uses reserve principal divided by the marginal reserve price. This preserves the reserve-price handoff; it does not preserve an all-in fee-inclusive execution price.
From zero to 500M with no sells
This example assumes formation starts at zero circulation and reaches the full 500M SHOOK target with no sells along the way. It shows a one-way buy through the curve, not cumulative trading volume or a cap on creator revenue. A reduced graduation target produces different endpoint amounts.
| Component | ETH |
|---|---|
| Refundable reserve principal | 450 |
| Creator contribution | 50 |
| Creator trading fee | 2.5 |
| Reserve fee | 2.5 |
| Total buyer payment | 505 |
A 9 ETH reserve increase
If the reserve increases by exactly 9 ETH for a trade, formation gross is 10 ETH. Creator contribution is 1 ETH. Trading fees add 0.1 ETH: 0.05 ETH to the creator and 0.05 ETH to the reserve vault. The buyer pays 10.1 ETH before gas.
A 10 ETH reserve decrease
If returned SHOOK decreases the reserve by exactly 10 ETH, the seller receives 8.9 ETH. The creator accrues 1 ETH and the reserve vault receives 0.1 ETH. The buy and sell fee bases are intentionally different.
Rounding and executable quotes
Human-readable equations are explanatory. reserveAt computes x, x², and x³ with integer arithmetic. Exact output buys round gross upward; each fee split rounds as implemented. Exact output sells binary-search the minimum token input and route surplus refund rounding to reserve. Use the contract quote methods in base units for executable values.
Source reference
Checked against the source shipped with this documentation. Contract calls and units are detailed in the contract reference.
Imported source files 15
Supporting contracts, interfaces, and libraries imported by the sources above, including their dependencies.