51 lines
2.0 KiB
SQL
51 lines
2.0 KiB
SQL
-- 加密货币前置匹配系统 - SQLite 建表脚本
|
|
-- 本系统仅做前置策略匹配,不处理币种、点位、箱体细节
|
|
|
|
-- 1. 大盘阶段表
|
|
CREATE TABLE IF NOT EXISTS market_regime (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
name TEXT NOT NULL UNIQUE,
|
|
trade_type TEXT NOT NULL, -- 顺势 / 反转 / 观望
|
|
allow_direction TEXT NOT NULL, -- 做多 / 做空 / 禁止 / 多空均可
|
|
remark TEXT DEFAULT ''
|
|
);
|
|
|
|
-- 2. 账户表
|
|
CREATE TABLE IF NOT EXISTS account (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
account_name TEXT NOT NULL,
|
|
total_capital REAL NOT NULL DEFAULT 100,
|
|
trade_cycle TEXT NOT NULL, -- 如 4H/1H、日内、灵活
|
|
risk_ratio TEXT NOT NULL, -- 如 5%~10%
|
|
enable INTEGER NOT NULL DEFAULT 1,
|
|
remark TEXT DEFAULT ''
|
|
);
|
|
|
|
-- 3. 策略表
|
|
CREATE TABLE IF NOT EXISTS strategy (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
strategy_name TEXT NOT NULL,
|
|
fit_cycle TEXT NOT NULL, -- 适用周期
|
|
fit_trend_strength TEXT NOT NULL, -- 强 / 弱 / 全部
|
|
trade_type TEXT NOT NULL, -- 顺势 / 反转 / 全部
|
|
strategy_rule TEXT NOT NULL, -- 策略规则文本(仅展示,不做校验)
|
|
remark TEXT DEFAULT ''
|
|
);
|
|
|
|
-- 4. 匹配绑定表
|
|
CREATE TABLE IF NOT EXISTS regime_match (
|
|
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
market_regime_id INTEGER NOT NULL,
|
|
market_cycle TEXT NOT NULL, -- 日线 / 4H / 1H
|
|
trend_strength TEXT NOT NULL, -- 强 / 弱 / 震荡
|
|
account_id INTEGER NOT NULL,
|
|
strategy_id INTEGER NOT NULL,
|
|
force_direction TEXT DEFAULT '', -- 强制方向:做多 / 做空 / 空=跟随大盘
|
|
FOREIGN KEY (market_regime_id) REFERENCES market_regime(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (account_id) REFERENCES account(id) ON DELETE CASCADE,
|
|
FOREIGN KEY (strategy_id) REFERENCES strategy(id) ON DELETE CASCADE
|
|
);
|
|
|
|
CREATE INDEX IF NOT EXISTS idx_regime_match_lookup
|
|
ON regime_match(market_regime_id, market_cycle, trend_strength);
|