API Kucoin

Kucoin

 

Kucoin은 국제적인 다국어 암호화폐 거래소입니다. Kucoin 데이터에 접근하기 위한 일부 API를 제공합니다. 다음 API가 지원됩니다.

 

  1. WebSocket streams: 일부 메서드를 구독하여 데이터를 실시간으로 받을 수 있게 합니다. 이벤트는 서버에 의해 구독자에게 푸시됩니다. 프로토콜로 WebSocket을 사용합니다.
  2. REST API: 클라이언트는 서버에 시장 및 계정 데이터를 요청할 수 있습니다. 인증을 위해 API Key, Secret 및 Passphrase가 필요하며 프로토콜로 HTTPs를 사용합니다.

 

 

Properties

Kucoin API에는 공개와 비공개의 2가지 유형의 메서드가 있습니다. 공개 메서드는 인증 없이 액세스할 수 있습니다(예: 티커 가격 가져오기). 사용자 데이터와 관련된 비공개 메서드는 Kucoin API 키 사용이 필요합니다.

 

 

Most common uses

 

WebSocket 피드

특정 서버에서 채널 메시지를 구독하려면 클라이언트 측이 서버에 구독 메시지를 보내야 합니다.

구독이 성공하면, 응답이 true로 설정될 때 시스템이 ack 메시지를 보냅니다.

{
"id":"1545910660739",
"type":"ack"
}
토픽 메시지가 생성되는 동안 시스템은 해당 메시지를 클라이언트 측으로 보냅니다.

 

다음 Subscription / Unsubscription 메서드가 지원됩니다.

 

Public Channels

 

Method 매개변수 설명
SubscribeSymbolTicker Symbol 이 topic을 구독하여 BBO 변경 사항의 푸시를 받으십시오. 1초 내에 변경 사항이 없으면 푸시되지 않습니다. 가장 최신 BBO와 함께 100ms마다 푸시됩니다. 마지막 데이터와 비교하여 변경 사항이 없으면 푸시되지 않습니다.
SubscribeAllSymbolsTicker   모든 시장 심볼 BBO 변경의 푸시를 받으려면 이 토픽을 구독하십시오.
SubscribeSymbolSnapshot Symbol 단일 symbol에 대한 snapshot 데이터를 가져오려면 구독하십시오. snapshot 데이터는 2초 간격으로 푸시됩니다.
SubscribeMarketSnapshot Market 전체 시장의 snapshot 데이터를 가져오려면 이 topic을 구독하십시오. snapshot 데이터는 2초 간격으로 푸시됩니다.
SubscribeLevel2MarketData Symbol Level2 주문서 데이터를 가져오려면 이 토픽을 구독하십시오. websocket 구독이 성공하면 시스템이 websocket으로 푸시한 증분 변경 데이터를 보냅니다.
SubscribeLevel2_5BestAskBid Symbol 시스템은 100밀리초마다의 스냅샷 데이터인 최고 5개의 매도/매수 주문 데이터를 반환합니다(즉, 최고 5개의 매도/매수 주문 데이터가 100밀리초마다 실시간으로 반환됨).
SubscribeLevel2_50BestAskBid Symbol 시스템은 100밀리초마다의 스냅샷 데이터인 최고 50개의 매도/매수 주문 데이터를 반환합니다(즉, 최고 50개의 매도/매수 주문 데이터가 100밀리초마다 실시간으로 반환됨).
SubscribeKlines Symbol K-Line 데이터를 얻으려면 이 토픽을 구독하십시오.
SubscribeMatchExecutionData Symbol 이 토픽을 구독하여 Level 3의 일치 이벤트 데이터 흐름을 가져옵니다. 거래된 각 주문에 대해 시스템은 다음 형식으로 일치 메시지를 보냅니다.
SubscribeIndexPrice Symbol 마진 거래에 대한 index price를 가져오려면 이 topic을 구독하십시오.
SubscribeMarkPrice Symbol margin 거래의 mark price를 얻으려면 이 토픽을 구독하십시오.
SubscribeOrderBookChanged Symbol margin 거래의 주문 장부 변경을 얻으려면 이 토픽을 구독하십시오.
SubscribeLevel1 Symbol 심볼에 대한 Level 1 최우선 매수/매도 데이터를 구독합니다.

 

ACK 매개변수가 true로 전송되면 성공적인 구독 / 구독 취소 후 클라이언트는 이에 대한 메시지를 수신합니다.

 

Private 채널

Kucoin 계정에서 얻은 유효한 ApiKey가 필요합니다. ApiKey, ApiSecret 및 Passphrase는 클라이언트 API 구성 요소의 Kucoin 속성에 설정해야 합니다.

 

다음 데이터는 변경이 있을 때마다 클라이언트에 푸시됩니다. 어떤 메서드도 구독할 필요가 없으며, 유효한 ApiKey를 설정하면 자동으로 수행됩니다.

 

Method 설명
SubscribeTradeOrders 이 토픽은 주문의 모든 변경 이벤트를 푸시합니다.
SubscribeAccountBalance

계정 잔액이 변경되면 이 메시지를 받게 됩니다. 메시지에는 변경 세부 정보가 포함됩니다.

SubscribePositionStatus 포지션 상태가 변경되면 시스템이 변경 이벤트를 푸시합니다.
SubscribeMarginTradeOrders 주문이 호가창에 들어가면 시스템이 이 메시지를 대출자에게 푸시합니다.
SubscribeStopOrder stop order가 시스템에 수신되면 "open" 유형의 메시지를 받게 됩니다. 이는 이 주문이 시스템에 진입하여 트리거되기를 기다리고 있음을 의미합니다.
SubscribeTradeOrdersV2 향상된 주문 업데이트 알림을 위해 trade orders V2 채널을 구독합니다.
SubscribeCrossMarginPosition 교차 마진 포지션 업데이트를 구독합니다. 교차 마진 포지션이 변경되면 시스템이 변경 이벤트를 푸시합니다.
SubscribeIsolatedMarginPosition isolated margin 포지션 업데이트를 구독합니다. isolated margin 포지션이 변경되면 시스템이 변경 이벤트를 푸시합니다.

 

 

REST API

모든 엔드포인트는 JSON 객체 또는 배열을 반환합니다.

 

Public API EndPoints

 

이러한 엔드포인트는 권한 부여 없이 접근할 수 있습니다.

 

General EndPoints

 

Method 매개변수 설명
GetServiceStatus   Rest API에 대한 연결성을 테스트하고 Service Status를 가져옵니다
GetServerTime   Rest API에 대한 연결성을 테스트하고 현재 서버 시간을 가져옵니다.

 

 

Market Data EndPoints

 

Method 매개변수 설명
GetSymbolList Market 이 엔드포인트를 통해 요청하여 거래 가능한 통화 쌍 목록을 가져옵니다. 거래 심볼의 마켓 정보를 가져오려는 경우
GetTicker Symbol 이 엔드포인트를 통해 요청하여 Level 1 Market Data를 가져옵니다. 반환된 값에는 최적 매수 호가와 크기, 최적 매도 호가와 크기, 그리고 마지막 체결 가격과 마지막 체결 크기가 포함됩니다.
GetAllTickers   시장의 모든 거래 쌍에 대한 시장 티커를 요청합니다(24시간 거래량 포함).
Get24hrStats Symbol 지난 24시간 동안 지정된 티커의 통계를 가져오려면 이 엔드포인트를 통해 요청하십시오.
GetMarketList   전체 거래 시장의 거래 통화를 가져오려면 이 엔드포인트를 통해 요청하십시오.
GetPartOrderBook20 Symbol symbol에 대한 미체결 주문 목록을 가져오려면 이 엔드포인트를 통해 요청하십시오. Level-2 order book에는 모든 bid와 ask(가격별 집계)가 포함되며, 이 level은 각 활성 가격에 대해 하나의 크기만 반환합니다(해당 가격에 단일 주문만 있는 것처럼). 시스템은 order book에서 20개의 데이터(ask 및 bid 데이터)를 반환합니다.
GetPartOrderBook100 Symbol 이 엔드포인트를 통해 요청하여 심볼에 대한 미체결 주문 목록을 가져옵니다. Level-2 호가창에는 모든 매수 및 매도 호가(가격별로 집계됨)가 포함되며, 이 레벨은 각 활성 가격에 대해 하나의 크기만 반환합니다(해당 가격에 단일 주문만 있는 것처럼). 시스템은 호가창에서 100개의 데이터(매도 및 매수 데이터)를 반환합니다.
GetFullOrderBook Symbol 지정된 심볼의 order book을 얻으려면 이 엔드포인트를 통해 요청하십시오. Level 2 order book은 모든 bids와 asks를 포함합니다(가격별로 집계됨). 이 level은 각 가격에 대해 하나의 집계 크기만 반환합니다(마치 그 가격에 단일 주문 하나만 있는 것처럼). 이 API는 전체 depth의 데이터를 반환합니다.
GetKLines Symbol 이 엔드포인트를 통해 요청하여 지정된 symbol의 kline을 가져옵니다. 데이터는 요청된 유형에 따라 그룹화된 버킷으로 반환됩니다.
GetCurrencies   통화 목록을 가져오려면 이 엔드포인트를 통해 요청하십시오.
GetCurrencyDetail Currency 지정된 통화의 통화 세부 정보를 얻으려면 이 엔드포인트를 통해 요청하십시오.
GetFiatPrice   지정된 통화의 통화 세부 정보를 얻으려면 이 엔드포인트를 통해 요청하십시오.
GetPartOrderBook1 Symbol 이 엔드포인트를 통해 요청하여 심볼에 대한 Level 1 최적 매수/매도 호가를 가져옵니다.

 

 

 

Private API EndPoints

 

서버의 권한을 받으려면 APIKey와 APISecret이 필요합니다.

 

User EndPoints

 

Method 매개변수 설명
GetAllSubAccounts   이 인터페이스를 통해 모든 서브 사용자의 사용자 정보를 가져올 수 있습니다.
GetListAccounts   계정 목록을 가져옵니다.
GetAccount AccountId 단일 계정에 대한 정보입니다. accountId를 알고 있을 때 이 엔드포인트를 사용하십시오.
GetAccountBalanceSubAccount SubUserId 이 엔드포인트는 subUserId로 지정된 하위 사용자의 계정 정보를 반환합니다.
InnerTransfer   이 API 엔드포인트는 계정 간 자금을 내부적으로 이체하는 데 사용할 수 있습니다. 사용자는 메인 계정, 트레이딩 계정, 교차 마진 계정, 격리 마진 계정 간에 무료로 자금을 이체할 수 있습니다. 메인 계정, 교차 마진 계정, 트레이딩 계정에서 선물 계정으로의 자금 이체는 지원되지만, 선물 계정에서 다른 계정으로의 자금 이체는 지원되지 않습니다.
GetDepositAddresses Currency 통화의 입금 주소를 가져옵니다.
CreateDepositAddress Currency 통화에 대한 새 입금 주소를 생성합니다.
GetDepositList   입금 내역을 가져옵니다.
GetAccountLedgers   계정 원장 항목을 가져옵니다.
GetTradeFees Symbols 지정된 심볼의 거래 수수료를 가져옵니다.

 

 

Withdraw EndPoints

 

Method 매개변수 설명
GetWithdrawalsList   Withdrawal 목록을 가져옵니다.
GetHistoricalWithdrawalsList   KuCoin V1 과거 출금 목록입니다.
GetWithdrawalsQuotas Currency Get Withdrawals Quotas
ApplyWithdraw Currency, Address, Amount Create a Withdraw
CancelWithdraw WithdrawalId PROCESSING 상태의 출금 요청만 취소할 수 있습니다.

 

 

Trade Endpoints

 

Method 매개변수 설명
PlaceOrder   두 가지 유형의 주문을 실행할 수 있습니다: limit 및 market. 주문은 계정에 충분한 자금이 있는 경우에만 실행할 수 있습니다. 주문이 실행되면 주문 기간 동안 계정 자금이 보류됩니다. 보류되는 자금의 양과 종류는 주문 유형 및 지정된 매개변수에 따라 다릅니다.
PlaceMarketOrder   시장가 주문을 넣습니다.
PlaceLimitOrder   Limit Order를 합니다.
PlaceMarginOrder   Margin Order를 발주합니다.
CancelOrder   주문 Id로 주문을 취소합니다.
CancelOrderByClientOid   Client Order Id로 주문을 취소합니다.
CancelAllOrders   모든 미체결 주문을 취소합니다.
ListOrders   이 엔드포인트를 통해 요청하여 현재 주문 목록을 가져옵니다. 항목은 페이지로 나뉘고 최신순으로 정렬되어 표시됩니다
GetRecentOrders   이 엔드포인트를 통해 요청하여 지난 24시간 동안의 1000개 주문을 가져옵니다.
GetOrder   order ID로 단일 주문 정보를 가져오려면 이 엔드포인트를 통해 요청하십시오.
GetOrderByClientOid   Client order ID로 단일 주문 정보를 가져오려면 이 엔드포인트를 통해 요청하십시오.
ListFills   최근 체결 내역을 가져오려면 이 엔드포인트를 통해 요청하십시오.
GetRecentFills   최근 24시간 동안의 1000개의 fill 목록을 가져오려면 이 엔드포인트를 통해 요청하십시오.
PlaceStopOrder   Stop Order를 실행합니다.
PlaceStopMarketOrder   Stop Market Order를 합니다.
PlaceStopLimitOrder   Stop Limit Order를 배치합니다.
CancelStopOrder   Order Id로 미결제 Stop Order를 취소합니다
CancelStopOrderByClientOid   Client Order Id로 미결제 Stop Order를 취소합니다
CancelAllStopOrders   Cancel All Stop Orders
GetStopOrder   이 인터페이스를 통해 요청하여 주문 ID로 스탑 주문 정보를 가져옵니다.
GetStopOrderByClientOid   Client order ID를 통해 stop order 정보를 가져오려면 이 인터페이스를 통해 요청하십시오.
ListStopOrders   이 엔드포인트를 통해 요청하여 현재 트리거되지 않은 스톱 주문 목록을 가져옵니다. 항목은 페이지로 나뉘며 최신 항목이 먼저 표시되도록 정렬됩니다.
PlaceHFOrder   고빈도 주문을 실행합니다.
CancelHFOrder   order ID로 고빈도 주문을 취소합니다.
CancelHFOrderByClientOid   클라이언트 주문 ID로 고빈도 주문을 취소합니다.
CancelAllHFOrders   모든 고빈도 주문을 취소합니다.
GetHFActiveOrders   활성 고빈도 주문을 가져옵니다.
GetHFDoneOrders   완료된 고빈도 주문을 가져옵니다.
GetHFOrder   order ID로 특정 고빈도 주문을 가져옵니다.

 

 

Events

Kucoin 메시지는 TsgcWebSocketClient 구성 요소에서 수신되며, 다음 이벤트를 사용할 수 있습니다:

 

OnConnect

Kucoin 서버에 성공적으로 연결된 후입니다.

OnDisconnect

Kucoin 서버에서 연결이 끊긴 후

OnMessage

서버가 클라이언트에 보낸 메시지는 이 이벤트에서 처리됩니다.

OnError

프로토콜에 오류가 있으면 이 이벤트가 호출됩니다.

OnException

처리되지 않은 예외가 있으면 이 이벤트가 호출됩니다.

 

또한 Kucoin API 구성 요소에는 OnKucoinHTTPException이라는 특정 이벤트가 있으며, HTTP 요청(REST API 또는 WebSocket Feeds) 호출 중 오류가 있을 때마다 발생합니다.