Bab 36 dari 36
Versi Singkat
Pada 28 April 2026, Polymarket memigrasikan jaminan settlement-nya di Polygon dari USDC.e (token USDC terjembatani, kontrak 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174) ke pUSD, stablecoin (stablecoin) yang diterbitkan Polymarket dan dapat ditebus 1:1 untuk native USDC. Para trader aplikasi web tidak perlu melakukan apa pun - saldo dan posisi dikonversi otomatis pada blok snapshot. Operator API dan bot harus memperbarui: alamat aset jaminan di dalam setiap tanda tangan order CLOB berubah, order lama yang ditandatangani terhadap USDC.e dibatalkan, dan py-clob-client 0.40 atau yang lebih baru diperlukan. Panduan ini menjelaskan langkah demi langkah kode, kontrak, dan perubahan persetujuan yang tepat yang diperlukan agar bot tetap berjalan selama dan setelah cutover.
Bagian 1: Tiga stablecoin (stablecoin), Satu Polygon
Sebelum migrasi, tiga stablecoin USD berada di orbit Polymarket di Polygon. Mengetahui perbedaannya adalah langkah pertama untuk memahami mengapa Polymarket berpindah tempat.
| Token | Penerbit | Kontrak di Polygon | Jenis cadangan |
|---|---|---|---|
| USDC.e | Polygon PoS bridge | 0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174 | Dijembatani dari Ethereum mainnet |
| USDC (native) | Circle | 0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359 | Native, diterbitkan langsung di Polygon |
| pUSD | Perbendaharaan Polymarket | Lihat docs.polymarket.com/pusd | Didukung 1:1 oleh native USDC, atestasi bulanan |
Polymarket awalnya memilih USDC.e karena itu adalah varian USDC yang dominan di Polygon saat peluncuran pada 2020. Circle kemudian menerbitkan USDC native langsung di Polygon dan memberi sinyal penghentian bertahap pada varian yang dijembatani. Terus menyelesaikan setiap pasar dalam USDC.e mengekspos Polymarket pada risiko ekor panjang dari penutupan bridge secara tiba-tiba. Bermigrasi ke stablecoin yang dikendalikan Polymarket menyelesaikan hal itu dan membuka fitur produk masa depan (misalnya, margin perps, deposit vault, tanda terima lintas chain) yang berbagi unit akun yang sama.
Bagian 2: Apa Itu pUSD (dan Bukan)
pUSD adalah token ERC-20 standar di Polygon (chain id 137) dengan 6 desimal, presisi yang sama seperti USDC. Token ini hanya dapat dicetak oleh kontrak Polymarket Treasury dan dapat ditebus 1:1 untuk USDC native kapan saja, tanpa biaya untuk konversi tersebut (biaya gas jaringan tetap berlaku). Cadangan yang mendukung pUSD disimpan di akun terpisah dan dilaporkan setiap bulan dengan attestation pihak ketiga.
pUSD bukan stablecoin (stablecoin) algoritmik, tidak over-collateralized dengan kripto, dan tidak menghasilkan imbal hasil. Jika Anda memegang pUSD di luar Polymarket, Anda sebaiknya menganggapnya sebagai IOU yang diterbitkan Polymarket untuk USDC native - berguna di dalam platform, dapat ditebus saat diminta, tetapi tidak ada keuntungan menyimpannya dalam jangka panjang di wallet eksternal.
docs.polymarket.com/pusd-audit setiap bulan. Verifikasi keduanya sebelum memegang saldo besar dalam jangka panjang.Bagian 3: Apa yang Dilihat Trader Web-App
Jika Anda hanya trading melalui polymarket.com, migrasinya tidak terlihat. Pada blok snapshot tanggal 28 April 2026:
- Setiap saldo USDC.e yang disimpan di proxy wallet Polymarket dikonversi secara atomik menjadi pUSD dengan rasio 1:1.
- Posisi terbuka mempertahankan nilai dolar yang sama, odds hasil yang sama, dan waktu kedaluwarsa yang sama. ID token kondisional tidak berubah.
- Order yang masih terpasang dan didenominasi dalam USDC.e dibatalkan pada snapshot. Order baru setelah migrasi akan menandatangani pUSD secara otomatis.
- Penarikan ke wallet eksternal beralih dari mengirim USDC.e menjadi mengirim native USDC (atau, jika diminta, pUSD mentah - sebagian besar pengguna tidak pernah membutuhkannya).
Tidak diperlukan tanda tangan, transaksi, atau perubahan pengaturan. order batas (limit order) yang masih terpasang dan penting bagi Anda sebaiknya ditempatkan ulang secara manual setelah migrasi; pembatalan tersebut adalah kejadian satu kali.
Bagian 4: Operator API dan Bot - Perubahan Penting
Ini adalah bagian yang akan membuat bot rusak jika Anda tidak bertindak.
0x2791Bca1f2de4661ED88A30C99A7a9449Aa84174). Setelah migrasi, alamatnya adalah pUSD. Order yang ditandatangani terhadap alamat lama akan gagal dalam verifikasi signature di CLOB dan menampilkan error "invalid pembuat pasar (maker) asset" atau "signature mismatch".Upgrade py-clob-client
Polymarket merilis py-clob-client 0.40.0 dua minggu sebelum cutover dengan dukungan pUSD penuh. Rangkaian 0.34.x dihentikan sehari setelah migrasi.
# Naikkan ke rilis yang mendukung pUSD
pip install --upgrade "py-clob-client>=0.40.0"
# Verifikasi aset jaminan yang terhubung
python -c "from py_clob_client.constants import POLYGON; \
print('pUSD address:', POLYGON.get('collateral'))"
SDK baru mengambil alamat jaminan dari konfigurasi chain saat startup, jadi Anda tidak perlu meng-hard-code apa pun. Jika Anda melakukan fork atau mengunci versi yang lebih lama, langkah paling aman adalah menghapus lockfile, menginstal ulang dengan modul constants terbaru, dan menjalankan ulang test suite Anda.
Perbarui persetujuan allowance
Proxy wallet Polymarket Anda membutuhkan allowance ERC-20 dari akun trading Anda → kontrak CTF Exchange untuk token pUSD. Allowance lama untuk USDC.e masih ada di chain tetapi sama sekali tidak berguna: CLOB tidak akan memakainya. Tanpa allowance pUSD yang baru, setiap order akan menampilkan "INSUFFICIENT_ALLOWANCE".
from py_clob_client.client import ClobClient
client = ClobClient(
host="https://clob.polymarket.com",
chain_id=137,
key=os.environ["POLY_PRIVATE_KEY"],
funder=os.environ["POLY_FUNDER"],
signature_type=1, # POLY_PROXY untuk akun Magic-link
)
client.set_api_creds(client.create_or_derive_api_creds())
# Sekali saja: approve pUSD untuk kontrak CTF Exchange
# (Helper ditambahkan di py-clob-client 0.40)
client.update_balance_allowance(asset_type="COLLATERAL")
Segarkan kredensial API
API key yang sudah ada tetap berfungsi, tetapi jika Anda menurunkan kredensial sebelum 1 April, Anda sebaiknya memutarnya sebagai tindakan pencegahan: signature ECDSA L1 sekarang terikat pada domain yang mencakup alamat jaminan baru. Jalur paling sederhana:
creds = client.create_or_derive_api_creds() # derive ulang yang idempotent
client.set_api_creds(creds)
# Simpan ke .env Anda
print(creds.api_key, creds.api_secret, creds.api_passphrase)
Bagian 5: Memverifikasi Bot Anda Pasca-Migrasi
Jalankan smoke test minimal ini sebelum membiarkan logika sizing apa pun lepas pada uang sungguhan:
# 1. Pastikan saldo pUSD di proxy wallet
from py_clob_client.client import ClobClient
client = ClobClient(...) # seperti di atas
balance = client.get_balance_allowance(params={"asset_type": "COLLATERAL"})
print("Saldo pUSD (raw):", balance["balance"])
print("Allowance ke exchange:", balance["allowance"])
# 2. Pasang limit order $1 jauh di luar harga terdekat
from py_clob_client.clob_types import OrderArgs
order = client.create_order(OrderArgs(
token_id=test_token_id,
price=0.05, # sama sekali tidak dekat dengan pasar
size=20, # nilai nominal $1 pada $0.05
side="BUY",
))
resp = client.post_order(order)
print(resp)
# 3. Batalkan dan konfirmasi
client.cancel(order_id=resp["orderID"])
Jika ketiga panggilan berhasil, koneksi Anda sudah benar: SDK menandatangani terhadap pUSD, allowance dikenali, dan buku order konsisten. Naikkan skala kembali secara bertahap.
Bagian 6: Kesalahan Umum dan Perbaikannya
| Kesalahan atau gejala | Penyebab | Perbaikan |
|---|---|---|
signature verification failed | Order ditandatangani terhadap domain EIP-712 USDC.e | Upgrade py-clob-client ke 0.40+; muat ulang modul constants |
INSUFFICIENT_ALLOWANCE pada setiap order | Tidak ada allowance pUSD dari proxy Anda ke CTF Exchange | Jalankan update_balance_allowance(asset_type="COLLATERAL") sekali |
invalid maker asset | Alamat USDC.e yang di-hard-code masih ada di konfigurasi Anda | Ganti alamat collateral yang di-hard-code dengan konstanta SDK |
| Wallet menunjukkan saldo USDC.e > 0 setelah migrasi | Token "dust" tersisa dari transfer pihak ketiga | Bridge USDC.e kembali ke USDC native di CCTP Circle, atau biarkan saja |
| Reconnect WebSocket menghasilkan buku kosong | Subscription lama menggunakan status pasar yang stale dari sebelum snapshot | Buang cache lokal, ambil ulang buku REST, lalu subscribe kembali |
| Withdraw ke wallet eksternal menampilkan pUSD alih-alih USDC | Anda memilih "pUSD" alih-alih "USDC" di modal withdraw | Pilih "USDC" - bridge mengonversi pUSD → USDC native pada 1:1 |
Bagian 7: Conditional Tokens, Order ID, dan Hal Lain yang Tidak Berubah
Untuk menjaga ruang refactor tetap jujur, berikut adalah daftar identifier yang stabil di seluruh migrasi:
- Kontrak Conditional Token (CTF): alamat identik. Posisi YES / NO ERC-1155 Anda tidak berubah.
- condition_id dan question_id: deterministik dari parameter pasar; tidak terpengaruh oleh swap agunan.
- token_id (hasil): diturunkan dari condition_id + indeks hasil; tidak berubah.
- alamat proxy wallet Polymarket: alamat yang sama; kode bergaya Gnosis Safe yang sama.
- API key, API secret, API passphrase: masih valid (disarankan untuk rotasi; tidak wajib).
- Skema WebSocket: identik; field
assetbaru membaca "pUSD" вместо "USDC.e" dalam event fill. - API Gamma dan Data: tidak memerlukan autentikasi, tidak berubah. Keduanya tidak pernah mereferensikan token agunan secara langsung.
Bagian 8: Implikasi Pajak dan Pembukuan
Untuk sebagian besar yurisdiksi, auto-conversion USDC.e ke pUSD adalah swap sejenis dari stablecoin (stablecoin) yang dipatok ke USD pada rasio 1:1 dan tidak menghasilkan peristiwa kena pajak. Basis biaya dan periode kepemilikan Anda tetap terbawa.
Meski begitu, ada dua hal pembukuan yang perlu diperhatikan:
- Perbarui skema buku besar Anda. Alat pajak apa pun, ledger SQLite, atau ekspor akuntan yang memfilter transaksi Polygon berdasarkan kontrak USDC.e akan secara diam-diam melewatkan setiap transaksi pasca-migrasi. Tambahkan alamat kontrak pUSD sebagai alias.
- Catat konversi snapshot. Meskipun tidak kena pajak di sebagian besar rezim, catat konversi tersebut secara eksplisit dalam catatan Anda: jumlah, block, cap waktu, dan catatan bahwa ini adalah migrasi stablecoin 1:1. Jika yurisdiksi Anda menanyakannya nanti, Anda ingin memiliki jejak audit yang rapi.
Trader Israel harus berkonsultasi dengan Panduan Pajak untuk pelaporan khusus ITA; migrasi itu sendiri tidak mengubah perlakuan standar, tetapi perubahan alamat kontrak penting untuk alat pelaporan otomatis.
Bagian 9: Tips Pro dari Operator yang Menjalani Peralihan Ini
- Pin py-clob-client ke
>=0.40,<0.50di requirements.txt. Rilis 0.40 adalah minimum yang menandatangani order pUSD dengan benar; memberi batas atas melindungi dari perubahan breaking di masa depan. - Lakukan re-approve allowance selama jendela volume rendah. Panggilan
update_balance_allowanceadalah satu transaksi Polygon; melakukannya saat pergerakan pasar cepat sama saja mengundang lonjakan biaya gas. - Snapshot saldo USDC.e Anda sebelum 28 April. Meskipun konversi berjalan otomatis, snapshot awal yang dapat diverifikasi adalah cara paling rapi untuk menyengketakan masalah rekonsiliasi apa pun.
- Batalkan order yang masih menunggu secara manual sebelum snapshot. Order tersebut tetap dibatalkan oleh venue; melakukannya sendiri memberi Anda entri buku besar yang bersih alih-alih baris "system cancel".
- Waspadai dashboard yang belum diperbarui. Dashboard Polymarket pihak ketiga (PolymarketAnalytics, Polynance, dll.) butuh dua hingga tiga hari untuk mengurai ulang event pUSD. Database lokal bot Anda mungkin lebih dulu beberapa hari dibanding dashboard publik.
- Bridge sisa kecil USDC.e sesuai jadwal Anda sendiri. Sebagian besar akun memiliki beberapa sen USDC.e sisa dari rabat biaya lama atau transfer antar pengguna. Gunakan CCTP Circle atau bridge Polygon Portal standar - tidak perlu buru-buru.
- Simpan alamat USDC.e lama di alert block explorer Anda. Jika suatu saat ada sesuatu yang menyapu dari proxy Anda dalam USDC.e setelah migrasi, itu tanda bahaya yang layak langsung diselidiki.
Apa Selanjutnya?
- Panduan API Polymarket - panduan API lengkap, diperbarui untuk pUSD
- Panduan Deposit - menyetor USDC dan menerima pUSD di dalam aplikasi
- Panduan Penarikan - menarik pUSD sebagai USDC native ke wallet eksternal
- Alat & Sumber Daya - dashboard pihak ketiga kini diperbarui untuk pUSD
- Glosarium - definisi dalam bahasa sederhana untuk setiap istilah yang digunakan di sini
Intisari utama
Migrasi pUSD Polymarket adalah refaktor satu kali berisiko rendah bagi operator mana pun yang уже menjalankan bot Polymarket. Tingkatkan py-clob-client ke 0.40+, setujui ulang allowance pUSD, jalankan smoke test $1, dan lanjutkan. Infrastruktur di bawahnya (CTF, condition IDs, token IDs, API keys) tidak berubah, jadi cakupannya kecil dan cerita rollback-nya jelas.











