SHOOK / OFFICIAL PROTOCOLDocumentation
MAINNET EDITIONOpen SHOOK
Markets / SHOOK

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,000

Endpoints

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.

A complete buy from zero

ComponentETH
Refundable reserve principal450
Creator contribution50
Creator trading fee2.5
Reserve fee2.5
Total buyer payment505

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.

SHOOK docs Official protocol · Mainnet parameters