-- 临时禁用安全模式
SET SQL_SAFE_UPDATES = 0;

CREATE TABLE IF NOT EXISTS crypto_market_data (
    id BIGINT AUTO_INCREMENT PRIMARY KEY,
    symbol VARCHAR(50) NOT NULL,
    bar VARCHAR(20) NOT NULL,
    timestamp BIGINT NOT NULL,
    date_time VARCHAR(50) NOT NULL,
    open DECIMAL(20,10) NOT NULL,
    high DECIMAL(20,10) NOT NULL,
    low DECIMAL(20,10) NOT NULL,
    close DECIMAL(20,10) NOT NULL,
    pre_close DECIMAL(20,10) NULL,
    close_change DECIMAL(20,10) NULL,
    pct_chg DECIMAL(20,10) NULL,
    volume DECIMAL(30,10) NOT NULL,
    volCcy DECIMAL(30,10) NOT NULL,
    volCCyQuote DECIMAL(30,10) NOT NULL,
    buy_sz DECIMAL(20, 10) NOT NULL,
    sell_sz DECIMAL(20, 10) NOT NULL,
    -- 技术指标字段
    ma1 DOUBLE DEFAULT NULL COMMENT '移动平均线1',
    ma2 DOUBLE DEFAULT NULL COMMENT '移动平均线2',
    dif DOUBLE DEFAULT NULL COMMENT 'MACD指标DIF线',
    dea DOUBLE DEFAULT NULL COMMENT 'MACD指标DEA线',
    macd DOUBLE DEFAULT NULL COMMENT 'MACD指标值',
    macd_signal VARCHAR(15) DEFAULT NULL COMMENT 'MACD金叉死叉信号',
    macd_divergence varchar(25) DEFAULT NULL COMMENT 'MACD背离，顶背离或底背离',
    kdj_k DOUBLE DEFAULT NULL COMMENT 'KDJ指标K值',
    kdj_d DOUBLE DEFAULT NULL COMMENT 'KDJ指标D值',
    kdj_j DOUBLE DEFAULT NULL COMMENT 'KDJ指标J值',
    kdj_signal VARCHAR(15) DEFAULT NULL COMMENT 'KDJ金叉死叉信号',
    kdj_pattern varchar(25) DEFAULT NULL COMMENT 'KDJ超买，超卖，徘徊',
    ma5 DOUBLE DEFAULT NULL COMMENT '5移动平均线',
    ma10 DOUBLE DEFAULT NULL COMMENT '10移动平均线',
    ma20 DOUBLE DEFAULT NULL COMMENT '20移动平均线',
    ma30 DOUBLE DEFAULT NULL COMMENT '30移动平均线',
    ma_cross VARCHAR(15) DEFAULT NULL COMMENT '均线交叉信号',
    ma5_close_diff double DEFAULT NULL COMMENT '5移动平均线与收盘价差值',
    ma10_close_diff double DEFAULT NULL COMMENT '10移动平均线与收盘价差值',
    ma20_close_diff double DEFAULT NULL COMMENT '20移动平均线与收盘价差值',
    ma30_close_diff double DEFAULT NULL COMMENT '30移动平均线与收盘价差值',
    ma_close_avg double DEFAULT NULL COMMENT '收盘价移动平均值',
    ma_long_short varchar(25) DEFAULT NULL COMMENT '均线多空',
    ma_divergence varchar(25) DEFAULT NULL COMMENT '均线发散，均线粘合，均线适中，均线发散，均线超发散',
    rsi_14 DOUBLE DEFAULT NULL COMMENT '14RSI指标',
    rsi_signal VARCHAR(15) DEFAULT NULL COMMENT 'RSI强弱信号',
    boll_upper DOUBLE DEFAULT NULL COMMENT '布林带上轨',
    boll_middle DOUBLE DEFAULT NULL COMMENT '布林带中轨',
    boll_lower DOUBLE DEFAULT NULL COMMENT '布林带下轨',
    boll_signal VARCHAR(15) DEFAULT NULL COMMENT '布林带强弱信号',
    boll_pattern varchar(25) DEFAULT NULL COMMENT 'BOLL超买，超卖，震荡',
    k_length varchar(25) DEFAULT NULL COMMENT 'K线长度',
    k_shape varchar(25) DEFAULT NULL COMMENT 'K线形状',
    k_up_down varchar(25) DEFAULT NULL COMMENT 'K线方向',
    create_time VARCHAR(50) NOT NULL,
    UNIQUE KEY uniq_symbol_bar_timestamp (symbol, bar, timestamp)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

