-- ============================================================
-- V10: 실시간 전략 체크 설정 테이블
-- 디바이스(또는 유저)별, 마켓별로 어느 전략을 어떤 방식으로
-- 실시간 체크할지 저장한다.
-- ============================================================

CREATE TABLE IF NOT EXISTS gc_live_strategy_settings (
    id              BIGINT AUTO_INCREMENT PRIMARY KEY,
    device_id       VARCHAR(100)    NULL  COMMENT '비회원 기기 식별자',
    user_id         BIGINT          NULL  COMMENT '회원 ID',
    market          VARCHAR(30)     NOT NULL DEFAULT 'KRW-BTC' COMMENT '업비트 마켓 코드 (e.g. KRW-BTC)',
    strategy_id     BIGINT          NULL  COMMENT '연결된 전략 ID (gc_strategy.id)',
    is_live_check   TINYINT(1)      NOT NULL DEFAULT 0 COMMENT '실시간 체크 ON/OFF (1=ON)',
    execution_type  VARCHAR(30)     NOT NULL DEFAULT 'CANDLE_CLOSE'
                    COMMENT '체크 방식: CANDLE_CLOSE(봉 마감) | REALTIME_TICK(3초 틱)',
    created_at      DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP,
    updated_at      DATETIME        NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,

    UNIQUE KEY uk_live_device_market  (device_id, market),
    UNIQUE KEY uk_live_user_market    (user_id, market),
    INDEX idx_live_device             (device_id),
    INDEX idx_live_user               (user_id),
    INDEX idx_live_market             (market)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
  COMMENT='디바이스/유저별 종목 실시간 전략 체크 설정';
