Переглянути джерело

docs: detail M1.6 roadmap and implementation plan

helium3@sina.com 2 місяців тому
батько
коміт
b7ad45bcac
1 змінених файлів з 20 додано та 0 видалено
  1. 20 0
      docs/IMPLEMENTATION_PLAN.md

+ 20 - 0
docs/IMPLEMENTATION_PLAN.md

@@ -106,3 +106,23 @@ This document consolidates the product requirements, technical architecture, and
   - 引入“连续 N 个 tick 无成交”与`average_fill_interval` 等指标,作为步长/范围动态压缩的触发条件。  
   - 设计压缩策略:在成交缺失时短暂降低 `min_grid_step_bps` / 增加 `min_layers`,成交恢复后渐进回调,避免频繁震荡。  
   - 在多账户/多实例场景下协调压缩动作,防止多个实例同时过度收紧导致限流;配套指标与运维回滚步骤。  
+
+## M1.6 Detailed Development Plan
+
+| # | Workstream | Deliverables | Dependencies | Notes / Owner Handoff |
+|---|------------|--------------|--------------|-----------------------|
+| 1 | Incremental Grid Engine | `GridMaker.reconcileGrid()`、`GridLevel` 状态机、并发安全检查;Router 支持 `modify`/批次撤单;Metrics:`grid_pending_levels`, `grid_incremental_rate`, `grid_modify_failures`;降级开关 `grid.incremental_mode` | 交易所不提供原生 `modify` 时,需要定义 `cancel+place` 原子操作;需先落地 Gateway 线程安全队列 | 完成后先灰度单实例,确保 fallback 正常 |
+| 2 | Placement Throttling 2.0 | WS gateway 令牌桶、批次发送结构;全局节流配置(burst、refill、maxQueueDepth);告警阈值:`placement_latency_p95`、`order_gateway_queue_depth` | 依赖 Workstream 1 的批次 API;需要针对 maker / hedger / 内外圈账号设置不同 burst | 产出运维 Playbook:burst 超限时如何调参或降级 |
+| 3 | Fill-driven Tightening |  新增指标:`fill_count_tick`, `avg_fill_interval`, `no_fill_duration`; 策略:连续 N tick 无成交→临时压缩步长(因子 α)、提升 `min_layers`、或缩小 `grid_range_bps`;成交恢复 → 退回 | 依赖 Workstream 2 的稳定节流,防止压缩后爆限流;需要与风险/对冲协同调整阈值 | 同步更新 `config.yaml` schema (`adaptive.fill_starvation_threshold`, `fill_compression_factor`) 以及 config reference |
+| 4 | Multi-instance Fleet Manager | `grid.instances[]` 配置;`GridFleetManager` 生命周期管理(启动、更新、停用);跨实例 STP/限流整合;实例级指标 (per account/symbol) | Workstream 1–3 提供基础能力,否则多实例会放大问题;可能需要引入新的 config loader | 提供 CLI/REST 操作 (`fleet:list`, `fleet:scale`, `fleet:degrade`) 与审计记录 |
+| 5 | Extreme Micro-grid Sandbox | 设立测试配置 `config/micro_grid_extreme.yaml`;实验 1–2 bps 步长 + 0–1 bps cushion 的限流曲线;自动回滚脚本 | 需完成 Workstream 2 的节流以及 Workstream 3 的成交压缩,以防实盘崩溃 | 第一阶段仅在测试网运行,收集 RPC RTT、post-only 成功率、成交分布 |
+| 6 | Documentation & Runbook | 更新 `CONFIG_REFERENCE`, `OPERATIONS_PLAYBOOK`, `README` 示例;新增“增量模式调参”、“多实例扩缩容”、“无成交压缩”章节;Prometheus/Grafana dashboards | 需等以上工作流产出接口与指标后同步 | 标准化金丝雀流程,提供回滚 checklist |
+
+### Implementation Notes
+- **优先级建议**:先完成 Workstream 1 & 2 打牢基础(局部改单、节流),再处理 fill-driven & multi-instance 联动;最后做极限模式实验。  
+- **风险控制**:任何自动压缩策略必须设置硬性下限(步长 ≥ 1 bps;累计压缩次数/幅度在窗体内受限),避免造成自激振荡。  
+- **测试策略**:  
+  1. 单实例回归测试:模拟不同波动与成交场景,验证 `reconcileGrid()` 不会错删订单。  
+  2. 多实例压测:分别对内圈/外圈实例注入延迟、限流,观测节流与降级行为。  
+  3. 极限模式灰度:只在测试环境或小资金账号运行,记录限流情况,验证回滚脚本。  
+- **运维对接**:在 Playbook 中明确“如何判断增量模式失效”、“如何启用/关闭 fill-driven 压缩”、“多账户实例差异化策略(内圈挂更紧、外圈更宽)”等操作步骤。