Langsung ke konten utama
Halaman ini diterjemahkan secara otomatis oleh AI. Versi bahasa Inggris adalah acuan resmi.Lihat versi bahasa Inggris →

Apa itu bonding curve

Bonding curve adalah fungsi harga deterministik p(s) yang menghubungkan harga token dengan jumlah yang saat ini beredar (s singkatan dari “supply sold”). Pembeli melakukan pembelian dengan mengirim collateral ke kontrak; kontrak mengeluarkan unit token baru dengan harga marginal yang ditentukan oleh kurva. Penjual mengembalikan unit token dan menerima pengembalian dana terintegrasi. Dua properti utama dibandingkan dengan pool CPMM:
  • Tidak perlu counterparty. Kontrak penerbit adalah market maker; likuiditas ada berdasarkan ketetapan.
  • Harga monoton. Harga naik dengan setiap net-buy dan turun dengan setiap net-sell.
Bonding curve adalah mekanisme peluncuran standar ketika entitas penerbit tidak ingin pre-seed pool AMM dengan collateral.

Formula penetapan harga umum

Untuk setiap fungsi harga kontinu p(s): Harga spot pada supply s:
Biaya untuk membeli supply dari s_0 ke s_1 (dengan s_1 > s_0):
di mana P(s) = ∫ p(s) ds adalah antiturunan kurva. Secara geometris, cost adalah area di bawah p antara s_0 dan s_1. Hasil dari penjualan supply kembali dari s_1 ke s_0:
(Simetri: membeli dan menjual di selang yang sama menukar collateral yang sama — terlepas dari biaya.) Harga rata-rata untuk pembelian:

Keluarga kurva umum

Linear

Harga naik sebanding dengan supply. Digunakan untuk peluncuran “stabil” di mana penerbit menginginkan markup yang dapat diprediksi dan moderat selamanya.

Kuadratik

Harga naik secara kuadratik. Pembeli awal mendapatkan harga mendekati nol (wilayah mulai datar); pembeli akhir membayar premium yang lebih curam. Ini adalah tipe kurva yang menjadi default LaunchLab (curve_type = 0).

Virtual-reserves CPMM (gaya Pump)

Kurva adalah CPMM standar dengan reserve quote awal pura-pura V_q:
Harga spot:
Biaya untuk bergerak dari s_0 ke s_1:
Varian ini memiliki properti elegan bahwa pada kelulusan (di mana s = S_graduate), harga marginal sama dengan harga pembukaan pool CPMM hilir yang disemai dengan reserve (S_max − S_graduate, V_q + cost(0, S_graduate)). Pengalihan lancar. LaunchLab mengekspos ini sebagai curve_type = 1.

Implementasi diskrit

On-chain, s dan cost keduanya adalah bilangan bulat (satuan denominasi terkecil). Integral kontinu cost(s_0, s_1) dihitung langsung dari bentuk tertutup kapan pun ada (linear, kuadratik). Untuk kurva tanpa invers bentuk tertutup (kuadratik, diberikan cost, temukan s_1), iterasi Newton digunakan:
LaunchLab membatasi iterasi pada ~10 dan kembali dengan NotConverged jika residual masih di atas toleransi. Praktiknya ini hanya terpicu di dekat ekstremitas domain; swap produksi konvergen dalam 2–3 iterasi.

Integrasi biaya

Biaya diterapkan di atas biaya kurva, bukan di dalamnya. Pada pembelian:
Pada penjualan:
Bagian LP dari biaya disimpan di quote_vault dan secara efektif membuat kurva lebih kaku untuk pembeli kemudian — reserve tumbuh tanpa mengeluarkan lebih banyak supply. Bagian protokol dan kreator dilacak dalam penghitung terpisah untuk penyapuan kemudian.

Ambang kelulusan

Kurva “lulus” ketika telah menerima cukup collateral untuk seed pool AMM eksternal dengan harga yang cocok dengan harga kurva saat ini. Untuk kurva kuadratik dengan parameter (k, S_max, S_graduate):
Setelah quote_vault ≥ quote_to_graduate, instruksi Graduate membuat pool CPMM dengan:
Untuk kurva virtual-reserves, dengan konstruksi:
Untuk kuadratik, kesetaraan bersifat aproksimasi; “slop” diserap ke dalam pembulatan S_graduate (biasanya 0.8 · S_max) dan surplus collateral dari pembelian penyeberangan ambang akhir.

Impermanence vs pool CPMM

Peluncuran bonding-curve murni memiliki tidak ada impermanence dalam pengertian Uniswap: tidak ada “sisi lain” pasar untuk menyeimbangkan kembali. Kurva mengeluarkan supply sesuai permintaan, dan satu-satunya “LP” adalah kontrak itu sendiri. Pasca-kelulusan, pool CPMM yang dihasilkan berperilaku seperti pool CPMM lainnya — jika LP tidak dibakar, mereka tunduk pada dinamika impermanent-loss biasa. Inilah mengapa kebijakan burn pasca-kelulusan dominan dalam peluncuran publik: ini membuat pool permanen dan menghilangkan setiap kejutan harga yang didorong oleh penarikan LP.

Contoh terselesaikan

Kurva: kuadratik, k = 40, S_max = 1e9, S_graduate = 0.8 · S_max = 8e8. Biaya pembelian 1%.

Harga pada s = 5e8

10 unit quote per unit base.

Biaya pembelian pertama 1e6 base

Dengan biaya 1%:

Ambang kelulusan

Harga pada kelulusan

Reserve CPMM pasca-kelulusan

(Unit: desimal perlu dilacak dengan hati-hati; contoh bersifat ilustratif.)

Pointer

Sumber:
  • Kode sumber program Raydium LaunchLab (implementasi kurva kuadratik + virtual-reserves).
  • Bancor white paper (linear bonding curves, historis).
  • Postmortem publik Pump.fun (varian virtual-reserves).