목차

개요

스크린샷 2024-08-22 오전 6.17.19.png

  1. EC2 인스턴스(t3.large)를 활용하여 AWS 상에 개발/배포 환경을 구축함
  2. Kafka를 이용하여 실시간 데이터 파이프라인을 구축하여 PostgreSQL과 S3의 parquet 형식으로 배치 단위 파일을 저장함
  3. Airflow를 이용하여 S3에 저장된 배치 단위 파일을 분석하여 통계치를 도출함 → PostgreSQL에 저장
  4. 실시간 데이터, 배치 단위 데이터 모두 Grafana를 통해 시각화함

1. API를 통해 수집하는 데이터

https://docs.upbit.com/reference/분minute-캔들-1

| upbit_candle_topic

[시세 캔들 조회] Type 설명
timestamp TIMESTAMP 해당 캔들에서 마지막 틱이 저장된 시각
open INT 시가
high INT 고가
low INT 저가
trade INT 종가(현재가)
candle_acc_trade_price FLOAT 누적 거래 금액
candle_acc_trade_volume FLOAT 누적 거래량

https://docs.upbit.com/reference/최근-체결-내역

| upbit_trade_topic

[시세 체결 조회] Type 설명
timestamp TIMESTAMP 체결 타임스탬프
trade_price Double 체결 가격
trade_volume Double 체결량
prev_closing_price Double 전일 종가(UTC 0시 기준)
change_price Double 변화량
trade_time_utc String 체결 시각(UTC 기준)포맷: HH:mm:ss

https://docs.upbit.com/reference/호가-정보-조회

| upbit_orderbook_topic

[시세 호가 조회] Type 설명
timestamp TIMESTAMP 호가 생성 시각
total_ask_size FLOAT 호가 매도 총 잔량
total_bid_size FLOAT 호가 매수 총 잔량
max_ask_price FLOAT 매도호가 최댓값
max_bid_price FLOAT 매수호가 최댓값
min_ask_price FLOAT 매도호가 최솟값
min_bid_price FLOAT 매수호가 최솟값
median_ask_price FLOAT 매도호가 중간값
median_bid_price FLOAT 매수호가 중간값

https://docs.upbit.com/reference/ticker현재가-정보

| upbit_ticker_topic

[시세 현재가 조회] Type 설명
timestamp TIMESTAMP ISO Format 형식의 timestamp (UTC 기준)
trade_date string 최근 거래 일자(UTC)포맷: yyyyMMdd
trade_time string 최근 거래 시각(UTC)포맷: HHmmss
opening_price INT 시가
high_price INT 고가
low_price INT 저가
trade_price INT 종가(현재가)
prev_closing_price INT 전일 종가(UTC 0시 기준)
change VARCHAR EVEN : 보합RISE : 상승FALL : 하락
change_price INT 변화액의 절대값
change_rate FLOAT 변화율의 절대값
signed_change_price INT 부호가 있는 변화액
signed_change_rate FLOAT 부호가 있는 변화율
trade_volume FLOAT 가장 최근 거래량
acc_trade_price FLOAT 누적 거래 금액
acc_trade_volume FLOAT 누적 거래량
{
	"timestamp": 1724096190022,
   "trade_date": "20240819",
   "trade_time": "193629",
   "opening_price": 81500000,
   "high_price": 81915000,
   "low_price": 80100000,
   "trade_price": 80929000,
   "prev_closing_price": 81500000,
   "change": "FALL",
   "change_price": 571000,
   "change_rate": 0.007006135,
   "signed_change_price": -571000,
   "signed_change_rate": -0.007006135,
   "trade_volume": 0.04970879,
   "acc_trade_price": 192697490029.9982,
   "acc_trade_volume": 2381.44653474
 }