# 系统设置页说明

本文档描述各交易实例 Web 端 **「系统设置」** 页各区块功能,与 env 配置页的分工,以及导航显示开关规则.

---

## 1. 页面结构

系统设置为 **两列卡片** 布局,各区块可在「导航显示」中单独开关(见第 2 节).

| 区块 | 默认显示 | 说明 |
|------|----------|------|
| 导航显示 | 固定 | 控制顶栏与其它设置区块是否出现 |
| 账户密码修改 | 可关 | 修改网页登录用户名/密码 |
| 永续资金划转 | 可关 | 手动在资金账户与交易账户间划转 USDT |
| 数据导出 | 可关 | 下载 CSV |
| 币种兑换 | 可关 | 仅 OKX 期权相关 |
| 期权资金划转 | 可关 | 仅 OKX |
| 期权设置面板 | OKX 有模块时 | 较大块,占整行 |

**固定不可隐藏**(顶栏):关键位监控,实盘下单,系统设置.

---

## 2. 导航显示

### 2.1 顶栏导航开关

| 开关 | 对应 Tab |
|------|----------|
| 策略交易 | 策略交易 |
| 策略交易记录 | 策略交易记录 |
| 交易记录与复盘 | 交易记录与复盘 |
| 统计分析 | 统计分析 |
| 风控说明 | 风控说明 |
| env 配置 | env 配置 |
| 期权 | 期权(仅 OKX 等有期权模块时有效) |

保存后 **立即生效**,无需重启.中控 iframe 内嵌导航同步生效.

### 2.2 系统设置内区块开关

| 开关 | 隐藏内容 |
|------|----------|
| 资金划转 | 永续资金划转卡片 |
| 数据导出 | 数据导出卡片 |
| 账户密码修改 | 改密卡片 |
| 期权币种兑换 | OKX 兑换卡片 |
| 期权资金划转 | OKX 期权划转卡片 |

---

## 3. 账户密码修改

### 用途

- 修改 **直链打开实例** 时 `/login` 使用的用户名与密码.
- 写入本实例目录 `.env` 的 `APP_USERNAME`,`APP_PASSWORD`.
- **三所建议使用相同账号**,便于记忆;本页仅改 **当前实例** 的 `.env`,若需三所一致请分别保存或后续做批量同步.

### 与中控 / 密钥的关系

| 项目 | 是否在系统设置改 | 说明 |
|------|------------------|------|
| 网页登录密码 | ✅ | 本区块 |
| 中控通信密钥 `HUB_BRIDGE_TOKEN` | ❌ | 部署时自动生成,中控与实例一致 |
| 登录会话密钥 `FLASK_SECRET_KEY` | ❌ | 部署时自动生成,三所相同 |
| 交易所 API | ❌ | 在 **env 配置** 页(各所自配) |
| AI 复盘 / OpenAI | ❌ | 在中控 **系统设置 → AI 配置**(同步三所) |

### 操作流程

1. 输入 **当前密码**(与 `.env` 中 `APP_PASSWORD` 一致).
2. 可选填 **新用户名**;不填则保持原用户名.
3. 输入 **新密码** 与 **确认密码**(至少 6 位).
4. 保存后 **自动重启当前实例**(PM2),请用新密码登录.

经中控 SSO 打开实例时,通常无需输入实例密码;改密主要影响 **直链访问**.

---

## 4. 永续资金划转

### 用途

在 **子账户永续** 场景下,于 **资金账户(funding)** 与 **交易账户(swap)** 之间手动划转 USDT.

### 与 env 配置的关系

| 能力 | 系统设置 | env 配置 |
|------|----------|----------|
| **手动**划转一笔 | ✅ 本区块 | ❌ |
| **自动**每日划转规则 | ❌ | ✅「自动划转」卡片 |

自动划转规则(开关,目标余额,整点等)在 env 配置中维护,见 [env配置说明.md](./env配置说明.md).

---

## 5. 数据导出

提供 CSV 下载(版本号见页内标注):

| 链接 | 内容 |
|------|------|
| 交易记录 | 成交/订单相关导出 |
| 复盘记录 | 复盘日记 |
| 关键位(当前) | 当前关键位列表 |
| 关键位历史 | 历史关键位 |

导出为只读操作,不修改配置.

---

## 6. 期权相关(仅 OKX)

当实例启用期权模块时,系统设置可能包含:

- **币种兑换**:期权账户内币种兑换操作
- **期权资金划转**:期权与永续/资金账户间划转
- **期权设置面板**:页内期权参数与状态(大块区域)

是否在顶栏显示「期权」Tab,由 **导航显示 → 期权** 控制;是否在设置页显示兑换/划转卡片,由对应子开关控制.

期权 env 参数(API,预算,策略默认值)在 **env 配置 → 期权账户** 维护,见 [期权用法.md](./期权用法.md).

---

## 7. 顶栏与设置页差异

| 页面 | 顶栏资金信息 | 说明 |
|------|--------------|------|
| 关键位,实盘,策略等 | 显示 | 含资金,盈亏等 |
| 系统设置,风控说明,env 配置 | 隐藏资金条 | 与实盘顶栏共用组件,设置类页面简化展示 |

主题切换(明/暗)在系统设置页可用(若已接入主题切换 UI).

---

## 8. 权限与安全

- 所有设置 API 需 **已登录**(或部署时 `APP_AUTH_DISABLED=true` 的联调环境).
- 改密,env 保存,PM2 重启等写操作 **不接受** 仅带 `X-Hub-Token` 的中控请求修改(防止中控误改实例配置).
- 生产环境建议 `APP_AUTH_DISABLED=false`,公网务必开启登录校验.

---

## 9. 首次部署时的账号与密钥(规划)

以下由 **部署脚本** 自动完成,**不在** 系统设置或 env 配置页手工填写:

1. **生成 `HUB_BRIDGE_TOKEN`** → 写入中控 + 三实例 `.env`(相同).
2. **生成 `FLASK_SECRET_KEY`** → 写入三实例 `.env`(三所相同).
3. **生成初始 `APP_USERNAME=admin`,`APP_PASSWORD=admin123`** → 写入三实例(仅当尚未配置时);用户日后在 **系统设置** 改密.

脚本应对 **已有非空值** 跳过写入,避免覆盖生产环境.

---

## 10. 相关文档

| 文档 | 内容 |
|------|------|
| [env配置说明.md](./env配置说明.md) | env 配置页字段与密钥分工 |
| [account-risk-cooldown.md](./account-risk-cooldown.md) | 账户冷静期规则 |
| [auto-transfer-daily.md](./auto-transfer-daily.md) | 自动划转 |
| [daily-open-limit.md](./daily-open-limit.md) | 单日开仓限制 |
| [manual_trading_hub/使用说明.md](../manual_trading_hub/使用说明.md) | 中控与 SSO |
