Galvenās līdzņemamās vietas
API ir koda daļas, kas ļauj lietojumprogrammām koplietot informāciju, un tās var izmantot, lai uzlabotu kriptovalūtas tirdzniecības stratēģijas.
Postman ir API platforma, kas vienkāršo API izveides un lietošanas procesu.
Uzziniet vairāk par Postman izmantošanu tūlītējai tirdzniecībai Binance API ekosistēmā.
Ievads
API izpratne un izmantošana kriptovalūtu tirdzniecībai var pavērt iespēju pasauli ienākšanai un iziešanai no pozīcijām. Izmantojot dažas vienkāršas kodēšanas zināšanas, varat pievienoties biržas aizmugursistēmai, lai automatizētu savas tirdzniecības stratēģijas. Apejot vietni, varat izmantot daudz ātrāku ceļu uz atbilstošo programmu augstas veiktspējas lietojumprogrammām.
Šajā rakstā mēs izmantosim Postman — vienkāršotu API platformu, lai sazinātos ar biržu. Neuztraucieties — mēs nepakļausim riskam nekādus reālus līdzekļus.
Priekšnoteikumi
Testnet atslēgas
Mēs izmantosim testnetu saviem pašreizējiem mērķiem. Šī simulācijas funkcija sniegs mums zināmus līdzekļus bez reālās vērtības, ar ko spēlēties. Tie darbojas tāpat kā īstas monētas un žetoni, tāpēc, kad esat apmierināts ar API, varat sākt to izmantot, lai tirgotu reālus līdzekļus.
Sāciet, dodoties uz Spot Test Network.
Lai iegūtu piekļuvi, piesakieties, izmantojot GitHub kontu. Jums tas būs jāizveido, ja vēl neesat to izdarījis.
Noklikšķiniet uz Autentificēt un pierakstieties, izmantojot GitHub.
Sadaļā API atslēgas jūs tiksit informēts, ka jums nav reģistrētas atslēgas. Noklikšķiniet uz Ģenerēt HMAC_SHA256 atslēgu, lai izveidotu pāri.
Nākamajā ekrānā piešķiriet taustiņiem etiķeti. Zvaniet viņiem, kā vien vēlaties, un nospiediet Ģenerēt.
Jums tiek piedāvātas divas atslēgas: API atslēga un slepenā atslēga. Ir svarīgi tos ierakstīt tūlīt. Ja nē, atslēgas izveides process būs jāsāk no jauna. Mēs iesakām tos saglabāt ierīces piezīmju lietotnē, lai vēlāk varētu viegli kopēt un ielīmēt.
Piezīme: ir vērts marķēt atslēgas, izmantojot reālo apmaiņu, lai pārvaldītu dažādas atslēgas. Jūsu kontam var būt vairākas atslēgas ar dažādām atļaujām. Ja izmantojat vairākus tirdzniecības robotus, izmantojot atsevišķas atslēgas ar aprakstošām iezīmēm, ir vieglāk pārvaldīt atļaujas vai dzēst atsevišķas atslēgas, nemainot visus robotus.
Postman lejupielāde un instalēšana
Postman ir API sadarbības platforma. Mums tas ir ideāls sākumpunkts — mums būs piekļuve Binance pieprasījumu kolekcijām, kuras pārbaudīsim, nerakstot nevienu koda rindiņu.
Programma ir pieejama operētājsistēmām Mac, Windows un Linux. Dodieties uz lapu Lejupielādes un lejupielādējiet .zip failu.
Kad tas ir pabeigts, atrodiet to savā failu pārlūkā un instalējiet to. Palaidiet lietojumprogrammu, un mēs varam sākt! Varat izveidot kontu, lai pieteiktos, bet tas nav nepieciešams. Ja vēlaties izlaist šo darbību, vienkārši atlasiet opciju, lai to izdarītu loga apakšā.
Vides radīšana
Šajā posmā jums vajadzētu būt interfeisam, kas līdzinās tālāk norādītajam.
Pirmkārt, mēs vēlamies izveidot savu vidi. Šis solis ir tikai veids, kā pievienot mainīgos lielumus pieprasījumiem, ar kuriem mēs strādāsim. Vispirms mums būs jāiegūst kāda informācija no Binance GitHub repozitorija. Dodieties šeit un lejupielādējiet .zip failu.
Lejupielādei nevajadzētu aizņemt ļoti ilgu laiku. Varat to atrast failu pārlūkā un izpakot. Pēc tam mēs varam doties atpakaļ uz Pastnieku.
Noklikšķiniet uz zobrata ikonas augšējā labajā stūrī (attēlots iepriekš). Jūs tiksit sveikts ar uznirstošo logu Pārvaldīt vidi.
Atlasiet Importēt un pārejiet uz izvilkto mapi (binance-postman-api).
Ievadiet to, pēc tam ievadiet vides mapi.
Tagad jūs redzēsit divus failus (vienu tīklam un vienu testnet). Mēs meklējam vietni binance_com_spot_testnet_api.postman_environment.json. Pārliecinieties, ka jums ir pareizā atslēga, jo mūsu atslēgas nedarbosies ar otru.
Gandrīz klāt. Noklikšķiniet uz Binance Spot Testnet API, lai skatītu tālāk norādītos mainīgos. Rediģējiet divus sarkanā krāsā iezīmētos parametrus, ielīmējot iepriekš saglabātās atslēgas. Noklikšķiniet uz atjaunināt un aizveriet uznirstošo logu.
Šajā ekrānā atstājiet laikspiedola un paraksta laukus tukšus. Šīs divas vērtības tiks automātiski izveidotas pēc katra pieprasījuma.
Ir vēl viena lieta, kas jādara. Pa labi no zobrata ikonas, uz kuras noklikšķinājām, lai iestatītu vidi agrāk, jūs redzēsiet nolaižamo izvēlni, kurā pašlaik ir rakstīts Nav vides. Noklikšķiniet uz tā un atlasiet Binance Spot Testnet API.
Kolekcijas importēšana
Tagad mēs importēsim kolekciju – šis ir plašs pieprasījumu klāsts, kas mūsu vietā zvana. Lai to ielādētu mūsu vidē:
Augšējā kreisajā stūrī noklikšķiniet uz Importēt.
Uznirstošajā logā cilnē Fails atlasiet Augšupielādēt failus.
Mēs atkal meklējam mapi binance-postman-api. Atrodiet un atveriet to.
Šoreiz apakšdirektorijā ievadiet kolekcijas.
Šeit atkal ir divi faili. Viens ir paredzēts darbam ar nākotnes API. Taču mēs strādājam ar pirmo, tāpēc jums ir jāatlasa Binance Spot API.postman_collection.json fails.
Tagad jums vajadzētu redzēt apstiprinājuma ekrānu, kurā norādīts, ka importēšana notiek Pastnieka kolekcijas formātā. Atlasiet Importēt.
Cilnē Kolekcijas, kas atrodas pa kreisi no loga, tagad pamanīsit, ka mums ir mape ar vairāk nekā 100 pieprasījumiem. Apsveicam! Mums ir labi. Nākamajā sadaļā apskatīsim, kādus pieprasījumus varam iesniegt.
Pieprasījumu veikšana
Ja cilnē Kolekcijas izvērsiet mapes, redzēsiet, ka mēs varam veikt daudz dažādu pieprasījumu. Izmantojot krāsu kodējumu, varat atzīmēt, ka mēs varam izmantot trīs veidu metodes:
GET: GET metode tiek izmantota, lai izgūtu saturu no servera. Mēs to izmantosim, lai atrastu informāciju par jūsu konta atlikumu, aktīvu cenām utt.
POST: parasti izmantosim POST metodi, lai izveidotu informāciju serverī. Šī metode ir nepieciešama, piemēram, pasūtījumu veikšanai, izņemšanas pieprasīšanai utt.
DELETE: DELETE metode pieprasa serverim dzēst informāciju. Tas noderēs pasūtījumu atcelšanai.
Atrodiet simbolu sarakstu un tirdzniecības noteikumus
Laiks mūsu pirmajam pieprasījumam! Mēs iegūsim simbolus, ar kuriem varam tirgoties biržā, un tirdzniecības noteikumus:
IEGŪT /api/v3/exchangeInfo
Šim parametram nav nepieciešami nekādi papildu parametri — varat to kopēt un ielīmēt adreses joslā, un jūs saņemsit atbildi. Bet Postman ļauj viegli redzēt un modificēt pieprasījumus, kuros mēs iekļaujam vairākus parametrus.
Lai ielādētu šo pieprasījumu, atlasiet Market > Exchange Information. Tiks parādīta šāda cilne:
Mums šeit nekas cits nav jādara, tāpēc turpiniet un noklikšķiniet uz Sūtīt. Pēc tam jūs saņemsit atbildi:
Augšējā iezīmētajā sadaļā jūs redzēsit svarīgu informāciju:
Atbildes statuss (200 nozīmē, ka esam sekmīgi, 400–499 nozīmē, ka esam saskārušies ar problēmu).
Laiks, kas bija nepieciešams atbildes saņemšanai (mazāk nekā sekunde).
Atbildes lielums (~22KB).
Otrajā lodziņā ir lielākā daļa atbildes. Šajā lodziņā ir informācija par biržu, pāriem, ar kuriem varat tirgoties, un to minimālajām/maksimālajām summām.
Šķiet, ka tajā ir daudz informācijas, taču formāts ļauj ērti strādāt ar programmu. Rakstot skriptus, lai ar to mijiedarbotos, jūs viegli varēsit no atbildes atlasīt konkrētu elementu specifiskas īpašības.
Pārbaudiet konta atlikumus
Pārbaudīsim, kādi aktīvi mums ir un cik daudz no tiem:
IEGŪT /api/v3/account
To varat atrast sadaļā Tirdzniecība > Konta informācija. Noklikšķiniet uz tā, lai redzētu izkārtojumu, kas ir līdzīgs iepriekšējam. Tomēr ņemiet vērā, ka mums ir divi jauni mainīgie: laikspiedols un paraksts. Paraksts ir drošības līdzeklis. Tā kā mēs tagad pieprasām sensitīvu informāciju, tas pierādīs, ka esam konta īpašnieki.
Laika zīmogs norāda serverim, kad pieprasījums tika nosūtīts. Tā kā tīkli var būt neuzticami vai saskarties ar dīkstāvi, serveris var saņemt mūsu pieprasījumu daudz vēlāk, nekā paredzēts. Ja ir pagājis pārāk daudz laika, tas noraidīs pieprasījumu. Varat norādīt, cik ilgi jāgaida, izmantojot parametru recvWindow, kura noklusējuma vērtība ir 5000 milisekundes.
Pastnieks mūsu vietā ģenerē abus šos laukus. Noklikšķiniet uz sūtīt, un jūs saņemsit atbildi. Zem atlikumiem jums vajadzētu redzēt sešus aktīvus — BNB, BTC, BUSD, ETH, LTC un TRX. Atlikums tiks sadalīts starp brīvajiem un bloķētajiem līdzekļiem. Mēs vēl neesam nevienu bloķējuši, tāpēc visiem jūsu līdzekļiem vajadzētu būt bez maksas.
Iegūstiet pašreizējo simbola cenu
Mēs varam iegūt pašreizējo aktīva cenu dažādos veidos. Varbūt visvienkāršākais ir ar šādu pieprasījumu:
IEGŪT /api/v3/ticker/24hr
Kā jūs varētu nojaust, tas sniegs mums informāciju par aktīvu cenām pēdējās divdesmit četrās stundās. To var atrast sadaļā Tirgus > 24 stundu cenu izmaiņu statistika. Noklusējuma pāris, ar kuru mūs sagaida kā simbola mainīgo, ir BTC/USDT.
Varat to nosūtīt uzreiz, lai redzētu cenu informācijas sadalījumu. Varat arī mainīt simbolu (uz BNB/USDT, LTC/USDT utt.) vai noņemt atzīmi no mainīgā, lai atgrieztu datus par 40 pāriem.
Mums ir arī vienkāršāks izsaukums (Tirgus > Simbolu cenas rādītājs), kas atgriež pašreizējo cenu, par kuru tiek tirgots aktīvs:
IEGŪT /api/v3/price
Tāpat kā iepriekšējā gadījumā, jūs varat mainīt simbola mainīgo vai noņemt to pilnībā un iegūt jaunāko cenu visiem simboliem.
Pārbaudiet pašreizējo pasūtījumu grāmatas dziļumu
Pasūtījumu grāmatas dziļums – saukts arī par tirgus dziļumu (DOM) – var mums daudz pastāstīt par tirgu. Mēs piezvanīsim, lai saņemtu noderīgu informāciju:
IEGŪT /api/v3/depth
Kad mēs to nosūtām ar noklusējuma vērtībām (Tirgus > Pasūtījumu grāmata), mēs saņemam atbildi, kas stāsta par piedāvājumiem un prasa BTC/USDT. Testnet serveris nesniegs tik daudz datu kā faktiskais, tāpēc zemāk ir ekrānuzņēmums ar to, ko jūs varētu redzēt reālā vidē:
Iepriekš iezīmētajā sadaļā mēs varam redzēt pirmo solījumu. Tā kā mēs skatāmies grāmatu par BTC/USDT, augšējais skaitlis ir cena, ko kāds ir gatavs maksāt par jūsu BTC. Tālāk ir norādīta summa, ko viņi ir gatavi pirkt. Tāpēc tas norāda, ka šis pasūtījums prasa 0,999 BTC ar likmi 9704,65 USDT par BTC. Ja mēs turpinātu ritināt uz leju, mēs redzētu, ka piedāvājuma cena samazināsies - pārstāvot pircējus, kuri maksātu mazāk.
Labākais piedāvājums, protams, būs vispievilcīgākais, ja meklējat naudu par labu. Tomēr, ja, piemēram, mēģināt pārdot 3 BTC, par labāko cenu varēsit pārdot tikai 0,999 BTC. Jums būs jāizmanto nākamie (lētāki) piedāvājumi, līdz pasūtījums ir aizpildīts.
Turpiniet ritināt, un jūs redzēsit jautājumus. Tie ir funkcionāli līdzīgi piedāvājumiem, izņemot tos, ka tie pārstāv rīkojumus pārdot BTC par USDT.
Veiciet pārbaudes pasūtījumu
Tagad mēs publicēsim testa pasūtījumu.
POST /api/v3/order/test
Pat ja mēs tikai izmantojam testnet līdzekļus, šis pieprasījums faktiski neveiks pasūtījumu. Tas var būt noderīgi, lai pārbaudītu pasūtījumus pirms to faktiskās iesniegšanas. Atrodiet to sadaļā Tirdzniecība > Pārbaudīt jaunu pasūtījumu (TIRDZNIECĪBA).
Jūs varat redzēt, ka mums ir iesaistīti daudzi citi parametri. Izstaigāsim pārbaudītos:
simbols — mēs ar to esam saskārušies jau iepriekš. Šis ir pāris, ar kuru vēlaties tirgoties.
pusē - šeit jūs noteiksiet, vai vēlaties PIRKT vai PĀRDOT. Izmantojot BTC/USDT pāri, BUY norāda, ka vēlaties iegādāties BTC par USDT, savukārt pārdodot, BTC tiks pārdots par USDT.
tips – pasūtījuma veids, kuru vēlaties iesniegt. Iespējamās vērtības (detalizēti šeit):
LIMIT
TIRGUS
PĀRTRAUKT ZAUDĒJUMU
STOP_LOSS_LIMIT
TAKE_PROFIT
TAKE_PROFIT_LIMIT
LIMIT_MAKER
timeInForce – šis parametrs izsaka, kā vēlaties izpildīt pasūtījumu:
GTC (derīgs līdz anulēšanai) — iespējams, vispopulārākais iestatījums, GTC nodrošinās, ka jūsu pasūtījums ir derīgs, līdz tas tiks aizpildīts vai atcelts.
FOK (fill or kill) – FOK uzdod biržai izpildīt pasūtījumu visu uzreiz. Ja apmaiņa to nevar izdarīt, pasūtījums tiek nekavējoties atcelts.
SOK (tūlītēja vai atcelšana) – vai nu viss pasūtījums vai tā daļa ir jāizpilda nekavējoties, vai arī tas tiek atcelts. Atšķirībā no FOK, pasūtījumi netiek atcelti, ja tos var daļēji aizpildīt.
daudzums – aktīva daudzums, kuru vēlaties pirkt vai pārdot.
cena – cena, par kādu vēlaties pārdot. BTC/USDT pārim tas ir izteikts USDT.
newClientOrderId – pasūtījuma identifikators. Šis lauks nav obligāts, taču varat to iestatīt kā identifikatoru, kas atvieglos vaicājumu veikšanu vēlāk. Pretējā gadījumā to nejauši ģenerē apmaiņa.
Labi! Tagad izveidosim testa pasūtījumu. Mēs turpināsim ar automātiski ģenerētajām vērtībām: limita rīkojumu pārdot 0,1 BTC par USDT par USD 9000. Noklikšķiniet uz Sūtīt. Ja tas izdosies, kā atbildi saņemsim {}.
Veiciet reālu pasūtījumu
Laiks veikt reālu pasūtījumu.
POST /api/v3/order
Dodieties uz Tirdzniecība > Jauns pasūtījums. Jūs jau esat iepazinies ar testa pasūtījumiem, tāpēc šeit norādītie parametri nebūs pārsteigums. Atstāsim visas vērtības tādas, kādas tās ir, bet mainīsim cenu, ko pārdodam uz 40 000 USD. Pielāgojiet cenas vērtību, lai to atspoguļotu. Pēc tam noklikšķiniet uz Sūtīt.
Ja jūsu atbilde ir veiksmīga, tiek parādīta virkne detalizētas informācijas par pasūtījumu.
Pārbaudiet atvērta pasūtījuma statusu
Mēs saņēmām apstiprinājumu, ka pasūtījums tika veikts iepriekšējā sadaļā, bet ko darīt, ja mēs vēlamies to vēlreiz pārbaudīt vēlāk? Mūsu rīcībā ir daži pieprasījumi.
IEGŪT /api/v3/openOrders
To atradīsit sadaļā Tirdzniecība > Pašreizējie atvērtie pasūtījumi (USER_DATA). Pēc noklusējuma ir atlasīts BTC/USDT. Ja noklikšķināsit uz Sūtīt, jūs saņemsiet visus savus atvērtos BTC/USDT pasūtījumus (līdz šim jums vajadzētu redzēt tikai to, ko mēs iestatījām iepriekš). Varat arī izvēlēties nenorādīt simbolu, kas tā vietā atgriezīs visus jūsu atvērtos pasūtījumus.
IEGŪT /api/v3/allOrders
Tirdzniecība > Visi pasūtījumi (USER_DATA) sniedz pārskatu par visiem pasūtījumiem — ne tikai par atvērtajiem. Šeit jums ir jānorāda simbols. orderId, startTime, endTime un limit ir izvēles parametri, kas var palīdzēt precizēt meklēšanu. Mēs tos atstāsim šeit, tāpēc noņemiet atzīmi no tiem. Noklikšķiniet uz Sūtīt, un jūs redzēsit to pašu atbildi kā iepriekš. Ja jums ir bijuši slēgti vai atcelti pasūtījumi, tie būs redzami arī šeit.
Visbeidzot, mēs varam pieprasīt konkrētus pasūtījumus, izmantojot šādus datus:
IEGŪT /api/v3/order
Iegūstiet to sadaļā Tirdzniecība > Pieprasīt pasūtījumu (USER_DATA). Jums būs jānorāda orderId vai origClientOrderId (neobligāts tags “newClientOrderId”, ko varat pievienot pasūtījumiem). Noņemiet atzīmi no pasūtījuma ID. OrigClientOrderId mēs nodrošināsim noklusējuma tagu no iepriekšējām — “my_order_id_1”. Aizpildiet lauku un nospiediet Sūtīt, lai saņemtu atbildi.
Atcelt pasūtījumu
Pēc kāda laika mēs varētu nolemt, ka 40 000 USD mērķis ir pārāk optimistisks, tāpēc vēlamies to atcelt. Tādā gadījumā mēs izmantotu tālāk norādīto.
DZĒST /api/v3/order
Sadaļā Tirdzniecība > Atcelt pasūtījumu ir pieprasījums, kas ļaus mums izcelt pasūtījumus atcelšanai. Noņemiet atzīmi no orderId un newClientOrderId un ievadiet “my_order_id_1” kā origClientOrderId vērtību.
Nosūtot šo pieprasījumu, pasūtījums tiks atgriezts. Ja ritināsit uz leju līdz “statuss”, redzēsit, ka tas patiešām ir atcelts. Lai to apstiprinātu, vēlreiz izmantojiet galapunktu GET /api/v3/openOrders (dodot jums tukšu sarakstu) vai GET /api/v3/order ar origClientOrderId.
Veiciet pasūtījumu, kas tiek aizpildīts uzreiz
Mūsu iepriekšējais pasūtījums netika aizpildīts, jo tas bija ierobežots pasūtījums, kas tika aktivizēts tikai tad, kad BTC cena sasniedza 40 000 USD. Ar tirgus pasūtījumu mēs būtībā sakām: "Pērciet vai pārdodiet par jebkuru cenu, par kādu aktīvu pašlaik tirgo." Tas aizpildīsies uzreiz.
Lai to izdarītu, atgriezīsimies pie Tirdzniecība> Jauns pasūtījums. Mēs parādīsim atbildes veidu (newOrderRespType), kas ir parametrs, kuru mēs varam pielāgot atkarībā no atbildes, ko vēlamies no servera. Šeit ir trīs iespējas: ACK, RESULT vai FULL — šeit varat redzēt katras atbildes piemērus. Mēs iesim ar ACK, kas dod mums vienkāršu apstiprinājumu, ka pasūtījums ir saņemts.
Zemāk varat redzēt, ka mēs gatavojamies iesniegt tirgus rīkojumu pārdot BNB par BUSD par pašreizējo tirgus cenu.
Ņemiet vērā, ka atbilde sniedz mums minimālu informāciju:
Varat pārbaudīt, vai pasūtījums ir aizpildīts ar /api/v3/allOrders galapunktu.
Pārbauda savus darījumus
Visbeidzot, apskatīsim jūsu darījumu pārbaudes beigu punktu:
IEGŪT /api/v3/myTrades
Tas atrodas sadaļā Tirdzniecība > Konta darījumu saraksts (USER_DATA). Tas ļauj jums pārbaudīt katru darījumu ar noteiktu simbolu. Ja vēlaties redzēt visus savus darījumus ar noklusējuma simbolu (BTC/USDT), vienkārši noņemiet atzīmi no startTime, endTime un fromId. Atbilde atgriezīsies līdz pat 500 darījumiem — vienkārši pielāgojiet limitu, ja vēlaties redzēt vairāk.
Atkļūdošana ar pastnieku
Programmā Postman ir iespējams tālāk atklāt neapstrādāto HTTP pieprasījumu un atbildi.
Šajā izvēlnē tiks atvērta pastnieka konsole, kurā tiek izdrukāta informācija par katru pieprasījumu.
Sāciet darbu ar Binance API
Šīs rokasgrāmatas mērķis bija saudzīgi iepazīstināt jūs ar Binance API, neierakstot nevienu koda rindiņu. Ja esat sekojis līdzi, tagad jums vajadzētu zināt, kā mēs varam pieprasīt un iesniegt informāciju.
Tikmēr jautājumi? Dodieties uz mūsu augošo Binance izstrādātāju kopienas forumu vai skatiet dokumentāciju.
Tālāka lasīšana
Glosārijs: Lietojumprogrammu saskarne (API)
Kas ir API atslēga un kā to droši lietot?
Kā droši lietot API atslēgu: 5 Binance padomi

