캔들 (Candle)

🚧

이 기능은 현재 베타 버전으로 제공됩니다.

🚧

캔들은 해당 시간대에 체결이 발생한 경우에만 생성됩니다.

  • candle_date_time이 2024-08-31T22:25:00인 초봉 캔들은 2024-08-31T22:25:00 (이상) ~ 2024-08-31T22:25:01 (미만) 사이의 체결로 구성됩니다.
  • 해당 시간 동안 체결이 없을 경우, 2024-08-31T22:25:00 캔들은 생성되지 않으며 웹소켓으로 데이터가 내려가지 않습니다.

Request

요청은 JSON Object를 이용하며 응답 또한 JSON Object 입니다. 요청은 크게 ticket field, type field, format field 로 나누어지며 하나의 요청에 여러 개의 type field 를 명시할 수 있습니다. ticket field 와 format field 에 대해서는 요청 방법 및 포맷을 참고해주시기 바랍니다.

📘

Request format

[{Ticket Field},{Type Field},....,{Type Field},{Format Field}]

Type Field

수신하고 싶은 시세 정보를 나열하는 필드입니다.
is_only_snapshot, is_only_realtime 필드는 생략 가능하며 모두 생략시 스냅샷과 실시간 데이터 모두를 수신합니다.

필드명
타입
내용
필수 여부
기본 값
typeString

데이터 타입

- candle.1s: 초봉
- candle.1m: 1분봉
- candle.3m: 3분봉
- candle.5m: 5분봉
- candle.10m: 10분봉
- candle.15m: 15분봉
- candle.30m: 30분봉
- candle.60m: 60분봉
- candle.240m: 240분봉

O
codesList마켓 코드 리스트
*대문자로 요청해야 합니다.
O
is_only_snapshotBoolean스냅샷 시세만 제공Xfalse
is_only_realtimeBoolean실시간 시세만 제공Xfalse

Response

  • 데이터 전송 주기: 1초
    • 단, 체결에 의해 직전 캔들 대비 값이 변경될 때만 전송됩니다.
    • 3분 봉 예시) 12:00:00 3분 봉은 존재하고, 12:03:00 ~ 12:04:00 사이는 아직 체결이 없는 상태라고 가정합니다. 이때 12:04:00 에 candle.3m 요청을 보내면, 서버는 12:00:00 3분 봉 데이터를 스냅샷 데이터로 반환합니다. 이후 12:04:05 에 첫 체결이 발생하면 서버는 즉시 12:03:00 3분봉을 생성하고, 다음 1초 interval 인 12:04:06 에 해당 12:03:00 3분 봉 데이터를 전송합니다.
🚧

같은 candle_date_time 데이터가 여러 번 내려갈 수 있습니다.

  • 데이터 전송 주기를 완벽하게 보장하지 않으며, 같은 시간대의 캔들 데이터가 여러 번 내려갈 수 있습니다.
  • 가장 마지막 데이터가 가장 최신 데이터 입니다.
필드명
축약형 (format: SIMPLE)
내용
타입
값
typety타입String- candle.1s: 초봉
- candle.1m: 1분봉
- candle.3m: 3분봉
- candle.5m: 5분봉
- candle.10m: 10분봉
- candle.15m: 15분봉
- candle.30m: 30분봉
- candle.60m: 60분봉
- candle.240m: 240분봉
codecd마켓 코드 (ex. KRW-BTC)String
candle_date_time_utccdttmu캔들 기준 시각(UTC 기준)
포맷: yyyy-MM-dd'T'HH:mm:ss
String
candle_date_time_kstcdttmk캔들 기준 시각(KST 기준)
포맷: yyyy-MM-dd'T'HH:mm:ss
String
opening_priceop시가Double
high_pricehp고가Double
low_pricelp저가Double
trade_pricetp종가Double
candle_acc_trade_volumecatv누적 거래량Double
candle_acc_trade_pricecatp누적 거래 금액Double
timestamptms타임스탬프 (millisecond)Long
stream_typest스트림 타입StringSNAPSHOT : 스냅샷
REALTIME : 실시간

Example

Request

  • KRW-BTC, KRW-ETH 의 초봉 수신
[
  {
    "ticket": "test"
  },
  {
    "type": "candle.1s",
    "codes": [
      "KRW-BTC",
      "KRW-ETH"
    ]
  },
  {
    "format": "DEFAULT"
  }
]

Response

{
  "type": "candle.1s",
  "code": "KRW-BTC",
  "candle_date_time_utc": "2025-01-02T04:28:05",
  "candle_date_time_kst": "2025-01-02T13:28:05",
  "opening_price": 142009000.00000000,
  "high_price": 142009000.00000000,
  "low_price": 142009000.00000000,
  "trade_price": 142009000.00000000,
  "candle_acc_trade_volume": 0.00606119,
  "candle_acc_trade_price": 860743.5307100000000000,
  "timestamp": 1735792085824,
  "stream_type": "REALTIME"
}
{
  "type": "candle.1s",
  "code": "KRW-ETH",
  "candle_date_time_utc": "2025-01-02T04:28:05",
  "candle_date_time_kst": "2025-01-02T13:28:05",
  "opening_price": 5059000.00000000,
  "high_price": 5059000.00000000,
  "low_price": 5059000.00000000,
  "trade_price": 5059000.00000000,
  "candle_acc_trade_volume": 0.08158869,
  "candle_acc_trade_price": 412757.1827100000000000,
  "timestamp": 1735792085749,
  "stream_type": "REALTIME"
}
※ This English version is a translation of the original Korean version of the Upbit Developer Center, generated using a third-party tool. In the event of any discrepancies, the Korean version shall take precedence.