Wichtigste Erkenntnisse
APIs sind Codeteile, die es Anwendungen ermöglichen, Informationen auszutauschen und zur Verbesserung von Handelsstrategien für Kryptowährungen verwendet werden können.
Postman ist eine API-Plattform, die den Prozess des Erstellens und Verwendens von APIs vereinfacht.
Erfahren Sie mehr über die Verwendung von Postman für den Spothandel im Binance API-Ökosystem.
Einführung
Das Verstehen und Verwenden einer API für den Kryptowährungshandel kann eine Welt voller Möglichkeiten für das Eingehen und Verlassen von Positionen eröffnen. Mit einigen einfachen Programmierkenntnissen können Sie sich in das Backend einer Börse einklinken, um Ihre Handelsstrategien zu automatisieren. Indem Sie die Website umgehen, können Sie einen viel schnelleren Weg zur Matching-Engine für Hochleistungsanwendungen nehmen.
In diesem Artikel verwenden wir Postman, eine vereinfachte API-Plattform, um mit der Börse zu kommunizieren. Keine Sorge – wir werden kein echtes Geld riskieren.
Voraussetzungen
Testnet-Schlüssel
Wir werden das Testnetz für unsere aktuellen Zwecke verwenden. Diese Simulationsfunktion wird uns einige Fonds ohne realen Wert zum Spielen geben. Sie funktionieren genauso wie echte Münzen und Token. Sobald Sie mit der API vertraut sind, können Sie damit beginnen, mit echten Fonds zu handeln.
Gehen Sie zunächst zum Spot Test Network.
Um Zugriff zu erhalten, melden Sie sich mit einem GitHub-Konto an. Sie müssen ein Konto erstellen, falls Sie dies noch nicht getan haben.
Klicken Sie auf „Authentifizieren“ und melden Sie sich über GitHub an.
Unter API-Schlüssel werden Sie darüber informiert, dass Sie keine Schlüssel registriert haben. Klicken Sie auf HMAC_SHA256-Schlüssel generieren, um ein Paar zu erstellen.
Geben Sie den Schlüsseln auf dem nächsten Bildschirm eine Bezeichnung. Geben Sie ihnen einen beliebigen Namen und klicken Sie auf „Generieren“.
Ihnen werden zwei Schlüssel angezeigt: der API-Schlüssel und der geheime Schlüssel. Es ist wichtig, dass Sie diese jetzt aufzeichnen. Wenn Sie das nicht tun, müssen Sie den Schlüsselerstellungsprozess erneut starten. Wir empfehlen, sie in der Notizen-App Ihres Computers zu speichern, damit Sie sie später einfach kopieren und einfügen können.
Hinweis: Es lohnt sich, Ihre Schlüssel zu beschriften, wenn Sie die echte Börse verwenden, um verschiedene Schlüssel zu verwalten. Ihr Konto kann mehrere Schlüssel mit unterschiedlichen Berechtigungen haben. Wenn Sie mehrere Trading-Bots betreiben, erleichtert die Verwendung separater Schlüssel mit beschreibenden Beschriftungen die Verwaltung von Berechtigungen oder das Löschen einzelner Schlüssel, ohne alle Ihre Bots zu ändern.
Herunterladen und Installieren von Postman
Postman ist eine API-Kollaborationsplattform. Für uns ist es ein perfekter Ausgangspunkt – wir haben Zugriff auf Sammlungen von Binance-Anfragen, die wir testen können, ohne eine einzige Zeile Code schreiben zu müssen.
Das Programm ist für Mac, Windows und Linux verfügbar. Gehen Sie zur Download-Seite und laden Sie die ZIP-Datei herunter.
Sobald dies abgeschlossen ist, suchen Sie es in Ihrem Datei-Explorer und installieren Sie es. Starten Sie die Anwendung, und schon kann es losgehen! Sie können ein Konto erstellen, um sich anzumelden, dies ist jedoch nicht erforderlich. Wenn Sie diesen Schritt überspringen möchten, wählen Sie einfach die entsprechende Option unten im Fenster aus.
Erstellen der Umgebung
Zu diesem Zeitpunkt sollten Sie über eine Schnittstelle verfügen, die ungefähr wie folgt aussieht.
Zuerst möchten wir unsere Umgebung erstellen. Dieser Schritt ist nur eine Möglichkeit, den Anfragen, mit denen wir arbeiten werden, Variablen hinzuzufügen. Wir müssen zuerst einige Informationen aus dem Binance GitHub-Repository abrufen. Gehen Sie hierher und laden Sie die ZIP-Datei herunter.
Der Download sollte nicht sehr lange dauern. Sie finden es in Ihrem Datei-Explorer und können es entpacken. Dann können wir wieder zu Postman zurückkehren.
Klicken Sie oben rechts auf das Zahnradsymbol (siehe Abbildung oben). Ein Popup „Umgebungen verwalten“ wird angezeigt.
Wählen Sie „Importieren“ und navigieren Sie zu Ihrem extrahierten Ordner (binance-postman-api).
Geben Sie es ein und öffnen Sie dann den Umgebungsordner.
Sie sehen nun zwei Dateien (eine für Mainnet und eine für Testnet). Die gesuchte Datei ist binance_com_spot_testnet_api.postman_environment.json. Stellen Sie sicher, dass Sie die richtige haben, da unsere Schlüssel mit der anderen nicht funktionieren.
Fast geschafft. Klicken Sie auf Binance Spot Testnet API, um die Variablen unten anzuzeigen. Bearbeiten Sie die beiden rot umrandeten Parameter, indem Sie die zuvor gespeicherten Schlüssel einfügen. Klicken Sie auf „Aktualisieren“ und schließen Sie das Popup.
Lassen Sie auf diesem Bildschirm die Felder Zeitstempel und Signatur leer. Diese beiden Werte werden bei jeder Anforderung automatisch erstellt.
Es gibt noch eine letzte Sache zu tun. Rechts neben dem Zahnradsymbol, auf das wir geklickt haben, um die Umgebung einzurichten, sehen Sie ein Dropdown-Menü, in dem derzeit „Keine Umgebung“ steht. Klicken Sie darauf und wählen Sie „Binance Spot Testnet API“.
Importieren der Sammlung
Jetzt importieren wir die Sammlung – das ist eine umfangreiche Auswahl an Anfragen, die uns bei Anrufen die schwere Arbeit abnehmen. So laden wir sie in unsere Umgebung:
Klicken Sie oben links auf „Importieren“.
Wählen Sie im Popup unter der Registerkarte „Datei“ die Option „Dateien hochladen“ aus.
Wir suchen erneut nach dem Ordner „binance-postman-api“. Suchen und öffnen Sie ihn.
Geben Sie dieses Mal Sammlungen im Unterverzeichnis ein.
Auch hier gibt es wieder zwei Dateien. Eine ist für die Arbeit mit der Futures-API. Wir arbeiten aber mit der Spot-API, daher müssen Sie die Datei Binance Spot API.postman_collection.json auswählen.
Sie sollten nun einen Bestätigungsbildschirm sehen, der den Import als im Postman Collection-Format vorliegend identifiziert. Wählen Sie Importieren.
Unter der Registerkarte „Sammlungen“ auf der linken Seite des Fensters sehen Sie nun, dass wir einen Ordner mit über 100 Anfragen haben. Herzlichen Glückwunsch! Wir können loslegen. Im nächsten Abschnitt sehen wir uns die Arten von Anfragen an, die wir stellen können.
Anfragen
Wenn Sie die Ordner unter der Registerkarte „Sammlungen“ erweitern, sehen Sie, dass wir viele verschiedene Anfragen stellen können. An der Farbcodierung erkennen Sie, dass wir drei Arten von Methoden verwenden können:
GET: Die GET-Methode wird verwendet, um Daten von einem Server abzurufen. Wir verwenden diese Methode, um Informationen über Ihren Kontostand, Vermögenspreise usw. zu finden.
POST: Wir verwenden im Allgemeinen die POST-Methode, um Informationen auf einem Server zu erstellen. Diese Methode wird für Dinge wie das Aufgeben von Bestellungen, das Anfordern von Auszahlungen usw. benötigt.
LÖSCHEN: Die DELETE-Methode fordert den Server auf, Informationen zu löschen. Dies ist praktisch, wenn Sie Bestellungen stornieren möchten.
Hier finden Sie die Liste der Symbole und die Handelsregeln
Zeit für unsere erste Anfrage! Wir werden die Symbole erhalten, die wir an der Börse handeln können, und die Handelsregeln:
GET /api/v3/exchangeInfo
Dieser nimmt keine zusätzlichen Parameter an – Sie können ihn kopieren und in Ihre Adressleiste einfügen und erhalten eine Antwort. Aber Postman macht es einfach, Anfragen anzuzeigen und zu ändern, bei denen wir mehrere Parameter angeben.
Um diese Anfrage zu laden, wählen Sie Markt > Börseninformationen. Eine Registerkarte wie die folgende wird eingeblendet:
Hier müssen wir nichts weiter tun, also klicken Sie einfach auf Senden. Sie erhalten dann eine Antwort:
Im obersten hervorgehobenen Abschnitt sehen Sie einige wichtige Informationen:
Der Status der Antwort (200 bedeutet, dass wir erfolgreich waren, 400-499 bedeutet, dass ein Problem aufgetreten ist).
Die Zeit, die zum Empfangen der Antwort benötigt wurde (weniger als eine Sekunde).
Die Größe der Antwort (~22 KB).
Im zweiten Feld befindet sich der Großteil der Antwort. Dieses Feld enthält Informationen zur Börse, den Paaren, mit denen Sie handeln können, und deren Mindest-/Höchstbeträge.
Das sieht nach einer Menge an Informationen aus, aber das Format erleichtert die programmgesteuerte Arbeit. Wenn Sie Skripts zur Interaktion damit schreiben, können Sie problemlos bestimmte Eigenschaften bestimmter Elemente aus der Antwort auswählen.
Überprüfen Sie die Kontostände
Lassen Sie uns prüfen, über welche Vermögenswerte wir verfügen und wie viel von jedem:
GET /api/v3/Konto
Dieses finden Sie unter Handel > Kontoinformationen. Klicken Sie darauf, um ein Layout ähnlich dem vorherigen anzuzeigen. Sie werden jedoch auch feststellen, dass wir zwei neue Variablen haben: Zeitstempel und Signatur. Die Signatur ist eine Sicherheitsmaßnahme. Da wir jetzt nach vertraulichen Informationen fragen, wird sie beweisen, dass wir der Kontoinhaber sind.
Der Zeitstempel teilt dem Server mit, wann die Anfrage gesendet wurde. Da Netzwerke unzuverlässig sein oder Ausfallzeiten haben können, erhält der Server unsere Anfrage möglicherweise viel später als beabsichtigt. Wenn zu viel Zeit vergangen ist, wird die Anfrage abgelehnt. Sie können mit dem Parameter recvWindow angeben, wie lange Sie warten möchten. Der Standardwert beträgt 5000 Millisekunden.
Postman übernimmt die Generierung dieser beiden Felder für uns. Klicken Sie auf „Senden“ und Sie erhalten eine Antwort. Unter „Guthaben“ sollten Sie sechs Vermögenswerte sehen – BNB, BTC, BUSD, ETH, LTC und TRX. Das Guthaben wird auf freie und gesperrte Vermögenswerte aufgeteilt. Wir haben noch keine gesperrt, daher sollten Ihre Vermögenswerte alle frei sein.
Den aktuellen Preis für ein Symbol abrufen
Den aktuellen Preis eines Vermögenswerts können wir auf verschiedene Weise ermitteln. Am einfachsten ist vielleicht die folgende Abfrage:
GET /api/v3/ticker/24hr
Wie Sie sich vielleicht denken können, erhalten wir hierdurch Informationen zu den Vermögenspreisen der letzten 24 Stunden. Sie finden diese unter „Markt“ > „24-Stunden-Ticker-Preisänderungsstatistik“. Das Standardpaar, das uns als Symbolvariable angezeigt wird, ist BTC/USDT.
Sie können dies sofort senden, um eine Aufschlüsselung der Preisinformationen anzuzeigen. Sie können auch das Symbol ändern (in BNB/USDT, LTC/USDT usw.) oder die Variable deaktivieren, um Daten für 40 Paare zurückzugeben.
Wir haben auch einen einfacheren Aufruf (Markt > Symbolpreis-Ticker), der den aktuellen Preis zurückgibt, zu dem ein Vermögenswert gehandelt wird:
GET /api/v3/Preis
Wie beim vorherigen können Sie die Symbolvariable ändern oder vollständig entfernen und den neuesten Preis für alle Symbole abrufen.
Prüfen Sie die aktuelle Orderbuchtiefe
Die Orderbuchtiefe – auch Markttiefe (DOM) genannt – kann uns viel über den Markt verraten. Wir werden einen Aufruf durchführen, der einige nützliche Informationen zurückgibt:
GET /api/v3/Tiefe
Wenn wir dies mit den Standardwerten (Markt > Orderbuch) senden, erhalten wir eine Antwort, die uns über die Gebote und Anfragen für BTC/USDT informiert. Der Testnet-Server liefert nicht so viele Daten wie der tatsächliche, daher ist unten ein Screenshot dessen, was Sie in einer realen Umgebung erwarten würden:
Im hervorgehobenen Abschnitt oben können wir das erste Gebot sehen. Da wir uns das Buch für BTC/USDT ansehen, ist die obere Zahl der Preis, den jemand bereit ist, für Ihre BTC zu zahlen. Darunter steht der Betrag, den er zu kaufen bereit ist. Das bedeutet also, dass diese Bestellung 0,999 BTC zu einem Kurs von 9704,65 USDT pro BTC verlangt. Wenn wir weiter nach unten scrollen würden, würden wir sehen, dass der Angebotspreis sinkt – was Käufer darstellt, die weniger zahlen würden.
Das höchste Angebot ist natürlich das attraktivste, wenn Sie das beste Preis-Leistungs-Verhältnis suchen. Wenn Sie jedoch beispielsweise 3 BTC verkaufen möchten, können Sie nur 0,999 BTC zum besten Preis verkaufen. Sie müssen die nachfolgenden (günstigeren) Angebote annehmen, bis Ihre Bestellung ausgeführt wird.
Scrollen Sie weiter und Sie werden die Angebote sehen. Sie sind funktional ähnlich wie Gebote, außer dass sie Aufträge zum Verkauf von BTC für USDT darstellen.
Testbestellung aufgeben
Nun geben wir eine Testbestellung auf.
POST /api/v3/order/test
Obwohl wir nur Testnet-Gelder verwenden, wird durch diese Anfrage keine tatsächliche Bestellung aufgegeben. Sie kann hilfreich sein, um Bestellungen zu testen, bevor Sie sie tatsächlich übermitteln. Sie finden sie unter Trade > Test New Order (TRADE).
Sie sehen, dass hier noch viele weitere Parameter beteiligt sind. Sehen wir uns die markierten Parameter an:
Symbol – das ist uns schon einmal begegnet. Dies ist das Paar, das Sie handeln möchten.
Seite – hier legen Sie fest, ob Sie KAUFEN oder VERKAUFEN möchten. Beim Paar BTC/USDT bedeutet KAUFEN, dass Sie BTC für USDT kaufen möchten, während Verkaufen BTC für USDT verkauft.
Typ – die Art der Bestellung, die Sie übermitteln möchten. Mögliche Werte (hier detailliert beschrieben):
GRENZE
MARKT
STOP_LOSS
STOP_LOSS_LIMIT
Gewinn mitnehmen
TAKE_PROFIT_LIMIT
LIMIT_MAKER
timeInForce – dieser Parameter gibt an, wie die Bestellung ausgeführt werden soll:
GTC (gültig bis Stornierung) – möglicherweise die beliebteste Konfiguration. GTC stellt sicher, dass Ihre Bestellung gültig ist, bis sie ausgeführt oder storniert wird.
FOK (Fill or Kill) – FOK weist die Börse an, einen Auftrag auf einmal auszuführen. Wenn die Börse dazu nicht in der Lage ist, wird der Auftrag sofort storniert.
IOC (immediate or cancel) – entweder muss die gesamte oder ein Teil der Order sofort ausgeführt werden, oder sie wird storniert. Im Gegensatz zu FOK werden die Orders nicht storniert, wenn sie teilweise ausgeführt werden können.
Menge – die Menge des Vermögenswerts, den Sie kaufen oder verkaufen möchten.
Preis – der Preis, zu dem Sie verkaufen möchten. Für das Paar BTC/USDT wird dieser in USDT angegeben.
newClientOrderId – eine Kennung für die Bestellung. Dies ist kein Pflichtfeld, aber Sie können es auf eine Kennung setzen, die spätere Abfragen vereinfacht. Andernfalls wird es zufällig von der Börse generiert.
Okay! Erstellen wir jetzt eine Testorder. Wir fahren mit den automatisch generierten Werten fort: eine Limitorder zum Verkauf von 0,1 BTC für USDT zu 9.000 $. Klicken Sie auf Senden. Wenn dies erfolgreich ist, erhalten wir {} als Antwort.
Eine echte Bestellung aufgeben
Zeit, eine echte Bestellung aufzugeben.
POST /api/v3/order
Navigieren Sie zu Handel > Neue Bestellung. Sie sind mittlerweile mit Testbestellungen vertraut, daher werden die Parameter hier keine Überraschung sein. Lassen wir alle Werte so, wie sie sind, ändern aber den Verkaufspreis auf 40.000 USD. Passen Sie den Preiswert entsprechend an. Klicken Sie dann auf Senden.
Im Erfolgsfall enthält Ihre Antwort zahlreiche Einzelheiten zur Bestellung.
Den Status einer offenen Bestellung prüfen
Wir haben im vorherigen Abschnitt eine Bestätigung erhalten, dass die Bestellung aufgegeben wurde. Was aber, wenn wir sie später noch einmal überprüfen möchten? Wir haben einige Anfragen zur Verfügung.
GET /api/v3/openOrders
Sie finden dies unter Handel > Aktuell offene Aufträge (USER_DATA). BTC/USDT ist standardmäßig ausgewählt. Wenn Sie auf Senden klicken, erhalten Sie alle Ihre offenen BTC/USDT-Aufträge (bisher sollten Sie nur den Auftrag sehen, den wir zuvor festgelegt haben). Sie können auch kein Symbol angeben, wodurch stattdessen alle Ihre offenen Aufträge zurückgegeben werden.
GET /api/v3/allOrders
Handel > Alle Aufträge (USER_DATA) gibt Ihnen eine Übersicht über alle Aufträge – nicht nur über offene. Hier müssen Sie ein Symbol angeben. OrderId, Startzeit, Endzeit und Limit sind optionale Parameter, mit denen Sie Ihre Suche verfeinern können. Wir lassen sie hier weg, also deaktivieren Sie sie. Klicken Sie auf Senden und Sie sehen dieselbe Antwort wie zuvor. Wenn Sie geschlossene oder stornierte Aufträge haben, sehen Sie diese hier ebenfalls.
Abschließend können wir bestimmte Bestellungen wie folgt abfragen:
GET /api/v3/order
Dies erhalten Sie unter Handel > Bestellung abfragen (USER_DATA). Sie müssen entweder die OrderId oder die OrigClientOrderId angeben (das optionale Tag „newClientOrderId“, das Sie zu Bestellungen hinzufügen können). Deaktivieren Sie OrderId. Für OrigClientOrderId geben wir das Standardtag von vorhin an – „my_order_id_1“. Füllen Sie das Feld aus und klicken Sie auf Senden, um die Antwort zu erhalten.
Eine Bestellung stornieren
Nach einiger Zeit könnten wir entscheiden, dass das Ziel von 40.000 USD zu optimistisch ist und wir es daher aufheben möchten. In diesem Fall würden wir Folgendes verwenden:
LÖSCHEN /api/v3/order
Unter Handel > Bestellung stornieren finden Sie eine Anfrage, mit der Sie Bestellungen für die Stornierung einzeln auswählen können. Deaktivieren Sie orderId und newClientOrderId und übergeben Sie „my_order_id_1“ als Wert für origClientOrderId.
Wenn Sie diese Anfrage senden, wird die Bestellung zurückgesendet. Wenn Sie nach unten zu „Status“ scrollen, sehen Sie, dass sie tatsächlich storniert wurde. Um dies zu bestätigen, verwenden Sie erneut den Endpunkt GET /api/v3/openOrders (wodurch Sie eine leere Liste erhalten) oder GET /api/v3/order mit der origClientOrderId.
Geben Sie eine Bestellung auf, die sofort ausgeführt wird
Unsere vorherige Order wurde nicht ausgeführt, da es sich um eine Limit-Order handelte, die nur ausgelöst würde, wenn der BTC-Preis 40.000 USD erreichte. Mit einer Marktorder sagen wir im Wesentlichen: „Kaufen oder verkaufen Sie zu dem Preis, zu dem der Vermögenswert aktuell gehandelt wird.“ Diese Order wird sofort ausgeführt.
Gehen wir dazu zurück zu Handel > Neue Bestellung. Wir demonstrieren den Antworttyp (newOrderRespType), einen Parameter, den wir je nach gewünschter Antwort vom Server anpassen können. Hier gibt es drei Optionen: ACK, RESULT oder FULL – Beispiele für jede Antwort finden Sie hier. Wir wählen ACK, was uns eine einfache Bestätigung gibt, dass die Bestellung eingegangen ist.
Unten sehen Sie, dass wir im Begriff sind, eine Marktorder zum Verkauf von BNB für BUSD zum aktuellen Marktpreis einzureichen.
Beachten Sie, dass die Antwort uns nur minimale Informationen liefert:
Sie können mit dem Endpunkt /api/v3/allOrders überprüfen, ob die Bestellung ausgeführt wurde.
Überprüfen Sie Ihre Trades
Schauen wir uns zum Schluss den Endpunkt zur Überprüfung Ihrer Trades an:
GET /api/v3/myTrades
Dies befindet sich unter Handel > Kontohandelsliste (USER_DATA). Sie können damit jeden Handel für ein bestimmtes Symbol überprüfen. Wenn Sie alle Ihre Handel für das Standardsymbol (BTC/USDT) sehen möchten, deaktivieren Sie einfach Startzeit, Endzeit und FromId. Die Antwort gibt bis zu 500 Handel zurück – passen Sie einfach das Limit an, wenn Sie mehr sehen möchten.
Debuggen mit Postman
In Postman ist es möglich, die unverarbeitete HTTP-Anfrage und -Antwort weiter offenzulegen.
Dieses Menü öffnet die Postman-Konsole, die die Details jeder Anfrage ausdruckt.
Erste Schritte mit der Binance API
Der Zweck dieses Leitfadens bestand darin, Ihnen die Binance-API behutsam vorzustellen, ohne eine einzige Zeile Code schreiben zu müssen. Wenn Sie den Anweisungen gefolgt sind, sollten Sie jetzt eine Vorstellung davon haben, wie wir Informationen anfordern und übermitteln können.
Haben Sie in der Zwischenzeit Fragen? Besuchen Sie unser wachsendes Binance Developer Community-Forum oder sehen Sie sich die Dokumentation an.
Weitere Informationen
Glossar: Anwendungsprogrammierschnittstelle (API)
Was ist ein API-Schlüssel und wie wird er sicher verwendet?
So verwenden Sie einen API-Schlüssel sicher: 5 Tipps von Binance

