Bonding curve & pricing
The Arc deployment uses a phantom-reserve curve. A virtual quote reserve defines the opening price; it is a mathematical parameter, not deposited money that holders can withdraw.
Production parameters
Section titled “Production parameters”| Symbol | Meaning | Value |
|---|---|---|
S |
Total supply | 1,000,000,000 tokens |
A |
Curve allocation | 800,000,000 tokens |
Q₀ |
Phantom quote reserve | 3,333.333334 USDC |
T |
Net raise at graduation | 10,000 USDC |
Using consistent whole-token and whole-USDC units:
X₀ = A × (Q₀ + T) / Tk = Q₀ × X₀Q(x) = k / (X₀ − x) − Q₀P(x) = k / (X₀ − x)²x is the net number of curve tokens purchased, Q(x) is the corresponding reserve, and P(x) is the marginal price. Buying moves up the curve; selling moves back down it. Actual execution uses integer arithmetic and rounds at token and quote base-unit precision.
Opening and graduation FDV
Section titled “Opening and graduation FDV”For the current production settings, ignoring base-unit rounding:
| Point | Marginal token price | Fully diluted valuation |
|---|---|---|
| Opening | About 0.000003125 USDC | About 3,125 USDC |
| Curve completion | About 0.00005 USDC | About 50,000 USDC |
FDV means price multiplied by the full one-billion-token supply. It is different from the 10,000-USDC net graduation raise, trading volume, deposited liquidity, or a guaranteed exit value. Displayed USD values also assume USDC is worth one dollar.
Get executable quotes
Section titled “Get executable quotes”Call quoteBuyExactQuote(amount, buyer) or quoteSellExactTokens(amount) on the launch’s gauge. The buy quote accounts for that buyer’s anti-snipe treatment and the launch’s fee settings.
Do not use getCurrentPrice() alone to estimate a large order. It returns a marginal price in quote base units and can round to zero for small prices with a six-decimal quote. A non-zero trade can still have a valid executable quote. Trade-derived prices should retain decimal precision.
The quote excludes network gas. Another transaction can change the curve before yours executes; use a fresh quote and a non-zero minimum output.
Different thresholds can coexist
Section titled “Different thresholds can coexist”An owner can change the approved quote configuration for future launches without redeploying. Every existing gauge retains its own target, accessible through quoteTarget(), including after graduation. The reference canary deliberately used a 10-USDC target; that does not change the 10,000-USDC production default.