Protokol Tinyman AMM V2.0

Nov 25 2022
Kemarin kami mengumumkan versi baru protokol Tinyman AMM yang akan hadir pada Januari 2023. Dalam postingan blog ini, kami ingin memberikan ikhtisar tentang protokol baru dan menjelaskan langkah selanjutnya.
Protokol Tinyman AMM v2.0

Kemarin kami mengumumkan versi baru protokol Tinyman AMM yang akan hadir pada Januari 2023. Dalam postingan blog ini, kami ingin memberikan ikhtisar tentang protokol baru dan menjelaskan langkah selanjutnya. Kami memberikan detail ini lebih awal sebelum peluncuran untuk memberikan waktu yang cukup bagi pengguna dan proyek ekosistem untuk membiasakan diri dengan protokol baru dan mempersiapkan migrasi.

Sejak peluncuran Tinyman AMM pada Oktober 2021, ada banyak peningkatan pada protokol Algorand yang memungkinkan aplikasi melakukan hal-hal yang lebih kompleks dan menarik sekaligus meningkatkan keamanan dan menghilangkan beberapa titik gesekan. Selama 6 bulan terakhir, kami telah bekerja merancang, membangun, dan menguji implementasi baru Tinyman AMM yang memanfaatkan peningkatan ini.

Beberapa sorotan dari protokol baru ini meliputi:

  • Perhitungan output yang dinamis untuk menghilangkan kebutuhan akan penukaran
  • Penambahan dan penghapusan likuiditas yang fleksibel
  • Pinjaman flash & flash swap
  • Pengaturan biaya dinamis
  • Komposabilitas penuh dan interoperabilitas
  • Pemeriksaan keamanan tambahan
  • Peningkatan keterbacaan kontrak

Tinyman AMM V2 tidak memiliki izin

Tinyman AMM V2 tidak dapat diubah (tidak dapat diupgrade)

Tinyman AMM V2 tidak memiliki kunci admin untuk menjeda aktivitas atau menguras kumpulan

Tinyman AMM V2 transparan dan open source

Tinyman AMM V2 diaudit

Tinyman AMM V2 masih sangat cepat dan murah untuk digunakan

Tidak Ada Lagi Penebusan

Salah satu peningkatan terpenting pada protokol Algorand selama setahun terakhir adalah pengenalan Transaksi Dalam. Ini memungkinkan kontrak untuk membuat transaksi secara terprogram. Hal ini memungkinkan Tinyman untuk secara dinamis menghitung output swap dan mengeluarkan transaksi untuk jumlah output penuh. Kontrak masih dengan aman memastikan bahwa jumlah minimum yang diharapkan diterima.

Ini menghilangkan sumber utama gesekan dan kebingungan dan akan segera menghasilkan pengalaman pengguna yang lebih baik.

Tidak Ada Lagi Keikutsertaan Aplikasi

Sekarang kami tidak perlu lagi mendukung penukaran, kami juga tidak perlu menyimpan per status pengguna di rantai. Ini memungkinkan kami menghapus persyaratan untuk Keikutsertaan ke aplikasi kontrak Tinyman. Ini akan membebaskan beberapa persyaratan saldo minimum pengguna Tinyman dan menghilangkan sumber gesekan lainnya.

Keikutsertaan Aset masih diperlukan tetapi kami sekarang dapat mengelompokkannya dengan swap dan operasi lainnya sehingga pengguna tidak perlu menandatanganinya secara terpisah. Ini akan mempercepat proses dan mengurangi langkah-langkah yang terlibat untuk swap.

Manajemen Likuiditas Lebih Fleksibel

Kami melihat bahwa pola yang sangat umum di antara pengguna yang ingin menjadi pooler adalah menukar beberapa aset ke yang lain dan kemudian menyetor jumlah yang sama dari keduanya di pool. Kami telah menambahkan fitur yang mengotomatiskan langkah ini pada tingkat protokol sehingga pengguna dapat menambahkan likuiditas ke kumpulan dengan hanya satu aset kumpulan dalam satu operasi. Ini juga fleksibel sehingga pengguna dapat menambahkan apa pun yang mereka miliki dari setiap aset dan kumpulan akan menyeimbangkan semuanya dan mengeluarkan jumlah token kumpulan yang benar untuk nilai gabungan.

Manajemen likuiditas yang fleksibel di Tinyman v2

Sangat penting untuk dipahami bahwa pengguna masih memiliki paparan terhadap kedua aset saat menggunakan teknik ini. Pertukaran internal implisit hanyalah fitur kenyamanan pengguna. Penting juga untuk dipahami bahwa fitur ini paling cocok untuk pooler kecil. Masih perlu ada beberapa penyatuan dengan likuiditas yang signifikan di kedua aset untuk membuat kumpulan yang seimbang sejak awal.

Fitur ini juga memastikan bahwa semua likuiditas pengguna dalam token LP diperhitungkan dengan benar, bahkan jika mereka memasok likuiditas dengan rasio yang salah. Ini meningkatkan keamanan untuk pooler baru selama periode volatilitas tinggi.

Protokol sekarang juga mendukung penghapusan likuiditas hanya dalam satu aset. Ini kebalikan dari kasus di atas, di mana pertukaran internal implisit terjadi sebelum mengembalikan dana kepada pengguna sebagai aset yang dipilih.

Kedua fitur ini memungkinkan kami meningkatkan pengalaman pengguna dengan menyederhanakan alur umum. Mereka juga, bagaimanapun, meletakkan dasar untuk interaksi kontrak-ke-kontrak yang jauh lebih kompleks.

Komposabilitas dan Interoperabilitas

Sekali lagi kami telah memanfaatkan peningkatan protokol Algorand terbaru untuk merancang protokol V2 agar sepenuhnya dapat disusun dan dioperasikan. Ini berarti bahwa transaksi Tinyman V2 dapat ditempatkan di dalam grup atom yang sama dengan transaksi lainnya dan Tinyman V2 dapat dipanggil dari kontrak lain.

Hal ini memungkinkan kami dan orang lain untuk membangun fitur di atas protokol untuk pertukaran multihop atom, pesanan batas, metapool, dan banyak lagi. Fitur-fitur ini akan membantu meningkatkan pengalaman pengguna untuk penukar sambil juga mendorong lebih banyak volume ke kumpulan Tinyman dan menghasilkan lebih banyak biaya untuk kumpulan.

Flash Loans & Swap

Salah satu fitur yang memanfaatkan komposisi ini adalah Flash Loans. Kami sekarang memiliki dukungan untuk ini dibangun ke dalam protokol sehingga pengguna dapat mengambil pinjaman tanpa agunan dari kumpulan selama mereka melunasinya dalam grup transaksi yang sama. Ini mungkin tampak seperti fitur yang tidak berguna tetapi berkat sifat protokol yang dapat dioperasikan dan ruang Algorand DeFi yang sedang berkembang, akan ada banyak peluang untuk menghasilkan keuntungan dalam satu blok. Ini adalah fitur yang kompleks dan hanya ditujukan untuk digunakan oleh orang-orang dengan pengetahuan mendetail tentang protokol dan strategi DeFi dan karenanya tidak akan disertakan dalam UI web. Dimasukkannya fitur ini didorong oleh filosofi inti kami dalam menyediakan alat keuangan untuk semua orang, terlepas dari kekayaan mereka.

Pertukaran flash dan pinjaman bebas risiko untuk protokol (dalam arti finansial) dan memberikan sumber pendapatan tambahan untuk penyatuan.

Biaya yang Dapat Disesuaikan

Tinyman AMM V1 memiliki biaya swap tetap sebesar 30 basis poin yang dibagi 5:1 antara pooler dan protokol. Ini telah melayani pengguna dengan baik sampai sekarang, tetapi ada kasus di mana opsi biaya lain akan lebih sesuai. Untuk aset yang dipatok/stabil, biaya yang lebih rendah yang menyebabkan dampak harga yang lebih kecil akan menguntungkan para penukar. Peningkatan volume karena biaya yang lebih rendah juga harus menguntungkan poolers. Alih-alih memecah-mecah likuiditas di beberapa kumpulan untuk tingkatan biaya berbeda dari pasangan aset yang sama, protokol V2 memungkinkan biaya kumpulan disesuaikan dari waktu ke waktu. Semua kumpulan akan dimulai dengan default (sama seperti V1) tetapi tarif biaya dapat diubah oleh akun Penyetel Biaya dalam batas yang diizinkan.

Biaya yang Dapat Disesuaikan pada Tinyman v2

Maksudnya di sini adalah bahwa Fee Setter awalnya akan menjadi akun yang dikendalikan oleh tim inti Tinyman dan biaya hanya akan disesuaikan untuk pasangan stable/pegged. Nantinya kami bermaksud untuk memperkenalkan fitur yang memungkinkan penyatuan untuk secara kolektif memutuskan biaya untuk kumpulan mereka. Pada akhirnya kami bermaksud agar semua biaya dapat dikontrol oleh Tinyman DAO jika ada. Protokol ini dirancang agar fleksibel dalam hal ini sehingga tanggung jawab untuk penetapan & pengumpulan biaya dapat didelegasikan ke kontrak pintar atau akun eksternal dan dapat dibatalkan jika perlu. Hal ini memungkinkan aturan dan mekanisme mengenai biaya berubah dari waktu ke waktu tanpa mempengaruhi aspek lain dari protokol. Rincian lebih lanjut akan diberikan sebelum peluncuran tentang kebijakan seputar perubahan biaya.

Protokol yang Lebih Aman dan Transparan

Dengan protokol apa pun, ada asumsi desain dan batasan teknis yang melekat. Kami sebelumnya telah mendokumentasikan ini untuk V1 dan menerapkan pengamanan di UI agar pengguna tidak menggunakan protokol dengan cara yang tidak terduga. Dengan Tinyman V2 kami dapat melangkah lebih jauh dan menegakkan beberapa di antaranya di tingkat protokol.

Tinyman Comic Ch#1

Ada sejumlah invarian matematis/logis yang harus ada dalam protokol. Di Tinyman V2, ini secara eksplisit diperiksa setelah setiap operasi untuk memastikan bahwa meskipun dengan perilaku yang sangat tidak terduga, kumpulan tidak dapat kehilangan nilainya.

Protokol hanya dapat aman jika dapat dengan mudah dibaca, dipahami, dan ditinjau oleh banyak orang independen. Untuk membantu dalam hal itu kami telah menempatkan pekerjaan ke sejumlah bidang:

  • Kode sumber kontrak yang dapat dibaca — Kami telah mengembangkan bahasa baru untuk Algorand, Tealish , yang memungkinkan kami untuk mengekspresikan logika dan niat kami dengan jelas pada tingkat tinggi sambil mengompilasi ke Teal tingkat rendah yang dapat dibaca. Fergal Walsh (Tinyman CTO) akan berbicara tentang Tealish dan bagaimana Tealish digunakan untuk V2 di Decipher 2022 .
  • Tinyman menciptakan Tealish
  • Audit yang dapat diaudit — Spesifikasi dan kontrak protokol telah dianalisis dan diaudit di berbagai tingkatan untuk mencoba mengidentifikasi berbagai jenis masalah. Ini termasuk analisis dan pemodelan spesifikasi, kode sumber Tealish dan kode Teal yang dihasilkan yang pada akhirnya dijalankan di AVM. Kami telah bekerja sama dengan auditor untuk membuat proses audit lebih transparan dari biasanya. Kami akan menerbitkan posting blog lain tentang ini dalam beberapa minggu mendatang dengan referensi ke laporan dan semua materi pendukung.
  • Bug Bounty — Kami telah bekerja sama dengan Algorand Foundation dan Immunefi untuk membuat program bug bounty dengan hadiah hingga 250.000 USD untuk masalah kritis. Program ini langsung tayang dan akan tetap aktif setelah peluncuran Mainnet.
  • Kontrak dan spesifikasi publik open source — Kami telah menerbitkan kontrak sumber, menghasilkan Teal, dan bytecode akhir bersama dengan dokumen desain dan spesifikasi protokol. Ini memungkinkan siapa saja untuk meninjau detail protokol untuk memastikan penerapannya sesuai dengan harapan mereka.

Kami sering ditanya mengapa tidak ada Tombol Merah Besar bagi Tinyman untuk menghentikan kontrak jika terjadi kesalahan. Pertanyaan ini lebih banyak muncul setelah insiden malang di bulan Januari. Saat mendesain V2, kami banyak memikirkan pertanyaan ini. Bisakah kita menerapkan fungsi jeda? Bagaimana cara kerjanya? Siapa yang bisa mengendalikannya? Siapa yang bertanggung jawab untuk memanggilnya? Apa yang terjadi setelah jeda? Kami akan menjelaskan lebih lanjut tentang ini di posting mendatang tentang masalah keamanan, tetapi kami akhirnya sampai pada kesimpulan yang sama dengan yang kami miliki saat mendesain V1; tidak ada mekanisme jeda yang aman dan berguna yang tidak akan mengganggu nilai inti Tinyman dan DeFi secara umum. Mekanisme jeda tanpa kontrak yang dapat ditingkatkan tidak terlalu berguna dan kontrak yang dapat ditingkatkan adalah sisi lain dari garis yang tidak ingin kami lewati. Kontrak yang dapat ditingkatkan akan memungkinkan tim Tinyman (atau penyerang) untuk mengubah aturan protokol dan berpotensi menjaga likuiditas. Tujuan utama DeFi adalah untuk menghindari kemungkinan seperti itu.

Dana Anda, Keputusan Anda

Kami sebagai tim sangat senang dengan protokol baru ini dan telah sibuk membangun UI baru dan lebih baik di sekitarnya. Kami percaya pengguna akan memiliki pengalaman yang jauh lebih baik secara keseluruhan pada protokol baru, tetapi pada akhirnya itu adalah keputusan Anda sebagai pengguna protokol. Saat Anda menempatkan dana Anda di V1, Anda setuju bahwa mereka akan terikat oleh aturan dan logika kontrak V1. Secara desain, kami tidak dapat mengubah aturan tersebut untuk memindahkan likuiditas Anda ke V2. Itu harus menjadi keputusan Anda. Kami mendorong semua pooler di V1 untuk membaca detail protokol dan laporan audit independen dan memutuskan sendiri apakah mereka ingin memigrasikan likuiditas mereka ke V2. Protokol V1 akan terus hidup di Algorand Mainnet untuk selamanya dan kami akan terus mendukung kumpulan yang ada di UI web di masa mendatang.

Tinyman mengumumkan protokol AMM v2

Langkah selanjutnya

Kami harap Anda sama bersemangatnya dengan kami tentang V2. Namun ini baru permulaan! Kami juga memiliki banyak peningkatan UI yang akan diluncurkan dengan protokol V2. Kami akan membahas ini di posting blog lebih lanjut selama beberapa minggu mendatang. Pasca peluncuran, akan ada peningkatan dan fitur tambahan yang dibangun di atas fondasi yang disediakan oleh protokol V2.

Kami juga akan memiliki postingan tambahan tentang rencana migrasi sebelum peluncuran.

Sementara itu, kami sarankan Anda membiasakan diri dengan detail protokol dan mengajukan pertanyaan di ruang komunitas kami.

Referensi

Dokumentasi & Spesifikasi Protokol V2

Repositori Kontrak V2

Laporan Audit Kontrak V2

Repo Tealish

Program Bounty Bug Immunefi (Tautan akan ditambahkan)