Files
2026-05-28 21:43:23 +08:00

6.2 KiB
Raw Permalink Blame History

加密货币大盘-周期-阶段-强弱-方向-账户-策略前置匹配系统

纯本地部署的前置策略匹配工具。前后端分离,SQLite 持久化,黑色极简主题,无登录。

代码仓库https://git.bz121.com/dekun/crypto-pre-trade-system.git
生产部署:见 DEPLOY.mdUbuntu + PM2 一键部署)

本系统仅做前置策略匹配,不处理币种、K线识别、箱体判断、点位计算、突破校验、自动下单或交易所对接。 所有箱体细节、触碰次数、突破确认条件、顺势/逆势箱体,全部由人工手动筛选输入。


技术栈

层级 技术
后端 Python 3.10+ / FastAPI / SQLAlchemy / SQLite
前端 Vue 3 / Vite / TailwindCSS / Axios
数据库 SQLitebackend/data/pretrade.db

项目结构

crypto-pre-trade-system/
├── backend/
│   ├── app/
│   │   ├── main.py          # FastAPI 入口
│   │   ├── database.py      # 数据库连接 + 默认数据初始化
│   │   ├── models.py        # ORM 模型
│   │   ├── schemas.py       # Pydantic 模型
│   │   ├── crud.py          # CRUD 操作
│   │   ├── matcher.py       # 前置匹配核心逻辑
│   │   └── routes/          # API 路由
│   ├── init_db.sql          # 建表 SQL(参考)
│   ├── requirements.txt
│   └── data/                # SQLite 数据库(自动创建)
├── frontend/
│   ├── src/
│   │   ├── views/
│   │   │   ├── DailyMatch.vue    # 日常使用页(核心)
│   │   │   └── ConfigCenter.vue  # 系统配置中心
│   │   ├── api/index.js          # API 封装
│   │   └── ...
│   └── package.json
├── deploy/
│   └── install.sh           # Ubuntu 一键部署脚本
├── ecosystem.config.cjs     # PM2 进程配置
├── DEPLOY.md                # 部署文档
└── README.md

快速启动

1. 启动后端

cd backend

# 创建虚拟环境(推荐)
python -m venv venv
# Windows:
venv\Scripts\activate
# macOS/Linux:
# source venv/bin/activate

pip install -r requirements.txt

# 启动 API 服务(首次启动自动建表 + 写入默认数据)
uvicorn app.main:app --reload --host 127.0.0.1 --port 8000

后端启动后访问:

2. 启动前端

cd frontend

npm install
npm run dev

前端访问:http://localhost:1125


使用流程

日常使用(核心页面)

  1. 人工选择大盘周期(日线 / 4H / 1H
  2. 人工选择大盘阶段(8 个固定阶段)
  3. 人工选择趋势强弱(强 / 弱 / 震荡)
  4. 点击「执行前置匹配」
  5. 系统自动输出:
    • 交易类型(顺势 / 反转 / 观望)
    • 允许开仓方向
    • 可用账户列表
    • 可用策略列表(含规则文本,仅展示)

系统配置中心

  • 大盘管理:增删改 8 个大盘阶段及交易方向
  • 账户管理:动态管理账户(本金、周期、风险比)
  • 策略管理:增删改策略及规则文本
  • 匹配配置:绑定「大盘周期 + 阶段 + 强弱」→ 账户 + 策略 + 方向

匹配逻辑(默认规则)

大盘阶段 趋势强弱 匹配策略 方向
上涨初期/中期 箱体顺势突破 做多
上涨初期/中期 斐波回调 做多
上涨末期 强/弱 手工主观 做空
下跌初期/中期 箱体顺势突破 做空
下跌初期/中期 斐波回调 做空
下跌末期 强/弱 手工主观 做多
宽幅震荡末期 强/弱 收敛结构突破 多空均可
宽幅震荡 任意 全部禁用 禁止
任意阶段 震荡 全部禁用 观望

API 接口

方法 路径 说明
GET /api/regimes 获取大盘阶段列表
POST/PUT/DELETE /api/regimes 增删改大盘阶段
GET /api/accounts 获取账户列表
POST/PUT/DELETE /api/accounts 增删改账户
GET /api/strategies 获取策略列表
POST/PUT/DELETE /api/strategies 增删改策略
GET /api/matches 获取匹配配置
POST/PUT/DELETE /api/matches 增删改匹配配置
GET /api/match 前置匹配(核心接口)

匹配接口参数:

GET /api/match?market_cycle=日线&market_regime_id=1&trend_strength=强

数据库表

表名 说明
market_regime 大盘阶段(名称、交易类型、允许方向)
account 账户(名称、本金、周期、风险比、启用状态)
strategy 策略(名称、适用周期/强弱、规则文本)
regime_match 匹配绑定(阶段+周期+强弱 → 账户+策略+方向)

建表 SQL 见 backend/init_db.sql,也可通过后端启动自动创建。


约束说明

  1. 黑色极简 UI,左右分栏布局
  2. SQLite 持久化,重启不丢数据
  3. 无登录,纯本地部署
  4. 账户/策略/匹配规则 全部可动态增删改
  5. 严格禁止:自动 K 线识别、自动箱体判断、自动下单、交易所对接、币种输入、点位计算、突破条件校验
  6. 策略规则文本仅作展示,系统不做任何自动校验

重置数据库

删除 backend/data/pretrade.db 后重启后端,系统将自动重建并写入默认数据。


生产部署

服务器部署(Ubuntu + PM2 + root + /opt)详见 DEPLOY.md

一键部署:

git clone https://git.bz121.com/dekun/crypto-pre-trade-system.git /opt/crypto-pre-trade-system
cd /opt/crypto-pre-trade-system
bash deploy/install.sh

部署完成后访问:http://<服务器IP>:1125