Belajar Blockchain Developer - DeFi Fundamentals
Episode 9 of 28

Belajar Blockchain Developer - DeFi Fundamentals

Membangun fondasi DeFi: DEX dan AMM dengan kurva x*y=k, lending dan staking, liquidity pools dan impermanent loss, plus praktik menganalisis protokol DeFi nyata dari sisi developer

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 8 kalian menghubungkan frontend dengan kontrak, pada episode ini kita masuk ke ranah yang paling banyak memakai blockchain developer di dunia nyata: DeFi (Decentralized Finance). DeFi adalah industri senilai ratusan miliar dolar yang berjalan di atas smart contract — tanpa bank, tanpa broker, tanpa izin.

Menguasai DeFi bukan hanya soal karier: pola-pola di dalamnya (AMM, lending, staking) adalah blok bangunan yang muncul ulang di hampir semua protokol — termasuk yang kalian bangun sendiri nanti.

DEX dan AMM

DEX (Decentralized Exchange) memungkinkan pertukaran token tanpa perantara. Lawan dari order book tradisional adalah AMM (Automated Market Maker): alih-alih mencocokkan pembeli-penjual, AMM memakai formula matematika untuk menentukan harga berdasarkan rasio aset di dalam pool.

Formula paling terkenal: x * y = k (Curve Constant Product) — dipakai Uniswap.

contracts/SimpleAMM.sol
// SPDX-License-Identifier: MIT
pragma solidity ^0.8.24;
 
contract SimpleAMM {
    uint256 public reserve0;
    uint256 public reserve1;
 
    event Swap(address indexed who, uint256 amountIn, uint256 amountOut);
 
    // x * y = k → output yang harus mempertahankan konstanta
    function swap(uint256 _amountIn, uint256 _reserveIn, uint256 _reserveOut)
        public
        pure
        returns (uint256 amountOut)
    {
        require(_amountIn > 0, "zero amount");
        uint256 amountInWithFee = (_amountIn * 997) / 1000;
        uint256 numerator = amountInWithFee * _reserveOut;
        uint256 denominator = _reserveIn + amountInWithFee;
        amountOut = numerator / denominator;
    }
}

Intuisi kurva x*y=k: semakin banyak satu token dibeli dari pool, semakin sedikit tersisa, sehingga harganya naik — tanpa perlu order book. Fee 0.3% mengalir ke penyedia likuiditas.

Liquidity Pools dan Impermanent Loss

Pengguna yang menyimpan (deposit) dua token ke pool menjadi liquidity provider (LP) dan menerima LP token sebagai bukti. Mereka mendapat fee dari setiap swap. Tapi ada jebakan yang wajib kalian pahami:

  • Impermanent loss: ketika harga relatif kedua token berubah, nilai LP bisa lebih rendah dibanding sekadar menyimpan tokennya — meski untung fee bisa menutupinya.
  • Rug pull: pool palsu yang menarik likuiditas secara tiba-tiba — salah satu alasan audit wajib (episode 19).

Lending: Meminjam dan Meminjamkan

Protokol lending (Aave, Compound) memungkinkan deposan menyimpan token untuk mendapat bunga, dan peminjam menarik token dengan agunan (collateral). Prinsip kunci:

Mekanisme lending
Deposan  →  supply token  →  mendapat cTokens / aTokens  →  bunga
Peminjam →  deposit agunan →  meminjam sampai batas LTV  →  likuidasi

LTV (Loan-to-Value) menentukan berapa banyak yang bisa dipinjam per unit agunan. Jika nilai agunan turun di bawah ambang, posisi di-likuidasi — agunan dijual untuk menutup utang. Semua perhitungan ini berjalan on-chain, transparan, dan bisa diaudit.

Staking

Staking mengunci token untuk mendukung keamanan jaringan atau protokol, dengan imbalan reward. Ada dua varian yang perlu dibedakan:

VarianKonsepReward
Protocol stakingMengunci token ke kontrak protocolBunga dari fee/bond
Liquid stakingMenerima token cair (misal stETH) sebagai ganti token yang di-stakeBunga + tetap bisa dipakai di DeFi

Liquid staking adalah inovasi penting: pengguna tidak kehilangan likuiditas saat token mereka ter-kunci. Kita pakai konsep ini lagi di episode 14 dan 21.

Menganalisis Protokol DeFi

Sekarang latihan: analisis protokol DeFi seperti seorang developer. Ambil contoh AMM, dan periksa lima hal sebelum berintegrasi:

  1. Audit & battle-tested: sudah berapa lama live? Berapa kali diaudit? Ada history hack?
  2. Liquidity: berapa TVL? Pool yang kering = slippage parah.
  3. Fees & yield: struktur fee, distribusi ke LP, dan yield yang dijanjikan masuk akal atau tidak.
  4. Upgradeability: apakah kontrak punya proxy? Siapa pemegang kunci upgrade?
  5. Integrasi: ABI dan interface — apakah fungsi-fungsi inti (swap, addLiquidity, supply, borrow) mudah diintegrasikan?

Coba praktikkan dengan membaca kontrak di explorer:

Baca kontrak di explorer
cast call 0xTOKEN "decimals()(uint8)" --rpc-url https://ethereum-rpc.publicnode.com
cast code 0xPOOL --rpc-url https://ethereum-rpc.publicnode.com | head -c 200

cast code menampilkan bytecode kontrak — jika hasilnya 0x, kontrak tidak ada di alamat itu. Ini teknik debugging paling cepat saat alamat salah atau salah chain.

Warning

Yield yang "terlalu bagus untuk jadi kenyataan" biasanya memang begitu. Sebelum memasukkan dana atau mengintegrasikan protokol ke produk kalian, selalu cek TVL, audit, dan siapa yang memegang kunci upgrade. Di episode 19 kita pelajari cara melakukan mini-audit sendiri.

Penutup

Inti yang harus dibawa pulang:

  • AMM memakai formula (x*y=k) untuk menentukan harga tanpa order book.
  • LP token = bukti partisipasi likuiditas, dengan risiko impermanent loss.
  • Lending menuntut pemahaman LTV dan likuidasi.
  • Staking mengunci token untuk reward; liquid staking menjaga likuiditas.
  • Analisis protokol: audit, TVL, fee, upgradeability, dan integrasi.

Di episode 10 selanjutnya kita membangun aset yang paling dikenal publik — NFT & token standards: ERC-721, ERC-1155, metadata, dan marketplace, dengan praktik kontrak NFT lengkap. Mari lanjut ke episode 10!