feat(market): Phase 1 扩展 — 更多 symbol + Bollinger/Vegas + 衍生品信号
- collector.symbols 与 supportedSymbols 加 SOL/BNB/DOGE,env-default 与 README 同步 - entity 追加 TechnicalStructure.Intervals(每周期 Bollinger + Vegas,omitempty 不破坏既有字段)与 DerivativesBundle.Signal - 新增纯解析 usecase derivatives_signal.go:fundingBias 绝对阈值、oiSignal 用 P20 baseline + 价格方向(OI up + 价格 up/down → long/short_building,funding 不参与方向)、lsrRegime 绝对阈值;signal 数据不足走 warnings 进 DataQuality - indicator.go 加 sma/stddev/ema/bollinger/vegas + computeIntervalTechnicals;IndicatorComputer 签名收 klines map - harness 同步:G12 扩入 derivatives_signal.go(含 Makefile G12.5/6 + ADR-0002 适用范围 + project-map / harness-health 更新)
This commit is contained in:
@@ -3,7 +3,7 @@
|
||||
**状态**:Accepted
|
||||
**日期**:2026-05-24
|
||||
**决策者**:项目维护者
|
||||
**适用范围**:`internal/usecase/indicator.go` 及其后续衍生指标实现
|
||||
**适用范围**:`internal/usecase/indicator.go`、`internal/usecase/derivatives_signal.go` 及其后续同形态的纯解析 usecase 实现
|
||||
|
||||
---
|
||||
|
||||
@@ -33,10 +33,11 @@ Milestone 6 引入技术指标计算(pivot S/R、percentile range、LSR 穿越
|
||||
|
||||
边界规则:
|
||||
|
||||
- `float64` **只**出现在 `internal/usecase/indicator.go` 内部
|
||||
- 进入 `entity.TechnicalLevel` / `entity.TechnicalStructure` 前必须 `strconv.FormatFloat(f, 'f', -1, 64)` 转回 string
|
||||
- `float64` **只**出现在 `internal/usecase/indicator.go`、`internal/usecase/derivatives_signal.go` 等"纯解析 usecase 文件"内部
|
||||
- 进入任何 entity 字段(TechnicalLevel / TechnicalStructure / DerivativesSignal 等)前必须 `strconv.FormatFloat(f, 'f', -1, 64)` 转回 string;类别型字段(如 `crowded_long`)用 string 字面量
|
||||
- entity / DTO / persistence / transport 全部保持 string(不变)
|
||||
- 任何其它 usecase 文件出现 `float64` 视为违规
|
||||
- 新增同形态文件时:必须同步扩 Makefile 的 G12.1 白名单与 G12.5/6 子规则
|
||||
|
||||
这是 `ai/risk-guardrails.md` **G2 例外条款**("纯统计/分析(如指标计算的中间过程)可以用 float64,但结果落库或返回 API 时必须转回 string")的具体落地。守卫 G12 把这条例外细化成可机械验证的命令。
|
||||
|
||||
|
||||
Reference in New Issue
Block a user