Perhitungan PnL Polymarket yang Akurat: Mengapa Perkiraan Keuntungan dan Kerugian Anda Bisa Salah?

BlockBeatNews

Judul asli: 《Perhitungan PnL Polymarket yang Akurat: Mengapa Perhitungan Keuntungan dan Kerugianmu Bisa Sepenuhnya Salah》
Penulis asli: Leo, analis kripto

Saya telah melakukan otomatisasi perdagangan mandiri di Polymarket selama setengah tahun, dan lubang terbesar yang pernah saya pijak bukanlah strategi yang gagal, melainkan bahwa saya bahkan tidak bisa menghitung berapa banyak uang yang saya hasilkan dengan benar.

Bukan saya yang tidak kompeten. Masalahnya adalah perhitungan PnL di PM sendiri adalah area berbahaya. API resmi yang diberikan angka-angkanya salah, situs analisis pihak ketiga juga menampilkan peringkat yang salah. Kamu menulis skrip sendiri untuk menghitung? Kemungkinan besar tetap salah.

Seberapa jauh deviasinya? Peringkat ketiga, kch123, menghitung kerugian sebesar $3,5 juta dengan metode yang salah, padahal keuntungan sebenarnya adalah $11,4 juta. Bukan hanya selisih beberapa poin persentase—tanda keuntungan dan kerugian bahkan terbalik.

Artikel ini akan membongkar setiap lubang yang pernah saya pijak. Baik yang melakukan trading, menulis alat, maupun yang melihat peringkat, pasti akan menemui ini.

Lubang 1: cashPnl Tidak Termasuk Keuntungan yang Sudah Diselesaikan

Pendekatan paling intuitif: tarik /positions API, jumlahkan bidang cashPnl (keuntungan dan kerugian tunai).

Mengambil tiga alamat teratas dari peringkat dan mengujinya secara langsung:

swisstony: jumlah cashPnl +$35.000, peringkat aktual +$5,6 juta, selisih 158 kali

kch123: jumlah cashPnl -$3,52 juta, peringkat aktual +$11,4 juta, tanda terbalik

gmanas: jumlah cashPnl -$2,64 juta, peringkat aktual +$5,02 juta, tanda terbalik

Tiga alamat ini, dua di antaranya tanda keuntungan dan kerugian langsung terbalik.

Alasannya: API /positions yang mengembalikan cashPnl tidak termasuk realized PnL yang sudah ditutup/diredeem. Posisi yang menang secara otomatis diredeem menjadi USDC, sehingga posisi itu hilang dari respons API. Yang tersisa adalah posisi yang belum diselesaikan—biasanya dengan kerugian floating.

Kamu pikir sedang menghitung semua keuntungan dan kerugian, padahal hanya mendapatkan bagian yang belum diselesaikan.

Lubang 2: Field makerPnl Tidak Konsisten dengan Arus Kas di Chain

Data perdagangan dalam format JSONL memiliki field makerPnl (keuntungan dan kerugian maker), yang namanya menunjukkan itu untuk menghitung PnL. Tapi jangan percaya.

Saya mengamati data market-making, jumlahkan makerPnl dan hasilnya berbeda satu tingkat dengan hasil perhitungan arus kas di chain. Skala pastinya bisa berbeda tergantung skenario, tapi arah perbedaannya konsisten: logika internal makerPnl tidak cocok dengan arus USDC nyata.

Tidak peduli seberapa besar deviasinya, kesimpulannya sama: Jangan gunakan field ini untuk menghitung PnL.

Lubang 3: Tidak Bisa Menggunakan txHash Sendiri untuk Menghapus Duplikasi

Ini yang paling tidak intuitif.

Jika satu txHash (hash transaksi) muncul beberapa kali, reaksi pertama orang normal: data duplikat, hapus duplikasi.

Tapi jangan lakukan itu. CLOB (order book on-chain) Polymarket bisa mencocokkan beberapa order maker dalam satu transaksi chain, dan beberapa record di bawah satu txHash adalah fill yang nyata dan independen.

Saya sebelumnya menghapus duplikasi berdasarkan txHash + asset, dan mengurangi $133 dari sisi BUY. Setelah diverifikasi di Polygon chain, memang ada beberapa event transfer USDC yang terpisah dalam satu transaksi hash, masing-masing mewakili transaksi nyata.

Kesimpulan: Tidak bisa hanya menghapus duplikasi berdasarkan txHash. Untuk menghitung PnL, jumlahkan langsung data mentah /activity.

Lubang 4: Batasan dalam Penggunaan offset untuk Paginasi

Paginasi API /activity dengan offset? Jika lebih dari 3000, langsung error 400. Tidak tertulis di dokumentasi.

Tiga alamat di atas sudah diverifikasi: GET /activity?offset=3100 mengembalikan HTTP 400, pesan error “max historical activity offset of 3000 exceeded”. Pemain utama dengan puluhan ribu transaksi, 3000 saja tidak cukup.

Menggunakan parameter end (mengirim timestamp terakhir dari halaman sebelumnya - 1) sebagai cursor untuk paginasi tidak memiliki batasan.

Lubang 5: Perbedaan Definisi PnL di Peringkat

Setelah menghitung PnL satu alamat, bandingkan dengan peringkat, dan ada sedikit perbedaan.

Sebagian besar perbedaan di bawah $10 (berasal dari fluktuasi nilai pasar posisi secara real-time). Tapi jika perbedaan jauh lebih besar, kemungkinan penyebabnya termasuk: jendela agregasi peringkat, penundaan pembaruan cache, atau pengguna yang mengikat beberapa proxy wallet.

Dalam pengujian, PnL satu alamat yang dihitung dengan metode arus kas sangat konsisten dengan nilai yang dikembalikan oleh lb-api. Jika hasilmu berbeda jauh, periksa dulu apakah paginasi lengkap (lubang 4), atau apakah menggunakan field yang salah (lubang 1-2).

Cara yang benar

Setelah mencoba berbagai metode, saya verifikasi bahwa cara paling andal adalah menggunakan Data API untuk merangkum arus kas. Tanpa field pre-kalkulasi apapun, langsung hitung dari catatan transaksi asli.

Rumus:

PnL = SUM(TRADE dimana side=SELL) + SUM(REDEEM) + SUM(MERGE) + SUM(MAKER_REBATE) + SUM(REWARD) - SUM(TRADE dimana side=BUY) - SUM(SPLIT) + Nilai pasar posisi

· TRADE BUY: Menggunakan USDC untuk membeli token (pengeluaran)

· TRADE SELL: Menjual token dan mendapatkan kembali USDC (pendapatan)

· REDEEM: Menebus posisi yang menang untuk USDC (pendapatan)

· SPLIT: USDC diubah menjadi token (pengeluaran)

· MERGE: Token digabung kembali menjadi USDC (pendapatan)

· MAKER_REBATE: Rebate dari Maker (pendapatan)

· REWARD: Hadiah/airdrop (pendapatan)

· Sumber data:

GET /activity?user=

&limit=500, gunakan end untuk paginasi, setelah diambil semua, jumlahkan berdasarkan tipe.

· Nilai pasar posisi:

GET /positions?user=

, hitung dengan size × harga saat ini.

· Validasi silang:

Bandingkan hasil perhitungan dengan API peringkat Polymarket (lb-api.polymarket.com/profit?window=all&address=X), jika selisih < $10, dianggap valid. Perbedaan berasal dari fluktuasi nilai pasar posisi secara real-time.

Verifikasi: Pengujian 15 teratas di peringkat

Setelah menghitung dengan metode arus kas, lakukan validasi silang dengan API peringkat:

swisstony: metode arus kas +$5,601,000, peringkat +$5,601,000, selisih < $10

kch123: metode arus kas +$11,396,000, peringkat +$11,396,000, selisih < $10

gmanas: metode arus kas +$5,024,000, peringkat +$5,024,000, selisih < $10

Ketiga alamat ini memiliki selisih di bawah $10, dan perbedaan berasal dari fluktuasi nilai pasar posisi secara real-time.

Setelah metode ini berjalan, saya menggunakannya untuk menganalisis ratusan alamat top dalam hal keuntungan dan kerugian nyata. Itu cerita yang berbeda lagi.

Ringkasan

SUM(cashPnl) dari /positions → Tidak bisa, tidak termasuk keuntungan yang sudah diselesaikan, tanda bisa terbalik

Jumlahkan field makerPnl → Tidak bisa, tidak konsisten dengan arus kas chain

Menghapus duplikasi berdasarkan txHash lalu hitung → Tidak bisa, kehilangan fill nyata di atas $100

Paginasi offset + jumlahkan → Tidak bisa, data terpotong, error > 3000

Metode Data API arus kas → Saat ini paling andal, < $10

Langkah pertama dalam melakukan kuantitatif bukanlah mencari alpha. Tapi memastikan bahwa perhitunganmu benar.

Semua di atas berasal dari pengalaman nyata, bukan teori. API PM bisa berubah kapan saja, disarankan rutin melakukan validasi silang hasil perhitunganmu dengan API peringkat.

Link asli artikel

Klik untuk mengetahui lebih lanjut tentang posisi Low-Profile dari BlockBeats yang sedang membuka lowongan

Selamat bergabung dengan komunitas resmi BlockBeats:

Telegram: https://t.me/theblockbeats

Telegram Grup Diskusi: https://t.me/BlockBeats_App

Akun resmi Twitter: https://twitter.com/BlockBeatsAsia

Penafian: Informasi di halaman ini dapat berasal dari pihak ketiga dan tidak mewakili pandangan atau opini Gate. Konten yang ditampilkan hanya untuk tujuan referensi dan bukan merupakan nasihat keuangan, investasi, atau hukum. Gate tidak menjamin keakuratan maupun kelengkapan informasi dan tidak bertanggung jawab atas kerugian apa pun yang timbul akibat penggunaan informasi ini. Investasi aset virtual memiliki risiko tinggi dan rentan terhadap volatilitas harga yang signifikan. Anda dapat kehilangan seluruh modal yang diinvestasikan. Harap pahami sepenuhnya risiko yang terkait dan buat keputusan secara bijak berdasarkan kondisi keuangan serta toleransi risiko Anda sendiri. Untuk detail lebih lanjut, silakan merujuk ke Penafian.

Artikel Terkait

Volume Gabungan Seumur Hidup Polymarket dan Kalshi Tembus $150 Miliar pada April

Menurut The Block, gabungan volume perdagangan seumur hidup Polymarket dan Kalshi menembus $150 miliar pada April. Pencapaian itu muncul ketika rangkaian tujuh bulan berturut-turut platform-platform tersebut dengan rekor tertinggi bulanan berakhir, menandai penurunan pertama aktivitas perdagangan di sektor ini sejak September. Platform global Polymarket s

GateNews13menit yang lalu

a16z Dukung CFTC dalam Surat Komentar Jumat, Mengutip Aturan Pasar Prediksi Negara sebagai Hambatan Akses

Menurut The Block, Andreessen Horowitz mengajukan surat komentar sepanjang 18 halaman kepada CFTC pada Jumat, mendukung pengawasan federal terhadap pasar prediksi dan berargumen bahwa regulasi di tingkat negara bagian menciptakan hambatan untuk akses pasar yang adil. Perusahaan VC mengatakan bahwa surat perintah penghentian dan penjatuhan sanksi serta usulan larangan f

GateNews47menit yang lalu

Polymarket, Kalshi mencatat volume perdagangan kumulatif mencapai 150 miliar dolar AS: pada April volume bulanan 21,9 miliar mencetak rekor tertinggi baru

Pada bulan April, volume transaksi kumulatif Polymarket dan Kalshi menembus 150 miliar dolar AS, dengan total bulanan sebesar 21,9 miliar dolar AS (Kalshi 13,4 miliar, Polymarket 8,5 miliar), sehingga total pangsa mencapai 85%. Sejak mulai beroperasi, akumulasi telah mencapai 150 miliar dolar AS; YTD hingga 20/4, Kalshi 37,49 miliar dolar AS, Polymarket 29,23 miliar dolar AS, dengan total 66,7 miliar dolar AS. Kalshi unggul karena pengawasan penuh CFTC dan antarmuka yang mendekati industri taruhan olahraga; Polymarket lebih terbuka secara internasional, penyelesaian dengan USDC, serta cakupan topik yang lebih luas. Poin yang perlu dipantau ke depan adalah negosiasi pelonggaran CFTC, penggalangan dana Polymarket, serta perkembangan valuasi Kalshi.

ChainNewsAbmedia1jam yang lalu

a16z Mendukung CFTC, Memperingatkan Aturan Pasar Prediksi di Tingkat Negara Bagian Menciptakan Hambatan Akses Pasar

Menurut The Block, Andreessen Horowitz mengajukan surat komentar 18 halaman kepada Commodity Futures Trading Commission pada Jumat, mendukung pengawasan federal terhadap pasar prediksi dan menentang penindakan di tingkat negara bagian. A16z berargumen bahwa surat perintah penghentian dan penghentian serta usulan larangan dari regulator negara bagian…

GateNews8jam yang lalu

Polymarket dan Kalshi Hit Volume Seumur Hidup Gabungan $150B pada April

Volume perdagangan gabungan seumur hidup Polymarket dan Kalshi menembus 150 miliar dolar AS pada April, menurut data The Block. Namun, April menjadi penurunan bulanan pertama dalam total aktivitas perdagangan sektor tersebut sejak platform mulai mengalami pertumbuhan yang meledak-ledak pada September, mengakhiri rentetan tujuh bulan o

CryptoFrontier11jam yang lalu

ETF Ethereum $184M Mengalami Runtuh 4 Hari Berturut-Turut

Reksa dana yang diperdagangkan di bursa (ETF) berbasis Ethereum mencatat arus keluar senilai 184 juta dolar AS selama empat hari berturut-turut hingga 30 April, menurut data pasar, saat ketidakpastian geopolitik mengimbangi kenaikan pada saham AS. Arus keluar tersebut memperpanjang tren penurunan yang dimulai sebelumnya pada minggu ini, dengan penarikan terbesar pada satu hari saja

CryptoFrontier12jam yang lalu
Komentar
0/400
Tidak ada komentar