env 配置页说明
本文档描述各交易实例 Web 端 「env 配置」 页展示项、含义、生效方式,以及与系统设置、中控密钥的分工。
不在本页展示的配置(服务端口、数据库路径、关键位门控、轮询间隔等)仍保存在实例目录 .env 中,需 SSH 编辑或部署脚本维护,见文末「隐藏项」。
1. 设计原则
| 原则 |
说明 |
| 只展示运营相关项 |
不暴露全量 .env,避免误改基础设施 |
| 前端仅中文 |
页面只显示中文标签与说明,不显示 APP_XXX 等变量名 |
| 账户密码不进本页 |
登录用户名/密码在 系统设置 → 账户密码修改 中维护 |
| 密钥自动托管 |
中控通信密钥、登录会话密钥由 首次部署脚本自动生成并写入,本页不提供编辑 |
| 保存标注 |
每项标注「保存即生效」或「需重启」;含需重启项时可用「保存并重启」 |
2. 密钥分工(自动生成,本页不可见)
部署时由脚本统一生成并写入对应 .env(已有值则跳过,避免覆盖生产环境)。
| 类型 |
环境变量 |
写入位置 |
用途 |
| 中控通信密钥 |
HUB_BRIDGE_TOKEN |
中控 manual_trading_hub/.env + 三实例 .env(相同值) |
中控调用实例 API(X-Hub-Token)、iframe SSO 签发与校验 |
| 登录会话密钥 |
FLASK_SECRET_KEY |
三实例 .env(三所相同) |
Flask Session 签名;与网页登录态相关,与中控密钥 分离 |
| 登录账号 |
APP_USERNAME / APP_PASSWORD |
三实例 .env(建议三所统一) |
直链实例 /login 使用;仅在系统设置中修改 |
说明:
- 中控密钥 ≠ 登录密钥:前者给中控与实例之间通信用;后者给浏览器 Session 用。
- 经中控 iframe / SSO 打开实例时,可免输实例密码;直链 IP/域名仍走
/login。
- 首次部署可生成随机强密码;用户日后在 系统设置 改密,不经过本页。
3. 页面布局(三列卡片)
| 列 1 |
列 2 |
列 3 |
| 交易所与实盘 |
企业微信 |
AI 复盘 |
| 交易执行 |
交易风控 |
账户冷静期 |
| 自动划转 |
当日资金 |
期权账户(仅 OKX) |
Binance / Gate 无期权模块时,第三列最后一格不显示或显示「本所无期权」。
4. 各卡片字段(中文展示名)
4.1 交易所与实盘
| 中文名 |
说明 |
重启 |
| 开启实盘下单 |
关闭时仅走本地流程,不向交易所发单 |
需重启 |
| API Key |
永续子账户 API Key |
需重启 |
| API Secret |
永续子账户 Secret |
需重启 |
| API Passphrase |
仅 OKX 显示 |
需重启 |
| 保证金模式 |
全仓 / 逐仓 |
需重启 |
| 持仓模式 |
双向 / 单向净持仓等(按所) |
需重启 |
| 仓位查询类型 |
仅 OKX:如 SWAP |
需重启 |
| 账户备注 |
企业微信推送中显示的交易所备注 |
保存即生效 |
本卡片不包含:网页登录账号密码、是否关闭登录校验、中控通信密钥。
4.2 企业微信
| 中文名 |
说明 |
| 机器人 Webhook |
行情、风控、提醒推送地址 |
| 推送超时(秒) |
可选,默认 10 |
4.3 AI 复盘
| 中文名 |
说明 |
| AI 提供方 |
云端 OpenAI 兼容 / 本地 Ollama |
| API 地址 |
OpenAI 兼容 base URL |
| API 密钥 |
敏感,留空表示不修改 |
| 模型名称 |
如 gemma、deepseek 等 |
| Ollama 地址 |
本地服务 URL |
| Ollama 模型 |
本地模型名 |
| 请求超时(秒) |
默认 120 |
4.4 交易执行
| 中文名 |
说明 |
| 计仓模式 |
以损定仓 / 全仓杠杆 |
| 以损定仓风险% |
单笔风险占资金比例 |
| 全仓资金缓冲比例 |
全仓模式下可用资金折扣 |
| BTC 默认杠杆 |
|
| 山寨默认杠杆 |
|
| 方向限制开关 |
|
| 允许方向 |
多 / 空 / 双向 |
| 币种白名单开关 |
|
| 白名单币种 |
逗号分隔 |
| 交易日切点(北京时间) |
默认 8 点 |
| 切点前禁止新开仓 |
|
| 最大同时持仓 |
|
| 人工最低盈亏比 |
|
| 强制清仓开关 |
|
| 强制清仓整点(北京) |
|
4.5 交易风控(日内开仓)
| 中文名 |
说明 |
| 单日开仓提醒阈值 |
达到次数后 AI 克制提醒(不拦单) |
| 单日开仓硬上限 |
0 表示不启用;达到后禁止新开仓 |
详见 daily-open-limit.md。
4.6 账户冷静期
| 中文名 |
说明 |
| 冷静期总开关 |
|
| 手动平仓冷静(小时) |
|
| 复盘情绪冷静(小时) |
|
| 日手动平仓次数上限 |
|
| 情绪标签日冻结 |
|
详见 account-risk-cooldown.md。
4.7 自动划转
| 中文名 |
说明 |
| 启用自动划转 |
|
| 目标余额(U) |
交易账户目标 USDT |
| 划出账户 |
funding / swap |
| 划入账户 |
swap / funding |
| 执行整点(北京时间) |
|
| 划转币种 |
默认 USDT |
详见 auto-transfer-daily.md。
4.8 当日资金
| 中文名 |
说明 |
| 日起始基数(U) |
|
| 回撤后基数(U) |
|
| 盈利后基数(U) |
|
与自动划转目标余额相互独立;若需一致请手动对齐。
4.9 期权账户(仅 OKX)
| 中文名 |
说明 |
| 启用期权模块 |
|
| 期权 API Key / Secret / Passphrase |
主账户,与永续子账户分离 |
| 期权账户备注 |
|
| 单笔预算(USDC) |
|
| 预算缓冲比例 |
|
| 默认标的 |
如 ETH |
| 最大到期天数 |
等常用策略参数 |
高级参数与完整说明见 期权方案.md、期权用法.md。
5. 操作说明
- 修改后点 保存:即时生效项立即应用;需重启项写入
.env 但未重启进程。
- 含需重启项时点 保存并重启:写
.env 后 PM2 重启当前实例。
- 重新加载:从磁盘重新读取
.env 刷新表单(放弃未保存修改)。
- 敏感项(API、密钥)显示为掩码;留空提交表示不修改原值。
6. 隐藏项(本页不展示)
以下仍存在于 .env,仅供运维或 SSH 修改:
- 服务:
APP_HOST、APP_PORT、APP_DEBUG
- 数据:
DB_PATH、UPLOAD_DIR
- 关键位门控:全部
KEY_*、KLINE_*
- 轮询与同步:
BALANCE_REFRESH_SECONDS、PRICE_REFRESH_SECONDS、MONITOR_POLL_SECONDS、BREAKEVEN_*、RECONCILE_*
- 代理:
OKX_SOCKS_PROXY、BINANCE_HTTP_PROXY 等
- 备份:
BACKUP_*
- 中控嵌入细节:
APP_ALLOW_HUB_EMBED、HUB_EMBED_*、APP_COOKIE_SECURE
- 登录相关:
APP_AUTH_DISABLED、APP_USERNAME、APP_PASSWORD、FLASK_SECRET_KEY、HUB_BRIDGE_TOKEN
后续若需要可增加「高级模式」折叠区,默认关闭。
7. 与系统设置的关系
| 能力 |
env 配置 |
系统设置 |
| 登录用户名/密码 |
❌ |
✅ 账户密码修改 |
| 交易所 API |
✅ |
❌ |
| 导航/区块显示 |
❌ |
✅ 导航显示 |
| 手动资金划转 |
❌ |
✅ 永续资金划转 |
| 数据导出 |
❌ |
✅ 数据导出 |
| 期权兑换/划转 UI |
❌ |
✅(OKX,可开关) |
系统设置说明见 系统设置说明.md。
8. 实现备注(开发用)
- 白名单分组:
lib/env/env_ui_manifest.py(按 exchange_key 过滤)
- 中文标签:
ENV_UI_LABELS 映射,模板只渲染 label / note
- 全量校验仍基于
.env.example;POST 仅接受 manifest 内 key