# trader-feature-master **Repository Path**: dec_nono/trader-feature-master ## Basic Information - **Project Name**: trader-feature-master - **Description**: 主要计算各种策略因子,为前端服务提供数据支撑 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2024-02-07 - **Last Updated**: 2024-04-15 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # paultrader > trading system based on paul's trading rules ## Ready ## databend deploy 下面是使用本地存储进行query: ```docker # you need to create a directory to store the data mkdir -p ${HOME}/container/databend/meta mkdir -p ${HOME}/container/databend/query mkdir -p ${HOME}/container/databend/log docker run -d \ -p 8000:8000 \ -v ${HOME}/container/databend/meta:/var/lib/databend/meta \ -v ${HOME}/container/databend/query:/var/lib/databend/query \ -v ${HOME}/container/databend/log:/var/log/databend \ -e QUERY_DEFAULT_USER=databend \ -e QUERY_DEFAULT_PASSWORD=databend \ datafuselabs/databend ``` 然后就是创建SQL: ```SQL CREATE DATABASE ma_stock; -- trade_time,open,close,volume,high,low,amount,change,change_pct,turnover_ratio,pre_close,stock_code,trade_date CREATE TABLE ma_stock.stock_market_data ( trade_time TIMESTAMP, open DOUBLE, close DOUBLE, volume INT64, high DOUBLE, low DOUBLE, amount DOUBLE, change DOUBLE, change_pct DOUBLE, turnover_ratio DOUBLE, pre_close DOUBLE, stock_code STRING, trade_date STRING ); CREATE TABLE ma_stock.stock_market_stat ( close DOUBLE, pre_close DOUBLE, stock_code STRING, trade_date STRING, close_21_ema DOUBLE, close_34_ema DOUBLE, close_55_ema DOUBLE, close_89_ema DOUBLE, close_144_ema DOUBLE ); ``` 使用 stage 的方式写入数据到 databend STAGE: ```SQL CREATE stage stock_market_stage; PUT fs://{your-path}/mkwinter/csv/data/stock/*/*.csv @stock_market_stage; LIST @stock_market_stage; COPY INTO stock_market_data(trade_time,open,close,volume,high,low,amount,change,change_pct,turnover_ratio,pre_close,stock_code,trade_date) FROM @stock_market_stage PATTERN = '.*data.csv' FILE_FORMAT = (TYPE = CSV, ERROR_ON_COLUMN_COUNT_MISMATCH = FALSE) PURGE = TRUE; COPY INTO stock_market_stat( close,pre_close,stock_code,trade_date, close_21_ema,close_34_ema,close_55_ema,close_89_ema,close_144_ema) FROM @stock_market_stage PATTERN = '.*stat.csv' FILE_FORMAT = (TYPE = CSV, ERROR_ON_COLUMN_COUNT_MISMATCH = FALSE) PURGE = TRUE; REMOVE @stock_market_stage; OPTIMIZE TABLE stock_market_data PURGE ```