API OKX berbeda dari bursa lain dalam beberapa hal: selain API Key dan Secret Key ada Passphrase yang Anda tentukan sendiri dan tidak bisa dipulihkan; key dengan izin trading tanpa ikatan IP akan dihapus setelah 14 hari tidak aktif; dan batas rate order dihitung per pasangan trading, bukan satu jatah untuk seluruh akun. Panduan ini mengikuti dokumentasi API resmi OKX (v5) dan pusat bantuannya, dengan angka per 2026-09-28; halaman resmi selalu yang berlaku. Pengaruh rebate terhadap untung-rugi strategi kuant sudah dibahas di rebate biaya untuk trader kuantitatif; artikel ini khusus soal menghubungkan kode Anda ke OKX. Daftar OKX dengan NOVA888 untuk rebate otomatis 20%; untuk hadiah dan promo OKX eksklusif kami, hubungi support.
Tiga kredensial: API Key, Secret Key, Passphrase
Saat key dibuat, sistem memberi API Key dan Secret Key acak; Passphrase adalah kata sandi yang Anda ketik sendiri. Dokumentasi menyebut OKX hanya menyimpan hash bergaram dari Passphrase, jadi jika lupa, tidak bisa dipulihkan dan Anda harus menghapus key lalu membuat yang baru. Simpan ketiganya dengan aman; Passphrase tidak ditampilkan lagi setelah dibuat.
Setiap permintaan privat membawa empat header: OK-ACCESS-KEY, OK-ACCESS-SIGN (tanda tangan), OK-ACCESS-TIMESTAMP dan OK-ACCESS-PASSPHRASE. Timestamp harus UTC dalam format ISO 8601 dengan presisi milidetik; permintaan yang selisihnya lebih dari 30 detik dari waktu server ditolak (error 50102). Dokumentasi menyebut penyebab paling umum adalah zona waktu lokal, dan menyarankan sinkronisasi dengan GET /api/v5/public/time sebelum order.
Membuat key: web, aplikasi dan sub-akun
Jalur yang dicantumkan di FAQ API resmi OKX:
- Web: masuk → Profil → "API and connections" → Create API key → beri nama → pilih akun dan tujuan → isi allowlist IP → pilih izin → atur Passphrase.
- Aplikasi: masuk → Menu (⋮⋮⋮) → gulir ke API → Create API key, lalu langkah yang sama.
Titik yang sering bikin macet:
- Ambang aset: OKX menyebut di wilayah tertentu, akun induk dan sub-akun perlu aset kelolaan di atas 100 USD untuk membuat API key.
- Sub-akun butuh key sendiri: buat key di sub-akun yang akan trading dan pakai izin serta Passphrase sub-akun itu; jangan mencampur Key, Secret atau Passphrase akun induk dan sub-akun.
- Domain API tergantung tempat Anda mendaftar: pengguna AS dan Australia yang mendaftar di app.okx.com memakai us.okx.com, dan pengguna UE yang mendaftar di my.okx.com memakai eea.okx.com; domain yang salah menghasilkan "50119 API key doesn't exist".
- Mode akun harus diatur dulu di web atau aplikasi: mode spot, futures, margin multi-mata uang dan portfolio margin masing-masing perlu diatur pertama kali di antarmuka; order futures lewat API dalam mode spot menghasilkan 51010.
Izin: baca, trading, penarikan
| Izin | Definisi resmi | Perlu untuk strategi kuant? |
|---|---|---|
| Read | Melihat info akun seperti tagihan dan riwayat order | Ya |
| Trade | Pasang dan batalkan order, transfer dana, pengaturan yang butuh izin tulis | Ya |
| Withdraw | Melakukan penarikan | Tidak. Jangan diaktifkan |
Izin Trade juga punya tiga sub-item: Transfer (memindah dana antar akun Anda, tersedia untuk semua), Loan dan Earn (hanya terlihat jika akun memenuhi syarat). OKX menyebut key yang sudah punya izin trading otomatis mendapat ketiganya; saat membuat atau mengedit key, periksa apakah strategi Anda benar-benar butuh Loan dan Earn.
Bahkan dengan izin penarikan, penarikan lewat API hanya berhasil jika alamat sudah ditambahkan di web dengan opsi bebas verifikasi dicentang, jika tidak akan muncul 58207. OKX sengaja menambah rintangan ini, dan bot trading tidak pernah perlu sampai ke sana: selalu tarik dana secara manual di web atau aplikasi.
Aturan 14 hari: key tanpa ikatan IP akan kedaluwarsa
Inilah aturan yang paling membedakan OKX. Dokumentasi API menyebut:
- Setiap key bisa mengikat hingga 20 alamat IP, dalam format IPv4, IPv6 atau segmen jaringan.
- Key tanpa ikatan IP yang punya izin trading atau penarikan kedaluwarsa setelah 14 hari tidak aktif (FAQ menyebut dihapus otomatis). Key demo trading tidak kedaluwarsa.
- Definisi "dipakai" cukup ketat: hanya panggilan ke endpoint privat yang butuh autentikasi key yang dihitung; mengirim info key ke endpoint publik tidak dihitung.
- Di WebSocket, hanya login yang dihitung sebagai pemakaian key; subscribe atau order di koneksi itu setelah login tidak dihitung.
- Catatan pemakaian key tanpa ikatan IP yang punya izin trading atau penarikan bisa dicek di Security Center.
Dua poin terakhir paling berpengaruh untuk setup kuant: bot yang terus berada di satu koneksi WebSocket untuk order, jarang login ulang dan tidak mengikat IP bisa mengalami key kedaluwarsa saat strategi masih berjalan.
Solusi paling mudah adalah mengikat IP tetap server strategi Anda. Key yang terikat IP tidak terkena aturan 14 hari tidak aktif dan, jika bocor, hanya bisa dipakai dari server Anda, sehingga stabilitas dan keamanan beres sekaligus.
Demo trading: jalankan dulu dengan dana virtual
Demo trading OKX bisa diakses lewat API. Alur resminya: masuk ke OKX → [Trade] → [Demo Trading] → Personal Center → Demo Trading API → Create Demo Trading API Key. Bedanya dengan produksi:
| Hal | Produksi | Demo trading |
|---|---|---|
| Key | Key dari akun live | Harus key yang dibuat terpisah di lingkungan demo |
| Permintaan REST | — | Tambahkan header x-simulated-trading: 1 |
| WebSocket | wss://ws.okx.com:8443 | wss://wspap.okx.com:8443 (jalur public, private dan business) |
| Fungsi tidak didukung | — | Penarikan, deposit, pembelian/penebusan dan lainnya |
| Kedaluwarsa key | Aturan 14 hari berlaku | Tidak kedaluwarsa |
Key yang dipakai di lingkungan yang salah menghasilkan "50101 APIKey does not match the current environment": key live dengan x-simulated-trading: 0 (atau tanpa header), key demo dengan 1. OKX juga menyediakan Demo Trading Explorer di browser untuk mencoba endpoint demo setelah masuk, praktis untuk mengecek format parameter.
Batas rate: dihitung per pasangan trading
OKX tidak memakai satu jatah per akun. Dokumentasinya menyebut: endpoint publik dibatasi per IP; endpoint REST privat per User ID (setiap sub-akun punya User ID sendiri); pasang, ubah dan batal order punya jatah terpisah; REST dan WebSocket berbagi jatah yang sama; dan batas order ditetapkan per pasangan trading (Instrument ID). Melewati batas menghasilkan error 50011. Endpoint umum (per 2026-09-28):
| Endpoint | Batas | Dihitung per |
|---|---|---|
Pasang order POST /api/v5/trade/order | 60 permintaan per 2 detik | User ID + pasangan |
| Order batch (maks. 20 per permintaan) | 300 order per 2 detik | User ID + pasangan |
| Batal order | 60 permintaan per 2 detik | User ID + pasangan |
Saldo GET /api/v5/account/balance | 10 permintaan per 2 detik | User ID |
Tarif biaya GET /api/v5/account/trade-fee | 5 permintaan per 2 detik | User ID |
| Instrumen lead milik lead trader | 4 permintaan per 2 detik | — |
Di atas batas per pasangan ada batas sub-akun 1.000 permintaan order baru dan ubah per 2 detik (setiap order dalam batch dihitung), dengan error 50061 jika terlampaui. Kedua lapisan berlaku bersamaan. Praktik terbaik di dokumentasinya sendiri: jika butuh throughput lebih, pecah strategi ke beberapa sub-akun agar masing-masing memakai jatah penuh.
Akun dengan level biaya VIP5 ke atas juga mendapat tingkatan berdasarkan fill ratio: setiap hari sistem menghitung rasio dari volume 7 hari terakhir dibanding permintaan order baru dan ubah, dan tingkatan teratas mengizinkan 10.000 permintaan per 2 detik; rasio yang turun mendapat masa tenggang satu hari. Order spot dan margin dikecualikan dari batas sub-akun. GET /api/v5/trade/account-rate-limit menampilkan jatah Anda saat ini.
WebSocket: koneksi, langganan dan heartbeat
- Menyambung: hingga 3 permintaan koneksi per detik per IP. Kanal publik memakai alamat public, kanal privat memakai alamat private.
- Langganan: permintaan subscribe, unsubscribe dan login dibatasi total 480 per jam per koneksi.
- Heartbeat: koneksi otomatis ditutup jika langganan tidak terbentuk atau tidak ada data selama lebih dari 30 detik. OKX menyarankan memasang timer di bawah 30 detik setiap ada pesan, mengirim string
pingsaat timer habis, dan menyambung ulang jikapongtidak datang. - Koneksi kanal privat: kanal seperti order, akun dan posisi mengizinkan hingga 30 koneksi per kanal per sub-akun; lewat dari itu biasanya koneksi terbaru ditolak. Pasang, ubah dan batal order lewat WebSocket tidak terpengaruh.
FAQ OKX menambahkan detail praktis: pukul 8, 16 dan 24 setiap hari adalah waktu penarikan biaya pendanaan dengan beban server berat (FAQ tidak menyebut zona waktunya), saat "50004 API endpoint request timeout" bisa muncul. Error 50004 tidak berarti order gagal atau berhasil; cek hasil sebenarnya alih-alih mengirim ulang order yang sama.
Jika khawatir order masih menggantung di order book setelah program crash atau koneksi putus, POST /api/v5/trade/cancel-all-after memasang hitung mundur: jika tidak diperbarui tepat waktu, semua order tertunda dibatalkan (dibatasi 1 permintaan per detik).
Contoh kode: tanda tangani permintaan dan cek tarif biaya
Tanda tangan dibuat dengan menandatangani string "timestamp + metode (huruf besar) + path permintaan + body" dengan Secret Key memakai HMAC SHA256, lalu meng-encode Base64. Parameter GET dihitung sebagai bagian dari path. Contoh ini mengecek tarif biaya spot BTC-USDT di demo trading, yang hanya butuh izin baca; ketiga kredensial diambil dari variabel lingkungan.
import base64, hashlib, hmac, os
from datetime import datetime, timezone
import requests
key = os.environ["OKX_API_KEY"]
secret = os.environ["OKX_SECRET_KEY"]
passphrase = os.environ["OKX_PASSPHRASE"]
path = "/api/v5/account/trade-fee?instType=SPOT&instId=BTC-USDT"
ts = datetime.now(timezone.utc).isoformat(timespec="milliseconds").replace("+00:00", "Z")
prehash = ts + "GET" + path
sign = base64.b64encode(hmac.new(secret.encode(), prehash.encode(), hashlib.sha256).digest()).decode()
headers = {
"OK-ACCESS-KEY": key,
"OK-ACCESS-SIGN": sign,
"OK-ACCESS-TIMESTAMP": ts,
"OK-ACCESS-PASSPHRASE": passphrase,
"x-simulated-trading": "1",
}
r = requests.get("https://openapi.okx.com" + path, headers=headers, timeout=10)
print(r.status_code, r.json())
Untuk live, ganti ke key akun live dan hapus header x-simulated-trading; pengguna AS, Australia dan UE juga harus memakai domain API masing-masing.
Biaya order API dan order khusus maker
Daripada mengandalkan tabel biaya publik, cek tarif aktual akun Anda saat ini dengan GET /api/v5/account/trade-fee seperti contoh di atas. Dokumentasi resmi menyebut untuk spot dan margin Anda perlu menyertakan instId agar tarif yang benar-benar berlaku yang dikembalikan (misalnya tarif market maker bagi pengguna program insentif). Tarif publik per level ada di level biaya VIP OKX.
Agar selalu maker, atur ordType ke post_only. Dokumentasinya mendefinisikan order ini hanya bisa menyediakan likuiditas dan menjadi maker; jika akan langsung tereksekusi saat dipasang, order dibatalkan. Beda maker dan taker serta penghematannya ada di penjelasan biaya maker dan taker.
Trading API dan rebate: isi aturan OKX
Kami membaca aturan OKX Affiliate Program (diperbarui 2026-09-07) dan aturan broker (diperbarui 2026-08-05). Aturan afiliasi menyebut pengundang mendapat bagian dari setiap biaya trading yang dibayar pengguna undangan di spot, futures dan opsi. Aturan itu tidak menyebut terpisah apakah order API milik Anda sendiri termasuk atau dikecualikan, jadi untuk bagian itu acuannya catatan penyelesaian harian Quant Nova. Yang disebut jelas dan penting bagi trader algoritmik:
- Trading lewat broker: aturan broker menyebut pengguna yang mendaftar lewat undangan afiliasi lalu trading lewat broker (API broker atau OAuth broker), rebate-nya diberikan terpisah kepada afiliasi dan broker.
- Kapan tidak ada bagian: koin yang ditradingkan tanpa biaya; biaya diimbangi kartu rebate, kredit futures atau voucher; trader punya tarif khusus; trader adalah market maker atau broker; memakai sub-akun terkelola; level biaya trader VIP7 ke atas.
Artinya, akun dalam program market maker OKX atau yang menjalankan strategi di sub-akun terkelola dinyatakan di luar cakupan, jadi periksa dulu sebelum mulai.
Daftar OKX dengan NOVA888 lewat Quant Nova untuk rebate otomatis 20%; untuk hadiah dan promo OKX eksklusif kami, hubungi support. Pengikatan hanya butuh UID; Anda tidak pernah menyerahkan API key kepada siapa pun. Kode dan tautan daftar ada di kode referral OKX NOVA888, cara menghitung rebate di panduan rebate biaya OKX, dan untuk akun lama mulai dari panduan rebind OKX. Tim kuant yang sudah VIP di bursa lain atau bervolume besar dipersilakan menghubungi support Quant Nova; kami berkoordinasi langsung dengan tim resmi bursa untuk mengupayakan manfaat seperti uji coba level VIP (ketentuan akhir ditetapkan bursa).
Keamanan dan penipuan: jangan serahkan key Anda
OKX API Agreement (diperbarui 2026-07-28) tegas: Anda sendiri yang bertanggung jawab membuat, menyimpan, merotasi dan mencabut key, Anda tidak boleh membagikan API key kepada pihak yang tidak berwenang, dan key yang mungkin bocor harus segera dicabut. Perjanjian itu juga memasukkan pemberian akses atau kredensial API kepada pihak ketiga yang tidak berwenang sebagai perilaku terlarang, dan melarang memakai API untuk mengoperasikan akun atau memasang order atas nama pihak ketiga tanpa persetujuan tertulis OKX lebih dulu.
Saat menghubungkan bot atau platform trading pihak ketiga:
- Utamakan otorisasi OAuth: aturan broker OKX menjelaskan broker OAuth diotorisasi lewat aplikasi atau situs OKX, sehingga pengguna tidak perlu menyerahkan API key sendiri.
- Jika harus menempel key, beri hanya izin baca dan trading, ikat ke IP server yang diumumkan penyedia, dan periksa apakah sub-item seperti Loan dan Earn benar-benar diperlukan.
- Saat melaporkan masalah ke support, FAQ OKX meminta agar tidak pernah mengirim Secret, Passphrase, kode verifikasi atau tanda tangan yang tidak disamarkan.
"Kelola akun" adalah penipuan paling umum: seseorang yang mengaku tim kuant atau trader meminta Anda membuat key untuknya dan menjanjikan imbal hasil bulanan tetap. Jangan pernah menyerahkan key dengan izin penarikan, siapa pun mereka dan apa pun janjinya; bahkan dengan izin trading saja, mereka bisa menghabiskan margin Anda dengan leverage tinggi.
Saat Komisi Pengawas Keuangan Taiwan (FSC) menerbitkan daftar registrasi VASP pada 2025-09-22, FSC kembali mengingatkan bahwa penipu memikat orang membeli aset virtual dengan kalimat seperti "pasti untung, tidak mungkin rugi" dan "untung tinggi, risiko rendah", lalu meminta biaya pencairan, jaminan atau pajak sebelum hasil bisa ditarik. (siaran pers FSC, bahasa Mandarin)
Bagi pengguna di Taiwan: per 2026-09-28 OKX tidak termasuk dalam daftar FSC untuk penyedia layanan aset virtual yang telah menyelesaikan registrasi AML. Cara memeriksa daftar dan status tiap bursa ada di daftar registrasi VASP FSC Taiwan.
Pertanyaan umum
Saya lupa Passphrase OKX. Lalu bagaimana?
Tidak bisa dipulihkan. OKX hanya menyimpan hash Passphrase, jadi hapus key itu dan buat yang baru.
Kenapa API key OKX saya tiba-tiba tidak berfungsi?
Penyebab paling umum adalah key dengan izin trading atau penarikan tanpa ikatan IP yang tidak aktif selama 14 hari lalu dihapus. Di WebSocket hanya login yang dihitung sebagai pemakaian, bukan order di koneksi itu; mengikat IP tetap membuat key lepas dari aturan ini.
Berapa IP yang bisa diikat satu key?
Hingga 20, dalam format IPv4, IPv6 atau segmen jaringan.
Berapa batas rate order OKX?
60 permintaan order tunggal dan 300 order batch per 2 detik, keduanya dihitung per User ID ditambah pasangan trading, ditambah batas 1.000 permintaan order baru dan ubah per 2 detik per sub-akun. REST dan WebSocket berbagi jatah.
Bagaimana memakai API demo trading?
Buat key terpisah di Personal Center demo trading, tambahkan x-simulated-trading: 1 di header REST dan sambungkan WebSocket ke wspap.okx.com. Key demo tidak kedaluwarsa karena tidak aktif.
Apakah trading lewat API bisa dapat rebate?
Aturan afiliasi OKX membagi setiap biaya trading yang dibayar pengguna undangan dan tidak menyebut terpisah order API milik Anda sendiri, jadi acuannya catatan penyelesaian; aturan broker menyebut saat pengguna undangan afiliasi trading lewat broker, rebate diberikan kepada afiliasi dan broker. Market maker, sub-akun terkelola dan VIP7 ke atas tidak menghasilkan bagian.