bybit . API V5 . rest . Get Kline . 캔들 백데이터
개요
- 바이비트 거래소의 모든 종목의 캔들 데이터 확보가능.
- 기능: 지정된 거래 페어의 과거 Kline(캔들) 데이터를 불러옴
- 용도: 과거 가격 분석, 트레이딩 전략 테스트, 시장 동향 파악
HTTP Request
GET v5/market/kline
요청인자
Parameter | Required | Type | Comments |
category | false | string | Product type. spot,linear,inverse
|
symbol | true | string | Symbol name, like BTCUSDT, uppercase only |
interval | true | string | Kline interval. 1,3,5,15,30,60,120,240,360,720,D,M,W |
start | false | integer | The start timestamp (ms) |
end | false | integer | The end timestamp (ms) |
limit | false | integer | Limit for data size per page. [1, 1000]. Default: 200 |
추가 설명.
start , end : 요청하는 캔들데이터의 시작 시간과 끝시간을 UTC(=GMT) epoch 시간으로 밀리초 단위로 지정.
- epoch 시간 : 1970년 1월 1일이 0밀리초.
- 지정한 end 시점부터 과거순으로 캔들 데이터 반환됨.
limit :캔들 최대수량 지정. limit 값을 지정하지 않은 경우 기본 200 개 까지만 반환된다. limit 지정하는 경우 1회 요청당 최대 1000개 까지만 가능.
시작시간, 끝시간 기록하지 않고 요청한 경우, limit 에서 지정한 수량 만큼 최근 캔들 데이터 반환된다. limit 값을 지정하지 않았다면 200개, limit 를 지정하여 요청하는 경우엔 1회 요청당 1000개 까지만 반환해준다.
시작 시간 끝시간 기록하고 요청한 경우, 시작 시간 이후 limit 에서 지정한 캔들 수량만큼 데이터를 반환해준다. 시간 구간내에 limit 수량의 캔들이 없는 경우엔 해당 시구간내의 캔들 데이터 수량 만큼만 반환된다.
limit 를 지정하지 않았다면 200개, limit 를 지정하여 요청하는 경우엔, 1회 요청당 1000개 까지만 반환해준다.
지정한 시간구간의 캔들이 1000개를 초과하는 경우에는 1회 요청만으로는 모든 캔들 데이터 확보되지 못하므로 시작 시간을 변경하면서 여러번 요청하여 필요한 모든 캔들 데이터 확보해야 한다.
요청코드 예 - 파이썬 pybit 라이브러리 기반
- 아래코드는 바이비트 거래소 인버스 종목인 BTCUSD 의 1시간봉(=60분)을 시작시간 1670601600000 밀리초 부터 끝시간 1670608800000 밀리초까지의 캔들 데이터 요청. 시간기준 : 1970년 1월 1일 0시0분0초 를 0으로 한것. C에서 시간처리 예 , 파이썬에서 시간처리예
from pybit.unified_trading import HTTP
session = HTTP(testnet=True)
print(session.get_kline(
category="inverse",
symbol="BTCUSD",
interval=60,
start=1670601600000,
end=1670608800000,
))
응답 데이터
Parameter | Type | Comments |
category | string | Product type |
symbol | string | Symbol name |
list | array |
|
> list[0]: startTime | string | Start time of the candle (ms) |
> list[1]: openPrice | string | Open price |
> list[2]: highPrice | string | Highest price |
> list[3]: lowPrice | string | Lowest price |
> list[4]: closePrice | string | Close price. Is the last traded price when the candle is not closed |
> list[5]: volume | string | Trade volume. Unit of contract: pieces of contract. Unit of spot: quantity of coins |
> list[6]: turnover | string | Turnover. Unit of figure: quantity of quota coin |
- 캔들의 시작시간, 시가, 고가, 저가, 종가, 거래량 (volume), 거래대금(turnover) 이 리스트 형식으로 제공됨.
- 리스트의 앞부분의 캔들 데이터 시간이 가장 최신 것(즉 , 가장 큰값)이 배치되어있다.
- volume : 계약(contract) 단위의 거래량. 현물에서는 base currency 단위의 거래량
- - 리니어 BTCUSDT 이면 conteact 1BTC 이므로 BTC 단위의 거래량.
- - 인버스 BTCUSD 이면 contract 1USD 이므로 USD 단위의 거래량
- - 현물 BTCUSDT 이면 base currency 가 BTC 이므로 BTC 단위의 거래량.
- turnover : quote currency 단위의 거래량.
- - 리니어 BTCUSDT 이면 turnover 는 USDT 단위의 거래량.
- - 인버스 BTCUSD 이면 turnover 는 BTC 단위의 거래량.
- - 현물 BTCUSDT 이면 turnover 는 USDT 단위의 거래량.
volume 이든 turnover 든 값 자체가 차이가 날뿐 증가 감소 양상은 동일함.
응답데이터 예
{
"retCode": 0,
"retMsg": "OK",
"result": {
"symbol": "BTCUSD",
"category": "inverse",
"list": [
[
"1670608800000",
"17071",
"17073",
"17027",
"17055.5",
"268611",
"15.74462667"
],
[
"1670605200000",
"17071.5",
"17071.5",
"17061",
"17071",
"4177",
"0.24469757"
],
[
"1670601600000",
"17086.5",
"17088",
"16978",
"17071.5",
"6356",
"0.37288112"
]
]
},
"retExtInfo": {},
"time": 1672025956592
}
파이썬에서 캔들 데이터 확보하는 코드 작성 방법 상세
상위 정리
연관
실시간 캔들 데이터 수신
첫 등록 : 2024.08.17
최종 수정 :
단축 주소 : https://igotit.tistory.com/5763
'트레이딩 > 암호화폐' 카테고리의 다른 글
암호화폐 캔들 데이터 확보 코드 . 파이썬 pybit (0) | 2024.08.22 |
---|---|
bybit . API V5 . rest . Get Public Recent Trading History . 틱 데이터 (0) | 2024.08.21 |
암호화폐 . 마스터 직불 카드 . zen 카드 (1) | 2024.06.23 |
바이비트 . zen.com 계정 연결 . 유로 이용 암호화폐 구입 가능 (1) | 2024.05.29 |
bybit . API V5 . 웹소켓 Orderbook . 실시간 호가 수신 (0) | 2024.05.24 |
댓글