跳到主要内容

DH-WP-001 S1 信源画像与质量初评规则

0. 文档元信息

说明
消费者Data Horizon 后台(信源管理)、Trading Matrix(虚拟交易员/策略/回测输入)、运营复核
触发条件S0 baseline 被 TM 试消费确认信源有价值,进入动态画像与质量初评阶段
目标对 DH 监听的职业交易员/分析师(名册动态变化)建立一套动态评估机制:从静态信息 + 历史观点/策略信号/实盘信号中,动态构建画像与输入质量评估,供 DH 查看管理、并满足生态(当前 TM)需求
设计评审本方案经金融专业性 + 工程可行性双重评审后定稿(v2);评审纳入项见 §9
跨系统契约G 组绩效由 TM 回测回填,归属/接口/口径见 TM 画像交接与回填契约
工程仓对照data-horizon:dn_source_signal / dn_source_profile / dn_source_metrics / dn_source_perf / dn_source_profile_override(B 阶段落地)

本文定义 S1 阶段信源画像字段字典、质量初评 rubric、处理管线与运行模式。两份外部参考(Trading_KOC 身份/信号字段、Trading_KOC_Type 6 象限分类)为设计参考,非照搬对象;凡文本不可靠派生或绩效耦合的维度,降级为低置信代理或划归 TM。


1. 定位与红线

  • DH 只评 信息源输入质量与可用性(描述性 + 可解析性 + 可靠性);绝不评绩效/盈利
  • 胜率 / 盈亏比 / 回撤 / 已实现风格漂移 / 期望值等需真实成交结果的指标 → TM 回测回填(G 组,独立表,nullable)。两套分数严格分离(工作包风险控制 #1)。
  • 运营层防泄漏:信源消息含事后回报(Realized R/RPnL、"已平仓")。逐消息打 msg_kind质量字段(C/E 组)只消费 ex-ante 的 trade_intent,事后回报不喂 DH 任何质量评分。
  • KOL 自报战绩(如"77胜16负"):单列、unverified、不计质量、不等同 G;序列化给 TM 时标志不可剥离。
  • 一切自动派生值带 置信度 + 证据 sample_id + 人工复核位,可审计、可人工覆盖、可版本化。

2. 设计原则

  1. 先分类再画像,且分类是分布非标量class_mix{signal_pct, analyst_pct, community_pct}(由逐消息 signal_clarity 聚合),primary_class = argmax(UI 便利、派生非权威)。解决"真实源同时是信号+分析+闲聊、单枚举全塞 MIXED"。
  2. "可结构化为可回测信号"是 TM 核心入参轴——逐消息刻画齐备率/可解析等级,再聚合。
  3. 风险披露是交易台第一问:单列 gives_stop_loss + discloses_risk_sizing + discloses_leverage
  4. 输入质量与已实现绩效解耦,且操作上以 ex-ante/ex-post 分流强制隔离。
  5. 不可靠派生项降级、中性命名、低置信(如加仓性质"马丁/金字塔"严格判别需成交序列 → 归 TM)。
  6. 正交轴不可合并:结构干净 ≠ 商业可信;信心语气 ≠ 点位精度;对冲 ≠ 两可。

3. 字段字典(8 组)

来源:NLP(文本派生)/ DATA(数据派生)/ TM(回测回填)/ HUMAN。阶段:C1 逐消息 / C2 聚合 / S 摘要 / DATA。

A 身份与静态

source_id裸 bigint 为 join 键cs_{id} 仅展示)· display_name · kol_id/kol_name · platform · external_ref · class_mix{signal/analyst/community %}(C2) · primary_class(argmax) · market_scope(json 多值) · instrument_type(json 多值) · primary_language · commercial_solicitation(none/low/med/high;正交轴,高则压质量档+抬 needs_review)(S) · first_seen/last_active(DATA,存 UTC+8,API 出 Unix-UTC)

B 方法与风格(S 摘要,带置信)

字段取值
time_horizonscalping / intraday / swing / position / multi_horizon / unclear
method_tags(json 多值)price_action / chart_patterns / indicators / elliott_wave / macro_fundamental / on_chain / wyckoff / quant / discretionary / other
directional_biasfloat -1..+1 + label(long/short/two_way/market_neutral/neutral)
trade_structureoutright / hedged / pairs_relative_value / spread / unclear
entry_timing_styledip_buyer(左/≈反转) / breakout_follower(右/≈趋势) / both / unclear(日内趋势 vs 反转的事前意图由此恢复)
position_mgmt_hintflat_risk / scales_in_dips / pyramids_winners / unclear(中性·低置信;严格判别归 TM)
gives_stop_lossalways / often / sometimes / rarely / unknown(信号源但证据不足) / na(非信号源)
discloses_risk_sizingalways / often / sometimes / never
discloses_leverageyes / no / unclear
conviction_language0..1(确定性语气;与 specificity 正交)
articulates_rr_thesis0..1(事前 R/R 论证频率;≠ 已实现 R/R,后者属 G)
mechanically_verifiable_logicbool(指标/形态/裸K=可机械验证→TM 可自动复盘;宏观/主观=不可证伪→走情绪因子)

C 信号结构与可解析性(C1 逐消息 → C2 聚合,TM 核心)

字段取值
signal_clarityexplicit_command / conditional / directional_view / commentary_only / chatter / non_actionable
fields_present_rate{symbol,direction,entry,stop,target} 各 0..1(C2)
structure_completeness0..1
parseabilitymachine_parseable / semi_nlp / manual_only / none(机器视角,与 clarity 语义视角可分离)
levels_styleexact_point / zone / mixed(对 TM 回测可用性比 specificity 更重要)
signal_specificityhigh / medium / low(按精确数值点位数,DATA 检查)

D 活跃与节奏(全 DATA/SQL,不走 LLM)

post_cadence_per_week(群聊注明全员聚合)· signal_cadence_class(high_freq≥~20/wk 有效信号 / standard / sniper≤~3/wk / dormant;按信号非发帖capture_latency_p50_ms = UNIX_TIMESTAMP(created_at) − source_timestamp + latency_coverage% · is_dormant · active_window

E 输入质量与可靠性(复合,非绩效;见 §4 rubric)

input_quality_tier A/B/C/D · 子项(各标来源):sub_clarity(C2) · sub_structure(C2) · sub_specificity(C2) · sub_risk_disclosure(B) · sub_signal_density(C2) · sub_noise(C2) · text_self_consistency(C2:窗口内"说的 vs 发的"方向矛盾,排除声明的对冲/换挡)· sub_method_consistency(S,低置信) · reliability_flags(json)

F 自报与未核验(S,flagged)

self_reported: json{wins,losses,raw_text,as_of_msg_id,unverified:true} · promotional_intensity(高/中/低) · paywall_signal(bool)

G 绩效(TM 回填,独立表 dn_source_perf,DH 只读)

historical_win_rate / rolling_win_rate_7d / profit_factor / max_drawdown / realized_style_drift / expectancy / backtest_window — DH 只供 C 组结构化信号 + capture_latency 作回测输入。详见 TM 契约

H 治理

profile_confidence · evidence_sample_ids(json,来自 dn_source_signal 行) · data_sufficiency(rich/moderate/limited/dormant/no_data) · needs_review · review_status(unreviewed/human_confirmed/human_adjusted) · window_spec · profile_version/generated_at/gen_model · 人工覆盖走独立 dn_source_profile_override 表(读时覆盖 auto,重算永不触碰)


4. 质量初评 Rubric(E → tier,写死,跨批一致)

primary_class 分别评(信号源/分析师不同权重;COMMUNITY 默认 D,仅作语料/情绪)。子项归一 0..1,加权汇总 Q

子项SIGNAL_PROVIDER 权重ANALYST 权重
sub_structure(齐备率)0.300.10
sub_clarity0.200.20
sub_risk_disclosure(止损+风险披露)0.200.10
text_self_consistency0.150.25
sub_signal_density0.100.15
conviction / articulates_rr(事前论证质量)0.050.20
sub_noise以 (1−noise) 作乘性折扣

Q → tier:A ≥0.80 / B 0.60–0.80 / C 0.40–0.60 / D <0.40

硬约束(覆盖分数)

  • commercial_solicitation=high → tier 上限 C 且 needs_review=1;
  • gives_stop_loss∈{rarely,unknown} 且 class=SIGNAL_PROVIDER → 上限 C(呼应"无止损单"安全红线);
  • data_sufficiency∈{limited,dormant,no_data} → tier 置空 + needs_review。

rubric 权重为初版,需运营人工标定后冻结为 s1-v1


5. 处理管线(两阶段)

  • Stage C1 逐消息抽取(增量、append-only):每条 dn_raw_news 抽 → dn_source_signal 一行:msg_kind(intent/report/commentary/chatter)、has_{symbol,direction,entry,stop,target}、direction、signal_clarity、parseability、price_levels_count、published_ts、latency_ms。新消息到达即增量跑,永不重读历史。
  • Stage C2 聚合(确定性 SQL):C 组齐备率/结构完整度/clarity 分布、D 组节奏/延迟、text_self_consistency(方向序列矛盾)全部 SQL 算出。
  • Stage S 摘要(LLM):仅 A.分类、B 方法风格、E 质性子项、F 自报。
  • LLM 调用走 dn_llm_call_log(需注册画像 pseudo-agent)。

6. 运行模式(首跑全量 · 动态刷新 · 后台集成)

6.1 动态名册同步(机制核心,非一次性)

名册 = dn_crawler_source 中 social + 绑定 kol_id 候选(当前 136,未来动态增减)。roster_sync 步骤定期 diff 候选集:新源入队首跑、停用源标 inactive 留历史画像、恢复源增量续跑;画像随源生命周期版本化留痕。

6.2 首跑 = 全量历史深度分析(不分活跃与否)

首次运行对每个职业交易员/分析师(含静默源,如 90d=0 但全量数万条)做全量历史逐消息抽取 + 全历史摘要。大源用 map-reduce 分块摘要(按时间分块 → 每块 LLM 偏摘要 → reduce 汇总)控 context/成本。数据充足度据全量判定;静默源标 is_dormant 但画像基于历史完整产出。

6.3 后续 = 增量刷新

C1 仅处理新消息;摘要在"≥K 新信号 / 周期"触发时基于"近窗 + 上版画像"增量更新;D 组高频原地覆盖。

6.4 后台集成(DH 管理后台)

画像查看/筛选/排序页(按 class / 质量档 / 市场 / 风格 / 活跃度);来源详情页嵌画像卡(A–F + 证据 + 置信 + G 组 TM 回填只读);人工复核由 override 表驱动(逐字段 confirm/adjust,读时取胜,review_status 流转);支持手动「重算此源画像」与首跑/刷新进度展示。


7. 落库(5 表,按 owner 与变更率拆分)

内容特性
dn_source_signalC1 逐消息信号(证据锚)append-only,增量
dn_source_profileA/B/E + 聚合 C + H慢变,版本化快照
dn_source_metricsD 活跃节奏高频,原地覆盖
dn_source_perfG 绩效TM 独写,DH 只读
dn_source_profile_override人工覆盖读时取胜,重算永不触碰

多值/证据用 json 列(对齐 repo 既有 subjects/tags/market)。serving = profile(latest) ⟕ metrics ⟕ perf ⟕ override,override 序列化时取胜。


8. 待确认 / 开放项

  1. 讨论群无单一作者(如熬鹰、yekoi):信号归属 / 是否按 author 切分。
  2. image/bot 生成行(空内容 + [Image Analysis])的排除规则。
  3. rubric 权重人工标定后冻结。
  4. 枚举回灌 TM:COMMUNITY 第三类、method_tags(on_chain/wyckoff/quant)、levels_style、trade_structure(见 TM 契约 §5)。

9. 评审纳入项(双 sub-agent)

评审处理
逐消息 vs 摘要混淆拆 Stage C1/C2/S + dn_source_signal
时区(UTC+8 vs Unix)latency = UNIX_TIMESTAMP(created_at) − source_timestamp;datetime 标 UTC+8;API 出 Unix-UTC
分类过硬class_mix 分布
单表混慢/快/TM/人工拆 5 表 + override 结构不变量
全量窗口成本增量抽取 + 首跑 map-reduce 分块
rubric 缺失§4 写死
绩效运营泄漏ex-ante/ex-post msg_kind 分流
带单营销源commercial_solicitation 正交轴压档
漏字段补 risk_sizing/leverage/rr_thesis/conviction/trade_structure
噪声地板 / 一致性定义signal_clarity 加 chatter;internal→text_self_consistency 窄义