API Kucoin Futures

Kucoin Futures

 

Kucoin is een internationale meertalige cryptocurrency-exchange. Het biedt enkele API's om toegang te krijgen tot Kucoin-gegevens. De volgende API's worden ondersteund:

 

  1. WebSocket-streams: hiermee kunt u zich abonneren op bepaalde methoden en gegevens in realtime ontvangen. Gebeurtenissen worden door de server naar abonnees gepusht. Gebruikt WebSocket als protocol.
  2. REST API: clients kunnen markt- en accountgegevens opvragen bij de server. Vereist een API-sleutel, geheim en wachtwoordzin voor authenticatie en gebruikt HTTPS als protocol.

 

 

Eigenschappen

De Kucoin API heeft 2 typen methoden: openbaar en privé. Openbare methoden zijn toegankelijk zonder verificatie, bijvoorbeeld: tickerprijzen ophalen. Privé- en gebruikersgegevensgerelateerde methoden vereisen het gebruik van Kucoin API-sleutels.

 

 

Meest voorkomende gebruiksgevallen

 

WebSocket Feed

Om kanaalnachrichten van een bepaalde server te ontvangen, moet de clientzijde een abonnementsbericht naar de server sturen.

Als het abonnement succesvol is, stuurt het systeem bevestigingsberichten naar u wanneer het antwoord is ingesteld op true.

{
"id":"1545910660739",
"type":"ack"
}
Zolang er onderwerpberichten worden gegenereerd, stuurt het systeem de bijbehorende berichten naar de clientzijde.

 

De volgende abonnements-/afmeldmethoden worden ondersteund.

 

Openbare kanalen

 

Methode Parameters Beschrijving
SubscribeSymbolTickerV2 Symbol Abonneer u op dit onderwerp om real-time push-meldingen van BBO-wijzigingen te ontvangen. Na het abonnement, wanneer er wijzigingen zijn in het orderboek, stuurt het systeem de real-time tickerinformatie naar u. Het wordt aanbevolen om het nieuwe onderwerp te gebruiken voor tijdige informatie.
SubscribeSymbolTicker Symbol Abonneer u op dit onderwerp om realtime pushberichten van BBO-wijzigingen te ontvangen. Het ticker-kanaal biedt realtime prijsupdates telkens wanneer een overeenkomst plaatsvindt. Als meerdere orders tegelijk worden gematcht, wordt alleen de laatste overeenkomst gepusht.
SubscribeLevel2MarketData Symbol Abonneer op dit onderwerp om Level 2-orderboekgegevens te krijgen.
SubscribeExecutionData Symbol Voor elke uitgevoerde order verzendt het systeem u de matchberichten in het volgende formaat.
SubscribeLevel2_5BestAskBid Symbol Maximaal elke 100 milliseconden geretourneerd.
SubscribeLevel2_50BestAskBid Symbol Maximaal elke 100 milliseconden geretourneerd.
SubscribeContractMarketData Symbol Abonneer op dit onderwerp om de marktgegevens van het contract te ontvangen.
SubscribeSystemAnnouncements Symbol Abonneer u op dit onderwerp om systeemmededelingen te ontvangen.
SubscribeTransactionStatistics Symbol De transactiestatistieken worden elke 5 seconden naar gebruikers gepusht.
SubscribeKlines Symbol Abonneer op contractkline-gegevens (kandelaars).
SubscribeFundingFeeSettlement Symbol Abonneer u op meldingen over de verrekening van financieringskosten.

 

Als de ACK-parameter op true is ingesteld, ontvangt de client na een geslaagd abonnement / afmelding een bericht hierover.

 

Privékanalen

Vereist een geldige ApiKey verkregen van uw Kucoin-account. De ApiKey, ApiSecret en Passphrase moeten worden ingesteld in de Kucoin-eigenschap van het client-API-component.

 

De volgende gegevens worden naar de client gepusht telkens wanneer er een wijziging is. U hoeft zich niet op een methode te abonneren, dit wordt automatisch gedaan als u een geldige ApiKey instelt.

 

Methode Beschrijving
SubscribeTradeOrders Dit onderwerp pusht alle wijzigingsgebeurtenissen van uw orders.
SubscribeAccountBalance

U ontvangt dit bericht wanneer een accountsaldo verandert. Het bericht bevat de details van de wijziging.

SubscribePositionChange Het systeem pusht de wijzigingsgebeurtenis wanneer de positiestatus verandert.
SubscribeStopOrder Wanneer een stoporder door het systeem wordt ontvangen, ontvangt u een bericht met het type "open". Dit betekent dat de order het systeem is ingegaan en wacht om te worden geactiveerd.
SubscribeMarginMode Abonneer u op wijzigingen in de margemodus. Het systeem pusht de wijzigingsgebeurtenis wanneer de margemodus wordt bijgewerkt.
SubscribeCrossMarginLeverage Abonneer op wijzigingen in de cross-margehefboomwerking. Het systeem pusht de wijzigingsgebeurtenis wanneer de cross-margehefboomwerking wordt bijgewerkt.

 

 

REST API

Alle endpoints retourneren een JSON-object of -array.

 

Openbare API-eindpunten

 

Deze eindpunten zijn toegankelijk zonder autorisatie.

 

Algemene eindpunten

 

Methode Parameters Beschrijving
GetServiceStatus   Test de connectiviteit met de Rest API en haal de servicestatus op
GetServerTime   Test de connectiviteit met de REST API en haal de huidige servertijd op.

 

 

Marktgegevens-eindpunten

 

Methode Parameters Beschrijving
GetOpenContractList   Stuur verzoek om informatie op te halen over alle open contracten.
GetOrderInfoContract   Stuur een verzoek in om informatie over het opgegeven contract te verkrijgen.
GetTicker Symbol De realtime ticker bevat de laatste verhandelprijs, de laatste verhandelde hoeveelheid, transactie-ID, de kant van de liquiditeitsnemer, de beste biedprijs en -hoeveelheid, de beste vraagprijs en -hoeveelheid evenals de transactietijd van de orders. Deze berichten kunnen ook worden verkregen via Websocket. Het volgnummer wordt gebruikt om te beoordelen of de berichten die door Websocket worden gepusht continu zijn.
GetPartOrderBook20 Symbol Een momentopname ophalen van geaggregeerde openstaande orders voor een symbool.
GetPartOrderBook100 Symbol Een momentopname ophalen van geaggregeerde openstaande orders voor een symbool.
GetFullOrderBook Symbol Een momentopname ophalen van geaggregeerde openstaande orders voor een symbool.
GetLevel2PullingMessages Symbol Als de berichten die door WebSocket worden gepusht niet continu zijn, kunt u het volgende verzoek indienen en de gegevens opnieuw ophalen om ervoor te zorgen dat de reeks niet ontbreekt. In het verzoek is de startparameter het volgnummer van uw laatste ontvangen bericht plus 1, en de eindparameter is het volgnummer van uw huidige ontvangen bericht minus 1. Nadat u de berichten opnieuw heeft opgehaald en ze heeft toegepast op uw lokale exchange-orderboek, kunt u het orderboek blijven bijwerken via de WebSocket incrementele feed. Als het verschil tussen de eind- en startparameter meer dan 500 is, stop dan met het gebruik van dit verzoek en wij raden u aan het Level 2-orderboek opnieuw op te bouwen.
GetTradeHistory Symbol Geef de laatste 100 trades voor een symbool weer.
GetInterestRateList Symbol Controleer de rentelijst.
GetIndexList Symbol Indexlijst controleren
GetCurrentMarkPrice Symbol Controleer de huidige markprijs.
GetPremiumIndex Symbol Verzoek indienen om premium index op te halen.
GetCurrentFundingRate Symbol Verzoek indienen om de huidige marktprijs te controleren.
GetKLine Symbol Haal K Line-gegevens op van Contract

 

 

 

Privé API-eindpunten

 

Vereist een APIKey en APISecret om door de server te worden geautoriseerd.

 

Gebruikerseindpunten

 

Methode Parameters Beschrijving
GetAccountOverview   Accountoverzicht ophalen
GetTransactionHistory   Als er open posities zijn, is de status van de eerste teruggegeven pagina Pending, wat het gerealiseerde winst- en verliesresultaat in de huidige 8-uurs afwikkelperiode aangeeft. Geef het minimale offsetnummer van de huidige pagina op in het offsetveld om de pagina om te slaan.

 

 

Handelseindpunten

 

Methode Parameters Beschrijving
PlaceOrder   U kunt twee soorten orders plaatsen: limiet en markt. Orders kunnen alleen worden geplaatst als uw account voldoende saldo heeft. Zodra een order is geplaatst, worden uw fondsen geblokkeerd voor de duur van de order. De hoeveelheid geblokkeerde fondsen is afhankelijk van het ordertype en de opgegeven parameters.
PlaceMarketOrder   Places a Market Order.
PlaceLimitOrder   Plaatst een limietorder.
CancelOrder   Annuleert een order via order-id.
LimitOrderMassCancellation   Annuleer alle open orders (met uitzondering van stop orders). De response is een lijst van orderIDs van de geannuleerde orders.
StopOrderMassCancellation   Annuleer alle niet-getriggerde stoporders. De respons is een lijst met order-ID's van de geannuleerde stoporders. Om getriggerde stoporders te annuleren, gebruik 'Limit Order Mass Cancellation'.
GetOrderList   Geef uw huidige orders weer.
GetUntriggeredStopOrderList   Haal de lijst met niet-geactiveerde stop-orders op.
GetListOrdersCompleted24hr   Haal een lijst op van de meest recente 1000 orders in de laatste 24 uur. Als u uw recent uitgevoerde ordergeschiedenis met lage latentie nodig heeft, kunt u dit eindpunt opvragen.
GetOrder   Haal een enkel order op op basis van order-id (inclusief een stop-order).
GetOrderByClientOid   Haal een enkele order op via client order-id (inclusief een stoporder).
GetFills   Een lijst met recente transacties ophalen.
GetRecentFills   Haal een lijst op van de laatste 1000 uitvoeringen in de afgelopen 24 uur. Als u uw recente handelsordergeschiedenis met lage latentie wilt ophalen, kunt u dit eindpunt raadplegen.
ActiveOrderValueCalculation   U kunt dit endpoint opvragen om het totale aantal en de waarde van al uw actieve orders te krijgen.
GetPositionDetails   Haal de positiedetails op van een opgegeven positie.
GetPositionList   Haal de positiedetails op van een opgegeven positie.
AutoDepositMargin   In-/uitschakelen van automatische depositmarge
AddMarginManually   Marge handmatig toevoegen
ObtainFuturesRiskLimitLevel   Deze interface kan worden gebruikt om informatie te verkrijgen over het risicobegrenzingsniveau van een specifiek contract
AdjustRiskLimitLevel   Deze interface is bedoeld voor het aanpassen van het risicolimitniveau. Bij het aanpassen van het niveau worden openstaande orders geannuleerd; het antwoord kan alleen aangeven of het indienen van het aanpassingsverzoek al dan niet is geslaagd.
GetFundingHistory   Dien een aanvraag in om de financieringsgeschiedenis op te halen.
GetMaxOpenSize Haal de maximale open positiegrootte op voor een contract.
SwitchMarginMode Schakel tussen cross-margin- en geïsoleerde-marginmodi.
GetMarginMode Haal de huidige marginmodus op voor een contract.

 

 

Gebeurtenissen

Kucoin-berichten worden ontvangen in de TsgcWebSocketClient-component. U kunt de volgende gebeurtenissen gebruiken:

 

OnConnect

Na een succesvolle verbinding met de Kucoin-server.

OnDisconnect

Na een verbreking van de Kucoin-server

OnMessage

Berichten die door de server naar de client worden verzonden, worden in dit event afgehandeld.

OnError

Als er een fout is in het protocol, wordt deze gebeurtenis aangeroepen.

OnException

Als er een onverwerkte uitzondering is, wordt deze gebeurtenis aangeroepen.

 

Daarnaast is er een specifieke gebeurtenis in de Kucoin API-component, genaamd OnKucoinHTTPException, die wordt geactiveerd elke keer dat er een fout optreedt bij het aanroepen van een HTTP-verzoek (REST API of WebSocket-feeds).