API Kucoin

Kucoin

 

Kucoin ist eine internationale mehrsprachige Kryptowährungsbörse. Sie bietet einige APIs für den Zugriff auf Kucoin-Daten. Die folgenden APIs werden unterstützt:

 

  1. WebSocket-Streams: ermöglichen es Ihnen, einige Methoden zu abonnieren und Daten in Echtzeit zu erhalten. Ereignisse werden vom Server an die Abonnenten gepusht. Verwendet WebSocket als Protokoll.
  2. REST API: Clients können Markt- und Kontodaten vom Server anfordern. Erfordert einen API-Schlüssel, ein Secret und eine Passphrase zur Authentifizierung und verwendet HTTPS als Protokoll.

 

 

Properties

Die Kucoin-API hat 2 Arten von Methoden: öffentliche und private. Auf öffentliche Methoden kann ohne Authentifizierung zugegriffen werden, zum Beispiel: Abrufen von Ticker-Preisen. Private Methoden, die sich auf Benutzerdaten beziehen, erfordern die Verwendung von Kucoin-API-Schlüsseln.

 

 

Häufigste Verwendungen

 

WebSocket Feed

Um Kanalnachrichten von einem bestimmten Server zu abonnieren, sollte die Client-Seite eine Abonnementnachricht an den Server senden.

Wenn das Abonnement erfolgreich ist, sendet Ihnen das System ACK-Nachrichten, wenn die Antwort auf true gesetzt ist.

{
"id":"1545910660739",
"type":"ack"
}
Solange Themen-Nachrichten generiert werden, sendet das System die entsprechenden Nachrichten an die Client-Seite.

 

Die folgenden Abonnement-/Abbestellungsmethoden werden unterstützt.

 

Public Channels

 

Method Parameter Beschreibung
SubscribeSymbolTicker Symbol Abonnieren Sie dieses Topic, um den Push von BBO-Änderungen zu erhalten. Wenn innerhalb einer Sekunde keine Änderung erfolgt, wird kein Push gesendet. Es wird alle 100 ms mit dem neuesten BBO gesendet. Wenn es im Vergleich zu den letzten Daten keine Änderung gab, wird es nicht gesendet.
SubscribeAllSymbolsTicker   Abonnieren Sie dieses Thema, um den Push aller BBO-Änderungen der Marktsymbole zu erhalten.
SubscribeSymbolSnapshot Symbol Abonnieren Sie, um Snapshot-Daten für ein einzelnes Symbol zu erhalten. Die Snapshot-Daten werden in 2-Sekunden-Intervallen gepusht.
SubscribeMarketSnapshot Market Abonnieren Sie dieses Topic, um die Snapshot-Daten für den gesamten Markt zu erhalten. Die Snapshot-Daten werden in 2-Sekunden-Intervallen gepusht.
SubscribeLevel2MarketData Symbol Abonnieren Sie dieses Topic, um Level2-Orderbuchdaten zu erhalten. Wenn das WebSocket-Abonnement erfolgreich ist, sendet das System die vom WebSocket übermittelten inkrementellen Änderungsdaten an Sie.
SubscribeLevel2_5BestAskBid Symbol Das System gibt die 5 besten Ask-/Bid-Orderdaten zurück, was die Snapshot-Daten alle 100 Millisekunden sind (mit anderen Worten, die 5 besten Ask-/Bid-Orderdaten, die alle 100 Millisekunden in Echtzeit zurückgegeben werden).
SubscribeLevel2_50BestAskBid Symbol Das System gibt die 50 besten Ask/Bid-Auftragsdaten zurück, die die Snapshot-Daten alle 100 Millisekunden sind (mit anderen Worten, die 50 besten Ask/Bid-Auftragsdaten, die alle 100 Millisekunden in Echtzeit zurückgegeben werden).
SubscribeKlines Symbol Abonnieren Sie dieses Topic, um K-Line-Daten zu erhalten.
SubscribeMatchExecutionData Symbol Abonnieren Sie dieses Topic, um den passenden Ereignisdatenfluss von Level 3 zu erhalten. Für jede gehandelte Order sendet Ihnen das System die Match-Nachrichten im folgenden Format.
SubscribeIndexPrice Symbol Abonnieren Sie dieses Topic, um den Indexpreis für den Margin-Handel zu erhalten.
SubscribeMarkPrice Symbol Abonnieren Sie dieses Topic, um den Mark-Preis für Margin-Trading zu erhalten.
SubscribeOrderBookChanged Symbol Abonnieren Sie dieses Topic, um die Orderbuchänderungen im Margin-Handel zu erhalten.
SubscribeLevel1 Symbol Abonniert Level-1-Best-Bid/Ask-Daten für ein Symbol.

 

Wenn der Parameter ACK auf true gesetzt ist, erhält der Client nach einem erfolgreichen Abonnement / einer erfolgreichen Abmeldung eine Nachricht darüber.

 

Private Kanäle

Erfordert einen gültigen ApiKey, der von Ihrem Kucoin-Konto bezogen wird. Der ApiKey, das ApiSecret und die Passphrase müssen in der Kucoin-Eigenschaft der Client-API-Komponente festgelegt werden.

 

Die folgenden Daten werden bei jeder Änderung an den Client gesendet. Es ist nicht erforderlich, eine Methode zu abonnieren; dies geschieht automatisch, wenn Sie einen gültigen ApiKey setzen.

 

Method Beschreibung
SubscribeTradeOrders Dieses Topic pusht alle Änderungsereignisse Ihrer Orders.
SubscribeAccountBalance

Sie empfangen diese Nachricht, wenn sich ein Kontostand ändert. Die Nachricht enthält die Details der Änderung.

SubscribePositionStatus Das System pusht das Change-Ereignis, wenn sich der Positionsstatus ändert.
SubscribeMarginTradeOrders Das System pusht diese Nachricht an die Verleiher, wenn die Order in das Orderbuch aufgenommen wird.
SubscribeStopOrder Wenn eine Stop-Order vom System empfangen wird, erhalten Sie eine Nachricht vom Typ "open". Das bedeutet, dass diese Order das System erreicht hat und darauf wartet, ausgelöst zu werden.
SubscribeTradeOrdersV2 Abonniert den Trade-Orders-V2-Kanal für erweiterte Order-Update-Benachrichtigungen.
SubscribeCrossMarginPosition Abonniert Aktualisierungen von Cross-Margin-Positionen. Das System pusht das Änderungsereignis, wenn sich die Cross-Margin-Position ändert.
SubscribeIsolatedMarginPosition Abonnieren Sie Aktualisierungen von Isolated-Margin-Positionen. Das System pusht das Änderungsereignis, wenn sich die Isolated-Margin-Position ändert.

 

 

REST API

Alle Endpunkte geben entweder ein JSON-Objekt oder ein Array zurück.

 

Öffentliche API-EndPoints

 

Auf diese Endpunkte kann ohne jegliche Autorisierung zugegriffen werden.

 

Allgemeine Endpunkte

 

Method Parameter Beschreibung
GetServiceStatus   Testet die Konnektivität zur Rest-API und ruft den Service-Status ab
GetServerTime   Testet die Konnektivität zur REST-API und ruft die aktuelle Serverzeit ab.

 

 

Market-Data-Endpunkte

 

Method Parameter Beschreibung
GetSymbolList Market Fordern Sie über diesen Endpunkt eine Liste der verfügbaren Währungspaare für den Handel an. Wenn Sie die Marktinformationen des Handelssymbols erhalten möchten
GetTicker Symbol Fordern Sie über diesen Endpunkt Level-1-Marktdaten an. Der zurückgegebene Wert enthält den besten Geldkurs und die Menge, den besten Briefkurs und die Menge sowie den zuletzt gehandelten Preis und die zuletzt gehandelte Menge.
GetAllTickers   Fordert Markt-Ticker für alle Handelspaare am Markt an (einschließlich 24h-Volumen).
Get24hrStats Symbol Fordert über diesen Endpunkt an, um die Statistiken des angegebenen Tickers der letzten 24 Stunden zu erhalten.
GetMarketList   Fordern Sie über diesen Endpunkt die Transaktionswährung für den gesamten Handelsmarkt an.
GetPartOrderBook20 Symbol Anfrage über diesen Endpunkt, um eine Liste offener Orders für ein Symbol zu erhalten. Das Level-2-Orderbuch enthält alle Bids und Asks (aggregiert nach Preis), diese Ebene gibt nur eine Größe für jeden aktiven Preis zurück (als ob es nur eine einzelne Order für diesen Preis gäbe). Das System gibt Ihnen 20 Datensätze (Ask- und Bid-Daten) im Orderbuch zurück.
GetPartOrderBook100 Symbol Fordern Sie über diesen Endpunkt eine Liste der offenen Orders für ein Symbol an. Das Level-2-Orderbuch enthält alle Gebote und Briefkurse (aggregiert nach Preis), diese Ebene gibt nur eine Größe für jeden aktiven Preis zurück (als gäbe es nur eine einzige Order für diesen Preis). Das System gibt Ihnen 100 Datensätze (Ask- und Bid-Daten) im Orderbuch zurück.
GetFullOrderBook Symbol Anfrage über diesen Endpunkt, um das Orderbuch des angegebenen Symbols abzurufen. Das Level-2-Orderbuch enthält alle Bids und Asks (nach Preis aggregiert). Diese Ebene gibt nur eine aggregierte Größe für jeden Preis zurück (so als ob es nur eine einzige Order für diesen Preis gäbe). Diese API gibt Daten mit voller Tiefe zurück.
GetKLines Symbol Fordern Sie über diesen Endpunkt die Kline des angegebenen Symbols an. Daten werden in gruppierten Buckets basierend auf dem angeforderten Typ zurückgegeben.
GetCurrencies   Anfrage über diesen Endpunkt, um die Währungsliste abzurufen.
GetCurrencyDetail Currency Anfrage über diesen Endpunkt, um die Währungsdetails einer angegebenen Währung abzurufen
GetFiatPrice   Anfrage über diesen Endpunkt, um die Währungsdetails einer angegebenen Währung abzurufen
GetPartOrderBook1 Symbol Fordern Sie über diesen Endpunkt das Level-1-Bestgebot/-Briefkurs für ein Symbol an.

 

 

 

Private API-Endpunkte

 

Erfordert einen APIKey und APISecret, um vom Server autorisiert zu werden.

 

User EndPoints

 

Method Parameter Beschreibung
GetAllSubAccounts   Über diese Schnittstelle können Sie die Benutzerinformationen aller Sub-Benutzer abrufen.
GetListAccounts   Ruft eine Liste von Konten ab.
GetAccount AccountId Informationen für ein einzelnes Konto. Verwenden Sie diesen Endpunkt, wenn Sie die accountId kennen.
GetAccountBalanceSubAccount SubUserId Dieser Endpunkt gibt die Kontoinformationen eines durch die subUserId angegebenen Sub-Benutzers zurück.
InnerTransfer   Dieser API-Endpunkt kann verwendet werden, um Gelder intern zwischen Konten zu übertragen. Benutzer können Gelder gebührenfrei zwischen ihrem Hauptkonto, Handelskonto, Cross-Margin-Konto und Isolated-Margin-Konto übertragen. Die Übertragung von Geldern vom Hauptkonto, Cross-Margin-Konto und Handelskonto auf das Futures-Konto wird unterstützt, aber die Übertragung von Geldern von Futures-Konten auf andere Konten wird nicht unterstützt.
GetDepositAddresses Currency Ruft Einzahlungsadressen für eine Währung ab.
CreateDepositAddress Currency Eine neue Einzahlungsadresse für eine Währung erstellen.
GetDepositList   Einzahlungsverlauf abrufen.
GetAccountLedgers   Ruft Konto-Ledger-Einträge ab.
GetTradeFees Symbols Ruft die Handelsgebühren für die angegebenen Symbole ab.

 

 

Withdraw-Endpunkte

 

Method Parameter Beschreibung
GetWithdrawalsList   Ruft eine Liste der Abhebungen ab.
GetHistoricalWithdrawalsList   Liste der historischen KuCoin-V1-Abhebungen.
GetWithdrawalsQuotas Currency Get Withdrawals Quotas
ApplyWithdraw Currency, Address, Amount Eine Auszahlung erstellen
CancelWithdraw WithdrawalId Nur Auszahlungsanfragen mit dem Status PROCESSING können storniert werden.

 

 

Trade Endpoints

 

Method Parameter Beschreibung
PlaceOrder   Sie können zwei Arten von Orders platzieren: Limit und Market. Orders können nur platziert werden, wenn Ihr Konto über ausreichende Mittel verfügt. Sobald eine Order platziert wurde, werden Ihre Kontomittel für die Dauer der Order gesperrt. Wie viel und welche Mittel gesperrt werden, hängt vom Order-Typ und den angegebenen Parametern ab
PlaceMarketOrder   Platziert eine Market-Order.
PlaceLimitOrder   Platziert eine Limit-Order.
PlaceMarginOrder   Platziert eine Margin-Order.
CancelOrder   Storniert eine Order anhand der Order-ID.
CancelOrderByClientOid   Storniert einen Auftrag anhand der Client-Auftrags-ID.
CancelAllOrders   Storniert alle offenen Orders.
ListOrders   Stellen Sie über diesen Endpunkt eine Anfrage, um Ihre aktuelle Orderliste abzurufen. Die Elemente sind paginiert und sortiert, sodass die neuesten zuerst angezeigt werden
GetRecentOrders   Anfrage über diesen Endpunkt, um 1000 Orders der letzten 24 Stunden zu erhalten.
GetOrder   Anfrage über diesen Endpunkt, um Informationen zu einer einzelnen Order über die Order-ID zu erhalten.
GetOrderByClientOid   Fordert über diesen Endpunkt an, um Informationen zu einer einzelnen Order anhand der Client-Order-ID zu erhalten.
ListFills   Fordern Sie über diesen Endpunkt die kürzlichen Fills an.
GetRecentFills   Anfrage über diesen Endpunkt, um eine Liste von 1000 Fills der letzten 24 Stunden zu erhalten.
PlaceStopOrder   Platziert eine Stop-Order.
PlaceStopMarketOrder   Platziert eine Stop-Market-Order.
PlaceStopLimitOrder   Platziert eine Stop-Limit-Order.
CancelStopOrder   Storniert eine offene Stop-Order anhand der Order-ID
CancelStopOrderByClientOid   Storniert eine offene Stop-Order anhand der Client-Order-ID
CancelAllStopOrders   Alle Stop-Orders stornieren
GetStopOrder   Fordern Sie über diese Schnittstelle Informationen zu einer Stop-Order über die Order-ID an.
GetStopOrderByClientOid   Anfrage über diese Schnittstelle, um Informationen zu einer Stop-Order über die Client-Order-ID zu erhalten.
ListStopOrders   Fordern Sie über diesen Endpunkt Ihre aktuelle Liste der nicht ausgelösten Stop-Orders an. Die Elemente sind paginiert und sortiert, um die neuesten zuerst anzuzeigen.
PlaceHFOrder   Eine Hochfrequenz-Order platzieren.
CancelHFOrder   Storniert eine Hochfrequenz-Order anhand der Order-ID.
CancelHFOrderByClientOid   Storniert eine Hochfrequenz-Order anhand der Client-Order-ID.
CancelAllHFOrders   Storniert alle Hochfrequenzaufträge.
GetHFActiveOrders   Ruft aktive Hochfrequenz-Orders ab.
GetHFDoneOrders   Abgeschlossene Hochfrequenz-Orders abrufen.
GetHFOrder   Ruft eine bestimmte Hochfrequenz-Order anhand der Order-ID ab.

 

 

Ereignisse

Kucoin-Nachrichten werden in der TsgcWebSocketClient-Komponente empfangen; Sie können die folgenden Ereignisse verwenden:

 

OnConnect

Nach einer erfolgreichen Verbindung mit dem Kucoin-Server.

OnDisconnect

Nach einer Trennung vom Kucoin-Server

OnMessage

Nachrichten, die vom Server an den Client gesendet werden, werden in diesem Ereignis behandelt.

OnError

Wenn im Protokoll ein Fehler auftritt, wird dieses Ereignis aufgerufen.

OnException

Wenn eine nicht behandelte Ausnahme auftritt, wird dieses Ereignis aufgerufen.

 

Zusätzlich gibt es ein spezifisches Ereignis in der Kucoin-API-Komponente, genannt OnKucoinHTTPException, das jedes Mal ausgelöst wird, wenn beim Aufruf einer HTTP-Anfrage (REST API oder WebSocket Feeds) ein Fehler auftritt.