Files
eth_hedge_sim/docs/商业化与授权方案.md
T
dekun c41122ae71 Document cloud server sizing and region guidance.
Add recommended VPS specs and low-latency region notes for deploy and commercial delivery.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-29 20:57:56 +08:00

234 lines
9.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 比特骆驼自动化对冲系统 — 商业化与授权方案(初步)
> **产品名**:比特骆驼自动化对冲系统 · **工程**`eth_hedge_sim`
> 状态:草案,指导后续开发,细节可迭代。
> 商业模式结论:**客户侧部署 + 软件授权**(不做中心化多租户托管)。
> 关联文档:[开发方案](./开发方案.md)、[代码结构](./代码结构.md)
---
## 1. 目标与边界
### 1.1 卖什么
| 项 | 约定 |
|----|------|
| 产品名 | **比特骆驼自动化对冲系统** |
| 产品形态 | 可独立部署的对冲交易系统(SIM + 可选实盘) |
| 交付方式 | 安装包 / 一键脚本 / Docker(后续择一为主) |
| 收费方式 | **授权(License**:按实例、按期限、按功能档 |
| 不卖什么 | 不承诺收益;不做代客理财;不集中托管客户 API Key |
### 1.2 为什么不做 SaaS 托管
| 风险 | 说明 |
|------|------|
| 交易所限流 | REST/WS 按 IP、API Key 限流;多客户共机互相挤占 |
| 同 IP 风控 | 一公网 IP 对多交易所、多 Key 高频请求,易触发异常标记 |
| 密钥与责任 | 客户 Key 进你机房,合规与事故责任更重 |
| 运维成本 | 你要为所有客户的行情稳定性买单 |
**原则:一客户一实例一出口 IP(或客户自有网络)。**
### 1.3 产品定位一句话
> **比特骆驼自动化对冲系统**:客户在自己的服务器上部署;API Key 不出客户环境;你提供软件、更新与授权。
---
## 2. 交付与部署
### 2.1 目标交付形态(分阶段)
| 阶段 | 形态 | 说明 |
|------|------|------|
| 现在(内部) | Git + `deploy/manage.sh` + PM2 | 已具备,继续打磨成「可复制安装」 |
| 商用 v1 | **一键部署脚本** + 环境检查 + 健康检查 | 客户 **Ubuntu 22.04** 机器上跑通 |
| 商用 v2 | **Docker Compose**(可选) | 降低环境差异;与脚本二选一或并存 |
| 商用 v3 | 离线包 / 镜像导出 | 内网客户、无法拉 Git 的场景 |
### 2.2 客户侧必备条件
- 一台独立 **Ubuntu 22.04** 主机(建议独立公网 IP
- **云服务器规格**:见下方「配置选择」;更完整说明见 [开发方案 §6.0](./开发方案.md#60-云服务器配置选择说明)
- 出网访问目标交易所 API(OKX / 币安等)
- 域名或 IP + HTTPS(可用反代)
- 客户自备交易所 API Key(只读行情 / 实盘交易按档位要求)
#### 云服务器配置选择(交付速查)
| 用途 | 建议规格 | 地域 |
|------|----------|------|
| 演示 / SIM | 2 vCPU / 2 GB / 40 GB SSD | 香港或新加坡优先 |
| LIVE 实盘 | 同上起配;网络优先于堆配置 | 对交易所延迟低的海外区 |
| 最低试装 | 1 vCPU / 1 GB(仅短期试跑) | 同上 |
不建议:超售共享低配、无稳定公网、大陆机房直连境外交易所作为默认 LIVE 节点。
### 2.3 部署流程(商用目标体验)
1. 客户拿到安装脚本或镜像 + **授权码**
2. 填写 `.env`(账号、交易所 Key、授权码)
3. 一键安装 → 健康检查通过
4. 浏览器登录 → SIM 可演示;实盘需对应授权档位 + 二次确认
### 2.4 更新策略
- 默认:客户机 `git pull` / 镜像升级 + 构建 + 仅 reload 本项目进程
- 破坏性升级:附带迁移说明(配置项、数据库/状态文件)
- 授权未过期才允许拉取正式版更新(可选;初期可人工发版)
---
## 3. 授权(License)设计
### 3.1 设计原则
- **正规客户好用,随手拷贝有门槛**(不做无法破解的完美 DRM)
- 校验失败时:允许登录看状态,但 **禁止启策略 / 禁止实盘下单**(策略可配置)
- 校验逻辑本地为主;可选短时在线激活(降低盗版批量复制)
### 3.2 授权字段(建议)
| 字段 | 用途 |
|------|------|
| `license_id` | 授权编号 |
| `customer_name` | 客户标识(展示/审计) |
| `expires_at` | 到期日 |
| `edition` | 档位:`sim` / `live` / `pro`(名称可调) |
| `instance_id``machine_fingerprint` | 绑定部署实例(主机指纹或安装时生成的 UUID) |
| `features` | 功能开关列表(可选) |
| `signature` | 对上述字段的签名(私钥在你方,公钥打进程序) |
### 3.3 档位建议(初稿)
| 档位 | 能力 |
|------|------|
| `sim` | 仅 SIM 撮合;实盘下单关闭 |
| `live` | SIM + 实盘下单(显式开关 + 二次确认) |
| `pro` | live + 多策略/高级报表/优先支持(后续) |
### 3.4 绑定策略(由松到紧,可演进)
1. **v1**:授权码 + 到期日 + 档位(不绑机,靠合同与信任)
2. **v2**:首次激活写入 `instance_id`,换机需重置授权
3. **v3**(可选):定期在线心跳续期;断网宽限期 N 天
### 3.5 运行时行为
```
启动 → 读 license → 验签 / 查到期 / 查档位
├─ 有效 → 按档位开放功能
└─ 无效/过期 → UI 提示;策略不可启动;实盘接口 403
```
本地文件建议:`data/license.json` 或环境变量 `LICENSE_KEY`(整段授权串)。
---
## 4. 技术架构约束(后续开发必须遵守)
### 4.1 多租户与网络
- **不做**「一个进程服务多个无关客户」
- **不做**「你方中心机房代跑客户实盘」作为主路径
- 每个商用部署 = 独立进程 + 独立配置 + 独立日志 + 独立出口网络
### 4.2 密钥与安全
- 交易所 API Key **仅存客户机**(加密或系统权限保护)
- 禁止把客户 Key 回传到你方(授权校验除外的元数据也不含密钥)
- HTTPS、登录鉴权、改密、审计日志(谁启停、谁改参数)逐步补齐
### 4.3 模式隔离
| 模式 | 要求 |
|------|------|
| SIM | 零交易类写接口;行情只读 |
| LIVE | 显式开关 + 二次确认 + 授权档位 dual-check |
| 数据 | SIM 与 LIVE 成交/绩效 **分库或分表/分前缀**,不可混报 |
### 4.4 可观测性(商用必需)
- `/health`:进程、行情连接、授权状态(不含密钥)
- 结构化日志:开平仓原因、费用、流动性等待、紧急平仓
- 绩效导出:按组 / 按日(收益、回撤、费用、胜率)— 客户自证与你售后都需要
---
## 5. 合规与产品话术(边界)
- 定位:**交易辅助工具 / 策略执行软件**,非保本理财
- 界面与合同:风险提示、用户自负盈亏、交易所账户属用户
- 对外演示默认走 **SIM**;实盘由客户自行承担 Key 与资金风险
- 法务文本后续单独立项;工程侧先把「免责展示位 + 二次确认」留好
---
## 6. 开发路线图
### Phase 0 — 现在(产品可用、可演示)
- [x] SIM 对冲主流程、设置、Plan 桌面布局
- [ ] 绩效与组维度报表可导出/可复盘
- [ ] 部署脚本文档化到「陌生人能装上」的程度
- [ ] SIM / 未来 LIVE 配置与文案边界清晰
### Phase 1 — 授权骨架(商用前提)
- [ ] License 数据结构 + 本地验签
- [ ] 到期 / 档位拦截(启策略、实盘 API)
- [ ] 设置页或启动页展示授权状态与到期日
- [ ] 内部发码工具(私钥离线,不进客户仓库)
### Phase 2 — 实盘与交付打磨
- [ ] LIVE 下单通路(已有规划则按开发方案推进)
- [ ] 安装向导:环境检查、端口、反向代理示例
- [ ] 升级与回滚说明;配置迁移
- [ ] 客户排障包:一键打包日志(脱敏)
### Phase 3 — 商业运营配套
- [ ] 授权台账(客户、到期、续费、换机)— 可先表格,后小后台
- [ ] 版本通道:stable / beta
- [ ] 支持档位与 SLA(人工即可)
- [ ] (可选)在线激活与换机工单
### 明确延后
- 中心化多租户 SaaS
- 复杂手机端优先设计
- 支付系统内嵌(可先对公转账 + 人工发码)
- 完美防破解
---
## 7. 与当前仓库的衔接
| 现有能力 | 商用含义 |
|----------|----------|
| `deploy/manage.sh`、远程 `deploy_remote.py` | 演进为客户侧一键安装/更新的基础 |
| PM2 `eth-hedge-api`、端口 5155 | 单实例模型已符合「一客户一进程」 |
| 登录 `AUTH_USERNAME` / `AUTH_PASSWORD` | 保留为实例管理员;与 License 分层 |
| SIM 撮合 + 只读行情 | 作为 `sim` 档与售前演示默认路径 |
| 与 `crypto_monitor` 隔离 | 商用交付物必须自包含,禁止捆绑现网 |
---
## 8. 待决事项(开发前拍板)
1. 主交付形态优先:**脚本 + PM2** 还是 **Docker Compose**
2. 授权 v1 是否绑机?还是先「码 + 到期日」?
3. 过期策略:只禁实盘,还是 SIM 一并只读?
4. 首发交易所是否仅 OKX,多所是否进 `pro`
5. 价格与续费周期(工程不阻塞,商务可并行)
---
## 9. 修订记录
| 日期 | 说明 |
|------|------|
| 2026-07-25 | 初稿:确定「部署 + 授权」、否决中心托管主路径、划定 Phase 0–3 |