---
name: 组合决策
description: 当用户要求“组合决策”“给出最终仓位”“整合分析结论”“输出交易决策”或“形成组合操作方案”时，应使用此技能。
version: 1.0.0
---

# 组合决策

当用户需要把团队分析转化为最终交易决策时，使用这个技能。

## 1) When to use

- 适用于“最终下单前”的收口阶段：将多方观点转成单一可执行指令。
- 必须在获取分析师观点与风险审查后触发，不应跳过上游输入。
- 当任务只要求研究观点、未要求执行决策时，不强制触发。

## 2) Required inputs

- 最少输入：`analyst_signals`、`risk_warnings`、`portfolio_state`、`cash`、`margin_requirement`、`prices`。
- 推荐输入：会议共识摘要、历史表现偏差、当前组合拥挤度。
- 若缺失关键执行约束（现金/保证金/价格），应降级为“条件决策草案”，不可直接给激进仓位。

## 3) Decision procedure

1. 汇总并比较 analyst 信号，识别共识与分歧。
2. 将风险警示映射到仓位上限与禁开条件。
3. 在资金与保证金约束下，为每个 ticker 生成候选动作与数量。
4. 对冲突信号执行保守仲裁：降低仓位、提高触发门槛或改为 `hold`。
5. 逐个 ticker 记录最终决策，并给出组合级理由。

## 4) Tool call policy

- 必须使用决策工具记录每个 ticker 的最终 `action/quantity`。
- 在讨论阶段如发现当前团队能力不足，可使用团队工具动态创建或移除 analyst（再继续讨论）。
- 若风险工具提示阻断项，优先遵循阻断，不得绕过。
- 工具调用失败时：重试一次；仍失败则输出结构化“未完成决策清单”和人工处理建议。

## 5) Output schema

- `decisions`: 每个 ticker 的 `{action: long|short|hold, quantity, confidence, reasoning}`
- `portfolio_rationale`: 组合层面的配置逻辑与取舍依据
- `constraint_check`: 资金、保证金、集中度是否满足
- `conflict_resolution`: 对信号冲突的处理说明
- `pending_items`: 未决事项与补充数据需求（若有）

## 6) Failure fallback

- 当分析师信号与风险结论显著冲突时，默认采用更小仓位或 `hold`。
- 当约束校验失败（现金/保证金不足）时，自动下调数量，不输出不可执行指令。
- 当任务要求完整清单时，不允许遗漏 ticker；无法决策时必须显式标记 `hold` 并说明原因。
