Binance API Series Pt. I - Spot Trading dengan Postman

Binance API Series Pt. I - Spot Trading dengan Postman

Pengenalan

Memahami dan menggunakan API untuk perdagangan cryptocurrency dapat membuka banyak kemungkinan ketika memasuki posisi keluar dan keluar. Dengan beberapa pengetahuan pengekodan yang mudah, anda boleh memasukkan backend pertukaran untuk mengautomasikan strategi perdagangan anda . Dengan mengesampingkan laman web, anda boleh mengambil jalan yang jauh lebih pantas untuk mesin yang sesuai untuk aplikasi berprestasi tinggi.

Tujuan siri ini adalah untuk memperkenalkan anda kepada Binances REST API dan mengajar anda cara berinteraksi dengannya. Pada akhirnya, anda harus yakin dengan kemampuan anda untuk bertanya maklumat mengenai pasaran dan kedudukan anda dan membuat pelbagai jenis pesanan yang berbeza.

Dalam artikel ini, gunakan Postman untuk berkomunikasi dengan pertukaran. Jangan risau kami tidak akan menanggung risiko dana sebenar.

Prasyarat

Kekunci Testnet

Kami akan menggunakan testnet untuk tujuan kami. Ini akan memberi kita sejumlah dana tanpa nilai dunia nyata untuk dimainkan. Mereka berfungsi dengan cara yang sama seperti syiling dan token sebenar, jadi setelah anda selesa dengan API, anda dapat mulai menggunakannya untuk memperdagangkan dana sebenar.

  1. Mulakan dengan menuju ke Spot Test Network .
  2. Untuk mendapatkan akses, anda perlu log masuk dengan akaun GitHub . Buat satu jika anda belum melakukannya.
  3. Klik Autentikasi dan log masuk melalui GitHub.
  4. Di bawah Kekunci API, anda akan dimaklumkan bahawa anda tidak mempunyai kunci yang didaftarkan. Klik pada Hasilkan Kunci HMAC_SHA256 untuk membuat pasangan.
  5. Pada skrin seterusnya, berikan label pada kunci. Panggil mereka apa sahaja yang anda mahukan dan tekan Generate .
  6. Anda diberikan dua kunci: Kunci API dan Kunci Rahsia . Penting untuk anda merakamnya sekarang. Anda perlu memulakan proses pembuatan kunci sekali lagi jika tidak. Kami mengesyorkan menyimpannya di aplikasi nota mesin anda untuk disalin dengan senang kemudian.

Catatan: melabelkan kunci anda adalah sesuatu yang patut dilakukan semasa menggunakan pertukaran sebenar untuk menguruskan kunci yang berbeza. Akaun anda boleh mempunyai banyak kunci dengan kebenaran yang berbeza. Sekiranya anda menjalankan beberapa bot perdagangan, menggunakan kunci berasingan dengan label deskriptif akan memudahkan menguruskan kebenaran atau menghapus kunci individu tanpa mengubah semua bot anda.

Memuat turun dan memasang Postman

Postman adalah platform Kerjasama API. Ini adalah titik permulaan yang sempurna untuk kita mempunyai akses ke koleksi permintaan Binance yang menguji dengan baik tanpa perlu menulis satu baris kod.

Program ini tersedia untuk Mac, Windows, dan Linux . Pergi ke halaman Muat turun dan muat turun fail .zip.

Setelah selesai, cari di penjelajah fail anda dan pasangkannya. Nyalakan aplikasi, dan selamat maju jaya! Perhatikan bahawa anda boleh membuat akaun untuk log masuk, tetapi tidak perlu. Sekiranya anda ingin melangkau langkah itu, pilih saja pilihan untuk melakukannya di bahagian bawah tetingkap.

Menciptakan persekitaran

Pada peringkat ini, anda harus mempunyai antara muka yang menyerupai yang berikut.

Binance API Series Pt. I - Spot Trading dengan Postman

Kami ingin mencipta persekitaran kita terlebih dahulu. Ini hanya cara untuk kita menambah pemboleh ubah ke set permintaan yang akan digunakan. Untuk melakukan itu, pertama sekali perlu mengambil beberapa maklumat dari repositori Binance GitHub. Pergi ke sini dan muat turun fail .zip.

Binance API Series Pt. I - Spot Trading dengan Postman

Muat turun tidak perlu lama. Cari di penjelajah fail anda dan nyah zipnya. Kemudian, kita boleh kembali ke Postman.

Binance API Series Pt. I - Spot Trading dengan Postman

Klik pada ikon gear di sudut kanan atas (digambarkan di atas). Anda akan disambut dengan pop timbul Urus Persekitaran .

  1. Pilih Import , dan arahkan ke folder yang baru anda ekstrak (binance-postman-api).
  2. Masukkannya, kemudian masukkan folder persekitaran.
  3. Anda akan melihat dua fail (satu untuk mainnet dan satu untuk testnet). Yang dicari adalah binance_com_spot_testnet_api.postman_environment.json . Pastikan anda mendapat yang betul kerana kunci kami tidak berfungsi dengan yang lain.

Binance API Series Pt. I - Spot Trading dengan Postman

Hampir sampai. Klik pada Binance Spot Testnet API , dan anda akan melihat pemboleh ubah di bawah. Edit dua parameter yang digariskan dengan warna merah dengan menampal kunci yang anda simpan sebelumnya. Klik kemas kini dan keluar dari pop timbul.

Binance API Series Pt. I - Spot Trading dengan Postman

Pada skrin ini, kosongkan cap waktu dan medan tandatangan. Kedua-dua nilai ini akan dibuat secara automatik atas setiap permintaan.

Terdapat satu perkara terakhir yang perlu dilakukan. Di sebelah kanan ikon roda gigi yang kami klik untuk menyiapkan persekitaran lebih awal, anda akan melihat menu lungsur yang saat ini mengatakan Tiada Lingkungan . Klik dan pilih API Binance Spot Testnet .

Mengimport koleksi

Sekarang akan mengimport koleksi ini adalah pelbagai permintaan yang sangat berat bagi kami ketika membuat panggilan. Untuk memuatkannya ke persekitaran kita:

  1. Klik Import di sudut kiri atas.
  2. Dalam pop timbul, di bawah tab Fail , pilih Muat Naik Fail .
  3. Sedang mencari folder binance-postman-api lagi. Cari dan buka.
  4. Kali ini, masukkan koleksi dalam subdirektori.
  5. Terdapat dua fail di sini lagi. Salah satunya adalah untuk bekerja dengan API niaga hadapan. Tetapi berjaya dengan yang pertama, jadi anda perlu memilih fail binance_spot_api_v1.postman_collection.json .
  6. Anda sekarang harus melihat skrin pengesahan yang mengenal pasti pengimportan seperti dalam format Postman Collection Pilih Import.

Di bawahCollectionstab di sebelah kiri tetingkap, anda akan melihat bahawa kita mempunyai folder dengan lebih dari 100 permintaan. Tahniah! Selamat pergi. Pada bahagian seterusnya, lihatlah jenis permintaan yang dapat kami buat.

Membuat permintaan

Sekiranya anda meluaskan folder di bawahCollectionstab, anda akan melihat bahawa kami mempunyai banyak permintaan yang boleh kami buat. Dari pengekodan warna, anda mungkin perhatikan bahawa terdapat tiga jenis kaedah yang dapat kita gunakan:

  • GET :Kaedah GET digunakan untuk mengambil barang dari pelayan. Gunakan ini untuk mengetahui maklumat mengenai baki akaun anda, harga aset, dll.
  • POST : Secara amnya gunakankaedah POST untuk membuat maklumat pada pelayan. Ini diperlukan untuk perkara seperti membuat pesanan, meminta pengeluaran, dll.
  • DELETE :Kaedah DELETE adalah permintaan pelayan untuk menghapus maklumat. Ini sangat berguna untuk membatalkan pesanan.

Cari senarai simbol dan peraturan perdagangan

Masa untuk permintaan pertama kami! Kami akan mendapatkan simbol yang boleh kami jual di bursa dan peraturan perdagangan:

DAPATKAN / tukarInfo

Yang ini tidak mengambil parameter tambahan, anda boleh menyalin dan menampalnya ke bar alamat anda, dan anda akan mendapat respons. Tetapi untuk permintaan di mana kami memasukkan beberapa parameter, Postman memudahkan untuk melihat dan mengubahnya.

Untuk memuatkan permintaan ini, pilih Maklumat Pertukaran Pasaran . Tab seperti berikut akan muncul:

Binance API Series Pt. I - Spot Trading dengan Postman

Kami tidak perlu melakukan perkara lain di sini, jadi teruskan dan tekan Send . Anda kemudian akan mendapat jawapan:

Binance API Series Pt. I - Spot Trading dengan Postman

Di bahagian paling tinggi yang disorot, anda akan melihat beberapa maklumat penting:

  • status respons ( 200 bermaksud kita berjaya, 400-499 bermaksud kita mengalami masalah)

  • masa yang diambil untuk menerima respons (kurang dari satu saat)

  • ukuran tindak balas (~ 22KB).

Di kotak kedua terdapat sebahagian besar tindak balas. Ia telah dicetak cantik sehingga sedikit lebih mudah pada mata. Ini mengandungi maklumat mengenai bursa itu sendiri, serta pasangan yang boleh anda jual dan jumlah minimum / maksimumnya.

Nampaknya banyak maklumat, tetapi formatnya menjadikannya sangat mudah untuk bekerja dengan program. Semasa menulis skrip untuk berinteraksi dengannya, anda dapat dengan mudah memilih sifat-sifat tertentu unsur-unsur tertentu dari respons.

Periksa baki akaun

Mari kita periksa aset apa yang kita ada, dan berapa banyak aset masing-masing:

DAPATKAN / akaun

Yang ini boleh didapati di bawah Maklumat Akaun Perdagangan . Klik padanya, dan anda akan melihat susun atur yang serupa dengan yang sebelumnya. Anda juga akan memperhatikan bahawa kami mempunyai dua pemboleh ubah baru: cap waktu dan tandatangan . Tandatangan adalah langkah keselamatan. Kerana sekarang meminta maklumat sensitif, itu akan membuktikan bahawa itulah pemegang akaun.

Stempel waktu memberitahu pelayan bila permintaan dihantar. Kerana rangkaian tidak boleh dipercayai atau menghadapi waktu henti, pelayan mungkin akan menerima permintaan kami lebih lama daripada yang diharapkan. Sekiranya terlalu banyak masa berlalu, ia akan menolak permintaan tersebut. Anda boleh menentukan berapa lama anda mahu menunggu dengan parameter recvWindow , yang lalai menjadi 5000 milisaat.

Postman mengendalikan penjanaan kedua-dua bidang ini untuk kita. Klik hantar, dan anda akan mendapat jawapan. Di bawah baki, anda akan melihat enam aset BNB, BTC, BUSD, ETH, LTC, dan TRX. Baki akan dibahagi secara percuma dan dikunci . Kami belum lagi mengunci, jadi aset anda semestinya percuma.

Tahniah atas kekayaan baru (tidak wujud) anda!

Bagaimana untuk mendapatkan harga semasa untuk simbol

Kita boleh mendapatkan harga aset semasa dengan cara yang berbeza. Mungkin yang paling mudah adalah dengan permintaan berikut:

DAPATKAN / api / v3 / ticker / 24jam

Seperti yang anda sangka, ini akan memberi kita maklumat mengenai harga aset sejak dua puluh empat jam terakhir. Cari di Statistik Perubahan Harga Tiket Market 24jam . Pasangan lalai disambut kerana pemboleh ubah simbol adalah BTCUSDT .

Anda boleh menghantarnya dengan segera untuk melihat perincian maklumat harga. Anda juga boleh menukar simbol (kepada BNBBUSD , LTCUSDT , dll.), Atau anda boleh mencabut pemboleh ubah untuk mengembalikan data untuk 40 pasangan.

Kami juga mempunyai panggilan yang lebih mudah ( Market Symbol Price Ticker ) yang mengembalikan harga semasa aset diperdagangkan di:

DAPATKAN / api / v3 / harga

Seperti sebelumnya, anda boleh menukar pemboleh ubah simbol atau menghapusnya sepenuhnya dan mendapatkan harga terkini untuk semua simbol.

Periksa kedalaman buku pesanan semasa

Kedalaman buku pesanan (juga disebut sebagai kedalaman pasar, atau DOM) dapat memberitahu kami banyak tentang pasaran. Akan membuat panggilan yang akan mengembalikan beberapa maklumat berguna:

DAPATKAN api / v3 / kedalaman

Apabila kami mengirimkannya dengan nilai lalai (Market Order Book), kami akan menghantar jawapan yang memberitahu kami mengenai tawaran dan meminta BTCUSDT. Pelayan testnet tidak akan menghasilkan data sebanyak yang sebenarnya, jadi di bawah ini adalah tangkapan skrin dari apa yang anda harapkan dapat dilihat dalam persekitaran sebenar:

Binance API Series Pt. I - Spot Trading dengan Postman

Pada bahagian yang diserlahkan di atas, kita dapat melihat tawaran pertama. Sejak melihat buku untuk BTCUSDT, angka atas adalah harga yang seseorang sanggup bayar untuk BTC anda. Berikut adalah jumlah yang mereka mahu beli. Oleh itu, apa yang dinyatakan ini adalah bahawa pesanan ini meminta 0.999 BTC pada kadar 9704.65 USDT per BTC. Sekiranya kami terus menatal ke bawah, kami akan melihat penurunan harga tawaran yang mewakili pembeli yang akan membayar lebih sedikit.

Tawaran teratas secara semula jadi akan menjadi yang paling menarik jika anda mencari wang untuk wang anda. Kononnya, jika anda ingin menjual di pasaran, katakanlah, 3 BTC, anda hanya dapat menjual 0,999 BTC dengan harga terbaik. Anda perlu mengambil tawaran seterusnya (lebih murah) sehingga keseluruhan pesanan anda diisi.

Binance API Series Pt. I - Spot Trading dengan Postman

Terus menatal, dan anda akan melihat permintaan. Fungsinya serupa dengan tawaran, kecuali mewakili pesanan untuk menjual BTC dengan harga USDT.

Buat pesanan ujian

Sekarang akan menghantar pesanan ujian.

POST api / v3 / pesanan / ujian

Walaupun hanya menggunakan dana testnet, permintaan ini sebenarnya tidak akan membuat pesanan. Ini boleh berguna untuk menguji pesanan sebelum benar-benar mengirimkannya. Dapatkannya di bawah Trade Test New Order (TRADE) .

Binance API Series Pt. I - Spot Trading dengan Postman

Anda dapat melihat bahawa kami mempunyai banyak lagi parameter yang terlibat. Mari berjalan melalui yang diperiksa:

  • simbol yang pernah kita temui sebelumnya. Ini adalah pasangan yang ingin anda jual.
  • sisi di sini, anda yang ditetapkan kepada sama ada anda mahu membeli atau menjual. Dengan pasangan BTCUSDT, BUY menunjukkan bahawa anda ingin membeli BTC untuk USDT, sedangkan jual akan menjual BTC untuk USDT.
  • taipkan jenis pesanan yang ingin anda kirimkan. Nilai yang mungkin (terperinci di sini ):
    • HAD
    • PASARAN
    • STOP_LOSS
    • STOP_LOSS_LIMIT
    • MENGAMBIL KEUNTUNGAN
    • TAKE_PROFIT_LIMIT
    • LIMIT_MAKER
  • timeInForce parameter ini menyatakan bagaimana anda mahu perintah tersebut dilaksanakan:
    • GTC (baik hingga dibatalkan) mungkin penyediaan yang paling popular, GTC akan memastikan bahawa pesanan anda sah sehingga diisi, atau sehingga anda membatalkannya.
    • FOK (isi atau bunuh) FOK mengarahkan pertukaran untuk melaksanakan pesanan sekaligus. Sekiranya pertukaran tidak dapat melakukannya, pesanan akan segera dibatalkan.
    • IOC (segera atau batal) sama ada semua atau sebahagian pesanan mesti dilaksanakan dengan segera, atau dibatalkan. Tidak seperti FOK, pesanan tidak akan dibatalkan sekiranya dapat diisi sebahagian.
  • kuantiti secara sederhana, kuantiti aset yang anda ingin beli atau jual.
  • harga harga di mana anda mahu menjual. Untuk pasangan BTCUSDT, ini dinyatakan dalam USDT.
  • newClientOrderId pengecam pesanan. Ini bukan bidang wajib, tetapi anda boleh menetapkannya ke pengecam yang akan memudahkan pertanyaan di kemudian hari. Jika tidak, ia dihasilkan secara rawak oleh pertukaran.

Baik! Mari buat pesanan ujian sekarang. Akan sesuai dengan nilai yang dihasilkan secara automatik: pesanan had untuk menjual 0.1 BTC untuk USDT pada $ 9000. Tekan Hantar . Sekiranya ini berjaya, maka cukup {} sebagai tindak balas.

Buat pesanan sebenar

Masa untuk membuat pesanan palsu sebenar.

POST / api / v3 / pesanan

Navigasi ke Perdagangan Pesanan Baru . Anda sudah biasa dengan pesanan ujian sekarang, jadi parameter di sini tidak akan mengejutkan. Mari kita tinggalkan semua nilai sebagaimana mestinya, tetapi sejak permabulls, ubah harga yang dijual menjadi $ 40,000. Tweak nilai harga untuk menggambarkan ini. Kemudian, tekan Hantar .

Maklum balas anda mengembalikan banyak butiran mengenai pesanan jika berjaya.

Periksa status pesanan terbuka

Kami mendapat pengesahan bahawa pesanan itu dibuat di bahagian sebelumnya, tetapi bagaimana jika kami ingin menyemaknya lagi nanti? Kami mempunyai beberapa permintaan.

DAPATKAN / api / v3 / openOrders

Anda dapati ini dalam Pesanan Terbuka Semasa Perdagangan (USER_DATA) . BTCUSDT dipilih secara lalai. Sekiranya anda menekan Send , anda akan mendapat semua pesanan BTCUSDT terbuka anda (setakat ini, anda hanya perlu melihat pesanan yang kami tetapkan sebelumnya). Anda boleh memilih untuk tidak menentukan simbol, yang akan mengembalikan semua pesanan terbuka anda.

DAPATKAN / api / v3 / allOrders

Trade All Order (USER_DATA) memberi anda gambaran keseluruhan semua pesanan bukan hanya pesanan terbuka. Di sini, anda mesti memberikan simbol. orderId , startTime , endTime , dan had adalah parameter pilihan yang dapat membantu anda menyempurnakan carian anda. Biarkan mereka keluar dari sini, jadi hapus centang. Tekan Hantar , dan anda akan melihat respons yang sama seperti sebelumnya. Sekiranya anda mempunyai pesanan tertutup atau dibatalkan, anda juga akan melihatnya di sini.

Terakhir, kami dapat membuat pertanyaan pesanan tertentu dengan:

DAPATKAN / api / v3 / pesanan

Dapatkan ini di bawah Pesanan Pertanyaan Perdagangan (USER_DATA) . Anda perlu memberikan orderId atau origClientOrderId (tag pilihan newClientOrderId yang boleh anda tambahkan pada pesanan). Nyahtanda pesananId . Untuk origClientOrderId , akan memberikan tag lalai dari my_order_id_1 sebelumnya. Isi medan dan tekan Kirim untuk mendapatkan respons.

Batalkan pesanan

Setelah beberapa lama, kami mungkin memutuskan bahawa sasaran $ 40,000 terlalu optimis, jadi kami ingin membatalkannya. Sekiranya demikian, penggunaan perkahwinan:

HAPUS / api / v3 / pesanan

Di bawah Trade Cancel Order adalah permintaan yang akan membolehkan kami memilih pesanan untuk pembatalan. Nyahtanda orderId dan newClientOrderId dan lulus my_order_id_1 sebagai nilai untuk origClientOrderId .

Apabila anda menghantar permintaan ini, pesanan akan dikembalikan. Sekiranya anda menatal ke bawah ke status , anda akan melihat bahawa ia benar-benar dibatalkan. Untuk mengesahkan ini, gunakan titik akhir GET / api / v3 / openOrders sekali lagi (memberikan anda senarai kosong) atau GET / api / v3 / pesanan dengan origClientOrderId .

Buat pesanan yang mengisi dengan serta-merta

Pesanan sebelumnya kami tidak dipenuhi kerana pesanan had yang hanya akan dicetuskan apabila harga BTC mencecah $ 40,000. Dengan pesanan pasaran, pada dasarnya mengatakan beli / jual pada harga apa pun yang saat ini diperdagangkan. Ini akan mengisi dengan serta-merta.

Untuk itu, mari kembali ke Trade New Order . Kami akan menunjukkan jenis respons ( newOrderRespType ), yang merupakan parameter yang dapat kami ubah bergantung pada respons yang ingin kami dapatkan dari pelayan. Terdapat tiga pilihan di sini: ACK , RESULT , atau FULL anda dapat melihat contoh setiap respons di sini . Kami akan pergi dengan ACK , yang akan memberi kami pengakuan mudah bahawa pesanan telah diterima.

Di bawah ini, anda dapat melihat bahawa hendak menghantar pesanan pasaran untuk menjual BNB untuk BUSD pada harga pasaran semasa.

Binance API Series Pt. I - Spot Trading dengan Postman

Perhatikan bahawa respons memberi kami maklumat minimum:

Binance API Series Pt. I - Spot Trading dengan Postman

Anda boleh mengesahkan bahawa pesanan itu diisi dengan titik akhir / api / v3 / allOrders .

Memeriksa perdagangan anda

Mari kita terakhir melihat titik akhir untuk memeriksa perdagangan anda:

DAPATKAN / api / v3 / myTrades

Ini terletak di bawah Daftar Akaun Perdagangan (USER_DATA) . Ini membolehkan anda memeriksa setiap perdagangan untuk simbol tertentu. Sekiranya anda ingin melihat semua perdagangan anda untuk simbol lalai ( BTCUSDT ) , hapus centang startTime , endTime dan fromId . Respons akan mengembalikan sehingga 500 perdagangan hanya mengubah had jika anda ingin melihat lebih banyak.

Menyahpepijat dengan Postman

Di Postman, ada kemungkinan untuk mendedahkan permintaan dan respons HTTP mentah.

Binance API Series Pt. I - Spot Trading dengan Postman

Menu ini akan membuka konsol Postman, yang mencetak butiran setiap permintaan.

Binance API Series Pt. I - Spot Trading dengan Postman

Menutup fikiran

Tujuan panduan ini adalah untuk memperkenalkan anda dengan lembut pada API Binance tanpa menulis satu baris kod. Sekiranya anda mengikuti, anda kini harus mempunyai idea bagaimana kita boleh meminta dan menghantar maklumat.

Dalam ansuran seterusnya dalam siri ini, memperkenalkan beberapa konsep pengkodan asas yang membolehkan kami mengautomasikan jual beli cryptocurrency dan aset digital lain.

Bersoal jawab? Pergi ke forum Komuniti Pembangun Binance kami yang sedang berkembang , atau lihat dokumentasinya.

Thank you for rating.
JAWAB KOMEN Batalkan Balasan
Sila masukkan nama anda!
Sila masukkan alamat e-mel yang betul!
Sila masukkan komen anda!
Medan g-recaptcha diperlukan!

Tinggalkan komen

Sila masukkan nama anda!
Sila masukkan alamat e-mel yang betul!
Sila masukkan komen anda!
Medan g-recaptcha diperlukan!