BYBIT

[BYBIT API 사용하기 C# winform ] 2. API

코코코인 2021. 11. 8. 05:13
728x90

1. bybit에서 API key와 Secret Key를 를 받아오는 법은 구글에 검색하면 많이 나온다. 

구글에서 잘 검색해서 따라 하면 된다. (키워드: bybit api 키 )

참고로 Secret Key는 한 번만 보여주고 다음부턴 볼 수 없으므로 조심히 메모장에 복붙 해놓아야 한다.

(API Key는 아이디 , Secret Key는 비밀번호로 생각하는 게 이해하기 쉬움)

 

2. public / private

https://bybit-exchange.github.io/docs/linear/#t-authentication

 

Bybit API Docs

 

bybit-exchange.github.io

 

위 링크를 타고 가면, 

public에 대한 요청은 api key, secret key 인증이 필요 없고

private에 대한 요청은 api key, secret key 인증이 필요하다고 한다.

예를 들어 private는  주문 요청, 지갑 정보 등 bybit홈페이지에서 로그인을 해야만 가능한 것들이 있으며

public은 가격정보, 캔들 데이터 정보 등 bybit 홈페이지에서 로그인하지 않아도 볼 수 있는 것들을 의미한다.

 

3. API 요청하기 

1) public 

https://api.bybit.com/public/linear/kline?symbol=BTCUSDT&interval=1&limit=2&from=1581231260

API요청은 기본적으로 위와 같이 '이러이러한 정보를 원해요'라는 주소를 만들고 bybit에 요청하는 것이다.

예를 들어 위 링크를 해석하면

https://api.bybit.com  =>  bybit 메인넷(=우리가 알고있는 바이비트 서버)에 있는 

/public/linear/kline    =>  public인 Kline(=캔들차트정보)를 

symbol=BTCUSDT&interval=1&limit=2&from=1581231260 =>

BTCUSDT 1분봉 2020년 2월 9일 06:54:20로 부터 캔들정보 2개를 주라는 의미이다.

(from=1581231260에서 숫자는 timestamp를 의미하며 계산해보면

GMT 20년 2월 9일 06:54:20 이다, KST는 GMT에서 9시간을 더하면 된다.)

 

2) private

public과 private의 차이는 api_key정보와 sign정보 유무이다.

주소에서 정보를 적을때 api_key, 요청에 필요한 정보, timestamp, sign 순서로 써주어야 한다.

 

https://api.bybit.com/v2/private/wallet/balance?api_key=API키&coin=ETH&timestamp=1636308918681&sign=시크릿키로암호화한값 <-이런식으로 주소를 만들어서 bybit에 요청한다.

 

sign를 만들기위한 알고리즘은 bybit에서 친절하게 올려주었다.

https://github.com/bybit-exchange/api-connectors/blob/master/encryption_example/Encryption.cs

 

GitHub - bybit-exchange/api-connectors: Libraries for connecting to the Bybit API.

Libraries for connecting to the Bybit API. Contribute to bybit-exchange/api-connectors development by creating an account on GitHub.

github.com

 

 

 

로그인 화면 만들기
API 받아오기 #1
API 받아오기 #2

 

 

 

요청한 값이 잘 받아지면 ret_msg:"OK" 라고 나옵니다.

 

다음 영상엔

"/v2/private/account/api-key"요청으로 로그인 가능여부 확인과

Json 파싱하는 영상을 올릴 예정입니다.

 

이상입니다.