본문으로 건너뛰기

금융 데이터 소스 등록

이 튜토리얼은 admin 이 코드 변경 없이 GenD UI 에서 새 암호화폐/금융 시장 데이터 소스를 등록하는 방법을 단계별로 안내합니다.

crypto 시세 수집의 정본 경로는 공용 수집기 (관리형)ccxt 수집기입니다 (#2535 에서 intel 1급 수집기로 승격). 구 "자동 수집" 화면은 은퇴했고(#2533, 구 경로는 시세 화면으로 리다이렉트), ccxt/rss 타입의 구 CollectionSource 신규 생성은 410 으로 차단됩니다 — 이 페이지의 절차만 사용하세요. 등록된 소스의 시세 데이터는 모든 사용자가 사이드바 → 인텔리전스 → 시세 (/intel/market) 에서 조회합니다.

접속 환경

환경URL
Production (AKS)https://gend.genon.ai
로컬 Kind (datax-local)http://gend.local (이미지 빌드 시 make build-ui-kind 사용 — --build-arg 로 Kind 도메인 주입)

사전 준비

  • 권한: admin 역할 (Keycloak gend realm). 공용 수집기 화면은 admin 전용입니다 — viewer / analyst 는 시세 화면에서 조회만 합니다.
  • 거래소 식별자: binance, bybit, okx 중 하나 (ccxt 지원 범위).
  • 심볼 형식: BASE/QUOTE 표기. 예: BTC/USDT, ETH/USDT.
  • 간격 (interval): 1m, 5m, 15m (ohlcv_minute 도메인 전용).
  • API 키: 불필요 — ccxt 는 거래소 public API 를 사용합니다.

1단계 — 사이드바에서 메뉴 진입

사이드바 하단 ⚙ 관리 콘솔 → 데이터플레인 설정 → 공용 수집기 (관리형) (/admin/intel-sources) 으로 이동합니다.

ℹ️ 이 절의 스크린샷은 구 금융 데이터 소스 admin 화면이라 현재 공용 수집기 UI 와 다를 수 있습니다 (재캡처 예정: #2390).

사이드바 메뉴 진입

처음 접속 시 등록된 소스가 없으면 빈 상태가 표시됩니다. 소스가 많은 환경에서는 상단 툴바의 이름/도메인 검색·수집기 타입·활성 상태 필터로 원하는 소스를 찾습니다 (목록은 신규 등록순). 등록된 소스가 있는 화면은 아래 4단계 의 목록 캡처를 참고하세요.

2단계 — 등록 다이얼로그 열기

상단의 신규 등록 버튼을 누르면 등록 다이얼로그가 열립니다. 수집기를 선택하면 API 키 필요 여부가 안내됩니다 (ccxt 는 불필요).

소스 추가 모달 (입력 전)

필드설명예시
이름운영자가 식별하기 위한 라벨Binance BTC/USDT 15m
수집기 (collector_type)수집기 종류ccxt
도메인분봉(ohlcv_minute) 또는 체결(trades)ohlcv_minute
params_json도메인별 파라미터아래 참조
스케줄 (cron)cron 또는 프리셋(5m/15m/1h/…). 비우면 수동 실행 전용(비움 권장)
활성화스케줄 자동 실행 대상 포함 여부켜짐

3단계 — params_json 입력 + 검증

ccxt 소스의 params_json 은 다음 4개 키를 받습니다.

{
"symbol": "BTC/USDT",
"exchange": "binance",
"market_type": "swap",
"interval": "15m"
}
  • market_type: spot 또는 swap (perpetual)
  • interval: ohlcv_minute 도메인 전용 (1m/5m/15m). trades 도메인은 불필요

폼 입력 완료

💡 스케줄은 비워두는 것이 권장됩니다 — 정기 Silver 적재는 Dagster 자산(silver_intel_ohlcv_minute / silver_intel_trades)이 담당하므로, 이 소스는 수동 실행·연결 테스트 용도로 두면 됩니다 (#2535). 스케줄을 설정하면 Dagster intel_source_cron_sensor 가 60초마다 cron 만기를 평가해 자동 실행합니다.

4단계 — 등록 + 결과 확인

저장 버튼을 누르면 즉시 목록 테이블에 새 row 가 추가됩니다.

등록 후 목록

목록에는 다음 컬럼이 노출됩니다.

  • 이름 / 수집기 / 도메인 — 등록한 라벨과 수집기 타입
  • 스케줄 — cron 표현식 또는 프리셋 (비어 있으면 수동 전용)
  • 활성 — 스케줄 자동 실행 대상 여부 스위치
  • 마지막 상태 / 마지막 실행success / failed / idle 과 최근 실행 시각
  • 작업 — ▶ 실행 (즉시 1회 수집) / Edit / Delete

행의 ▶ 실행 을 누르면 즉시 1회 수집이 실행되고, 응답 토스트에 records/errors 건수가 표시됩니다.

등록 후 — 적재 흐름

  1. ccxt 수집기가 거래소 public API 를 호출해 Bronze(iceberg.bronze.intel_market_raw 계열)에 원본을 적재합니다.
  2. Dagster 자산 silver_intel_ohlcv_minute / silver_intel_trades 가 Silver 테이블 iceberg.silver.intel_ohlcv_minute / iceberg.silver.intel_trades 로 정제 적재합니다 (trade_date, exchange 파티셔닝, source_checksum 멱등성).
  3. 사이드바 → 인텔리전스 → 시세 화면에서 심볼/거래소/간격/기간 필터 + OHLCV·체결 탭으로 조회됩니다.
  4. 카탈로그 페이지에서도 테이블 스키마·Medallion 라벨(Silver)을 확인할 수 있습니다.

Trino 쿼리로 직접 결과를 확인할 수 있습니다.

SELECT symbol, exchange, ts, "interval", open, high, low, close, volume
FROM iceberg.silver.intel_ohlcv_minute
WHERE symbol = 'BTC/USDT' AND exchange = 'binance'
AND trade_date = current_date - interval '1' day
ORDER BY ts;

다음 단계

참고