$500 Starting MC
🎯 Goal
Update Moonbound’s bonding curve so that:
The first buyers pay non-zero price
The bonding curve starts at a $500 market cap
The curve still graduates at exactly $50,000 market cap
All pricing remains consistent across different token supplies
✅ Updated Pricing Formula
Replace your current pricing logic with this:
price(s)=Pgraduation⋅(s+s0S)2\boxed{ \text{price}(s) = P_{\text{graduation}} \cdot \left( \frac{s + s_0}{S} \right)^2 }price(s)=Pgraduation​⋅(Ss+s0​​)2​
Where:
s: tokens sold so far from the curveS: total bonding curve supply =maxSupply × 0.75P_graduation = 50,000 / maxSupplys₀: a small offset to shift the curve right and lift early prices
🧮 Offset Calculation (for $500 starting cap)
To preserve a total curve market cap of exactly $50,000, calculate:
s0=−S2−3⋅S⋅−Pgraduation⋅S+6000006⋅Pgraduation\boxed{ s_0 = -\frac{S}{2} - \frac{\sqrt{3} \cdot \sqrt{S} \cdot \sqrt{-P_{\text{graduation}} \cdot S + 600000}}{6 \cdot \sqrt{P_{\text{graduation}}}} }s0​=−2S​−6⋅Pgraduation​​3​⋅S​⋅−Pgraduation​⋅S+600000​​​
This offset only affects the price curve, not token accounting. It ensures the area under the curve (total raised KAS) still sums to $50,000 equivalent.
🔢 Examples
Example 1 — 1,000,000 Max Supply
maxSupply = 1,000,000S = 750,000P_graduation = 50,000 / 1,000,000 = 0.05
Plug into the formula:
s0≈426.776s_0 \approx 426.776s0​≈426.776
So pricing becomes:
price(s)=0.05⋅(s+426.776750000)2\text{price}(s) = 0.05 \cdot \left( \frac{s + 426.776}{750000} \right)^2price(s)=0.05⋅(750000s+426.776​)2
This starts the curve at ~$0.000002 or higher, generating ~$500 from early buys, and still ends at exactly $50k market cap when s = S.
Example 2 — 10,000,000 Max Supply
S = 7,500,000P_graduation = 0.005
s0≈1347.150s_0 \approx 1347.150s0​≈1347.150
Pricing formula becomes:
price(s)=0.005⋅(s+1347.1507,500,000)2\text{price}(s) = 0.005 \cdot \left( \frac{s + 1347.150}{7,500,000} \right)^2price(s)=0.005⋅(7,500,000s+1347.150​)2
Example 3 — 100,000 Max Supply
S = 75,000P_graduation = 0.5
s0≈45.825s_0 \approx 45.825s0​≈45.825
Pricing becomes:
price(s)=0.5⋅(s+45.82575000)2\text{price}(s) = 0.5 \cdot \left( \frac{s + 45.825}{75000} \right)^2price(s)=0.5⋅(75000s+45.825​)2
💡 Implementation Notes
Keep your existing
SandP_graduationlogicInject this new pricing formula into the contract or pricing helper
sâ‚€can be calculated off-chain at token launch and stored as a constant for that token
Last updated