alphacouncil-agent 0.9.2 → 0.9.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude/commands/alpha.md +22 -3
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/.codex-plugin/plugin.json +1 -1
- package/.grok/commands/alpha.md +22 -3
- package/.opencode/command/alpha.md +22 -3
- package/AGENTS.md +27 -4
- package/CHANGELOG.md +67 -0
- package/CLAUDE.md +41 -7
- package/README.ja.md +21 -11
- package/README.md +35 -11
- package/README.zh-CN.md +31 -11
- package/commands/alpha.md +22 -3
- package/data/build-profile.v1.json +1 -1
- package/data/master-selector-method-locales.v1.mjs +286 -0
- package/docs/INSTALL.md +43 -6
- package/docs/releases/v0.9.3.md +86 -0
- package/docs/releases/v0.9.4.md +79 -0
- package/docs/report-contract.md +50 -1
- package/knowledge/ai-assisted-solo/experiments/runs/a.json +4 -4
- package/knowledge/ai-assisted-solo/experiments/runs/b.json +2 -2
- package/knowledge/ai-assisted-solo/experiments/runs/c.json +2 -2
- package/knowledge/ai-assisted-solo/experiments/runs/d13.json +16 -16
- package/knowledge/ai-assisted-solo/experiments/runs/d26.json +29 -29
- package/knowledge/ai-assisted-solo/experiments/runs/e-d13.json +19 -19
- package/knowledge/ai-assisted-solo/experiments/runs/e-d26.json +32 -32
- package/knowledge/ai-assisted-solo/experiments/runs/h_ai_reference.json +33 -33
- package/knowledge/ai-assisted-solo/experiments/simulation-input.json +79 -79
- package/knowledge/ai-assisted-solo/experiments/simulation-manifest.json +19 -19
- package/knowledge/solo-test/masters/master_ackman/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_aschenbrenner/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_asness/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_buffett/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_burry/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_cathie_wood/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_dalio/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_damodaran/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_druckenmiller/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_duan_yongping/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_fisher/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_forensic_short/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_graham/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_jhunjhunwala/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_klarman/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_li_lu/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_lynch/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_marks/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_munger/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_natenberg/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_pabrai/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_simons/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_sinclair/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_soros/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_taleb/manifest.json +14 -4
- package/knowledge/solo-test/masters/master_thorp/manifest.json +14 -4
- package/mcp/lib/codex.mjs +3 -3
- package/mcp/lib/constants.mjs +61 -25
- package/mcp/lib/council-options.mjs +95 -40
- package/mcp/lib/council-selection.mjs +95 -9
- package/mcp/lib/gates.mjs +78 -11
- package/mcp/lib/lang.mjs +109 -2
- package/mcp/lib/markdown.mjs +444 -135
- package/mcp/lib/master-catalog.mjs +28 -3
- package/mcp/lib/orchestrator.mjs +952 -265
- package/mcp/lib/packets.mjs +173 -20
- package/mcp/lib/personas/engine.mjs +30 -30
- package/mcp/lib/personas-v3/compiler.mjs +2 -0
- package/mcp/lib/personas-v3/loader.mjs +10 -7
- package/mcp/lib/personas-v3/source-acquisition.mjs +10 -3
- package/mcp/lib/prompts.mjs +33 -0
- package/mcp/lib/rpc.mjs +75 -33
- package/mcp/lib/run-store.mjs +23 -0
- package/package.json +2 -2
- package/schemas/persona-v3.schema.json +37 -2
- package/scripts/lib/packaged-host-parity.mjs +54 -5
- package/scripts/lib/persona-v3-solo-test-packs.mjs +31 -5
- package/scripts/package-smoke.mjs +31 -12
- package/scripts/run-tests.mjs +23 -2
- package/skills/alphacouncil-agent/SKILL.md +50 -7
package/README.md
CHANGED
|
@@ -59,6 +59,7 @@ AlphaCouncil Agent is a Codex and Claude Code plugin for public-equity research
|
|
|
59
59
|
| 🏛️ **A council, not one opinion** | Eight specialist analysts by default, eleven available — market data, earnings, forward expectations, quant, valuation, news and supply chain, insider/SEC, IB events, macro, narrative, crowding. |
|
|
60
60
|
| 🎭 **26 selectable investor lenses** | Buffett, Munger, Graham, Lynch, Marks, Damodaran, Ackman, Cathie Wood, Pabrai and more read the **same facts** through different stated research priorities. Every council run shows all 26 with actual maturity before research. Full accepts any non-empty selection or `all`; quick requires 1-4 and rejects `all`. |
|
|
61
61
|
| 🐂🐻 **Adversarial by design** | Full runs a three-round bull/bear cross-exam and the visible/deep path can add three adversarial verifiers. Quick runs one parallel bull/bear statement round and a short PM; it checks scoped source IDs but explicitly does not claim adversarial verification. |
|
|
62
|
+
| ⏱️ **Bounded full headless run** | Plugin-managed full starts all eight analysts together, runs Bull/Bear together inside each round, and persists a terminal run within 30 minutes. Provider failures produce an explicit `incomplete` result, never silently missing seats. |
|
|
62
63
|
| 🔍 **Auditable, never hallucinated** | Every claim maps to a source ID. A screen rule with missing inputs is `skipped`, never a pass. An undated headline is excluded, not shown as recent. Gaps are a section, not an omission. |
|
|
63
64
|
| 💰 **Entry price bands, not one number** | Three conditional bands with what each depends on. "The cycle position is undetermined" changes what the bands are conditional on; it does not excuse leaving them out. |
|
|
64
65
|
| 🔑 **31 tools, zero API keys, zero dependencies** | SEC EDGAR, CBOE options, Yahoo/Stooq quotes, 21 macro series, news and social — all keyless. `node mcp/server.mjs` and nothing else. |
|
|
@@ -66,17 +67,18 @@ AlphaCouncil Agent is a Codex and Claude Code plugin for public-equity research
|
|
|
66
67
|
|
|
67
68
|
This repository is the uploadable source copy. Runtime outputs are written outside the repo under `~/.alphacouncil-agent/runs/<run_id>/`.
|
|
68
69
|
|
|
69
|
-
## Current 0.9.
|
|
70
|
+
## Current 0.9.4 preview status: non-GA solo-test
|
|
70
71
|
|
|
71
|
-
Version `0.9.
|
|
72
|
-
|
|
72
|
+
Version `0.9.4` is a GitHub prerelease. This acceptance release does not publish npm or
|
|
73
|
+
change npm dist-tags; verify npm separately before assuming `@next` contains 0.9.4. It is a
|
|
74
|
+
bounded council-runtime preview, **not** formal production GA. The build channel remains
|
|
73
75
|
`solo_test`: 26 physical PersonaPack v3 packs, 52 executable
|
|
74
76
|
`provisional_derived_proxy` tools, and 26 provisional `operator_lens` seats. Operational
|
|
75
77
|
seats: **0**; validated `method_model` seats: **0**; human source/formula approvals and
|
|
76
78
|
approval signatures: **0**.
|
|
77
79
|
|
|
78
80
|
The production loader still rejects this tree, and production assembly, cutover and GA stay
|
|
79
|
-
fail-closed. See [the v0.9.
|
|
81
|
+
fail-closed. See [the v0.9.4 release contract](docs/releases/v0.9.4.md) for the exact full/quick
|
|
80
82
|
boundary and [the report contract](docs/report-contract.md) for `quick_v1` versus `full_v2`.
|
|
81
83
|
|
|
82
84
|
## 📜 Disclaimer
|
|
@@ -134,7 +136,9 @@ VERDICT: Overweight (confidence: medium)
|
|
|
134
136
|
|
|
135
137
|
The concise handoff is written to `~/.alphacouncil-agent/runs/<run_id>/user_response.md`.
|
|
136
138
|
The full report is written to `~/.alphacouncil-agent/runs/<run_id>/final_report.md`,
|
|
137
|
-
with analyst Markdown files and `artifact_index.md` in the same run directory.
|
|
139
|
+
with analyst Markdown files and `artifact_index.md` in the same run directory. Full handoff
|
|
140
|
+
shows the system quote (or an explicit quote-data gap), all eight analyst statuses/summaries,
|
|
141
|
+
and every selected method seat's frozen stance plus isolated-worker explanation/status.
|
|
138
142
|
|
|
139
143
|
### Slash commands
|
|
140
144
|
|
|
@@ -143,7 +147,7 @@ rather than four in a menu of a hundred.
|
|
|
143
147
|
|
|
144
148
|
| Invocation | What runs | Model spend |
|
|
145
149
|
|---|---|---|
|
|
146
|
-
| `/alpha <ticker>` | Shows every master, confirms `1..N`/ranges/`all`, then
|
|
150
|
+
| `/alpha <ticker>` | Shows every master, confirms `1..N`/ranges/`all`, then full; plugin-managed headless is ≤30m | deterministic stance + one isolated voice worker per selected v3 seat |
|
|
147
151
|
| `/alpha <ticker> quick` | Shows all 26, confirms 1-4 (no `all`), then plugin-managed `quick_v1` (≤10m) | varies with selection |
|
|
148
152
|
| `/alpha <ticker> screen` | Mechanical filings screen only | **none** |
|
|
149
153
|
| `/alpha <ticker> options` | IV term structure, skew, positioning | **none** |
|
|
@@ -161,6 +165,26 @@ show the catalog and confirm a fresh, one-use, mode-bound receipt before researc
|
|
|
161
165
|
Any listed equity: `/alpha AAPL` · `/alpha 0700.HK quick` · `/alpha 7203.T news` · `/alpha market rates`.
|
|
162
166
|
Filings-based modes need a US filer; other markets are reported through `market_coverage` rather than silently returning nothing.
|
|
163
167
|
|
|
168
|
+
### Full v2 — 30-minute plugin-managed bound
|
|
169
|
+
|
|
170
|
+
Plugin-managed headless `analyze_symbol(council_mode="full")` uses one global maximum of
|
|
171
|
+
**1800000 ms** from durable queueing through terminal artifact persistence. All eight
|
|
172
|
+
mandatory evidence workers start in one parallel wave. After the evidence barrier, each
|
|
173
|
+
selected physical v3 method freezes its deterministic stance and gets one isolated voice
|
|
174
|
+
worker that can explain, but cannot change, that result. Bull and Bear run in parallel within
|
|
175
|
+
each of the three rounds, with a barrier between rounds, followed by the PM.
|
|
176
|
+
|
|
177
|
+
At expiry the server persists `incomplete` with every timed-out, failed and skipped role.
|
|
178
|
+
Thirty minutes is a terminal-persistence guarantee, not a promise that search, model
|
|
179
|
+
transport or data providers will let every seat succeed. A visible-host `plan_visible_run`
|
|
180
|
+
is scheduled outside the plugin and cannot be force-stopped, so it has no 30-minute claim.
|
|
181
|
+
|
|
182
|
+
The resulting full handoff names every selected stable master ID and all eight analysts, and
|
|
183
|
+
includes a system-owned price snapshot or explicit unavailable-data record. Method-seat
|
|
184
|
+
voice is a recorded provisional lens explanation, not a quote, endorsement or current
|
|
185
|
+
statement by the named person. System-owned output supports Chinese (`zh-CN`), English,
|
|
186
|
+
Japanese and Korean; each worker receives the run language.
|
|
187
|
+
|
|
164
188
|
### Quick v1 — bounded, not full
|
|
165
189
|
|
|
166
190
|
Quick is never inferred from impatience or a full-run failure. It runs only through the
|
|
@@ -259,7 +283,7 @@ failure mode** — a seat that cannot name how it goes wrong will not flag it wh
|
|
|
259
283
|
| Modern | Aschenbrenner |
|
|
260
284
|
| v3 expansion | Damodaran · Ackman · Cathie Wood · Pabrai · Jhunjhunwala |
|
|
261
285
|
|
|
262
|
-
The 0.9.
|
|
286
|
+
The 0.9.4 `solo_test` catalog has 26 selectable physical v3 packs, but **26 physical packs is
|
|
263
287
|
not 26 approved method models**. Every seat is a provisional `operator_lens` backed by
|
|
264
288
|
project-derived proxy material; the 52 tools are executable test proxies, not human-approved
|
|
265
289
|
formula attribution. Operational and `method_model` counts are both zero, and production GA
|
|
@@ -324,16 +348,16 @@ For full council, both editions share the same workflow, JSON packet contract, a
|
|
|
324
348
|
|
|
325
349
|
| | Codex edition | Claude Code edition |
|
|
326
350
|
|---|---|---|
|
|
327
|
-
| Council execution | `codex exec` workers
|
|
351
|
+
| Council execution | plugin-managed `codex exec` workers; full headless ≤30m | Host-owned `Task` subagents; no plugin-enforced deadline |
|
|
328
352
|
| Quick `quick_v1` | Plugin-managed headless `analyze_symbol` | Same plugin-managed headless `analyze_symbol` |
|
|
329
353
|
| Per-analyst context | Separate process | Separate subagent, full isolated context window |
|
|
330
354
|
| Evidence | `codex exec --search` | `WebSearch` + `WebFetch` in each analyst's own context |
|
|
331
|
-
| Evidence → debate |
|
|
332
|
-
| Debate depth | 3 rounds (case / rebuttal / Q&A),
|
|
355
|
+
| Evidence → debate | Eight-role parallel wave, then hard barrier | Hard barrier on the run's phase machine |
|
|
356
|
+
| Debate depth | 3 rounds (case / rebuttal / Q&A), bull + bear parallel per round | 3 rounds, bull + bear in parallel per round |
|
|
333
357
|
| Claim verification | Missing-source gate (run flagged, report banner) | + per-claim adversarial verify: re-fetch cited URL, re-derive, refute *(host-driven)* |
|
|
334
358
|
| Full-run enforcement | Incomplete runs marked `incomplete` (server gate) | Same gate, plus a hard barrier before debate |
|
|
335
359
|
| Model & cost | One model | **Pick per role** — evidence on Sonnet, debate/verdict on Opus 4.8 (or all-Opus / all-Sonnet) |
|
|
336
|
-
| Language |
|
|
360
|
+
| Language | `zh-CN`/English/Japanese/Korean system copy; workers get run language | User's language across every subagent + the live workflow |
|
|
337
361
|
|
|
338
362
|
**Honest scope:** same model family, same prompts, same audit contract — the win is context isolation, always-on parallel fan-out, and deterministic gates, *not* a smarter model. As of **v0.3.0** the shared server runs the 3-round debate, enforces missing-source / full-run / report-quality gates, writes concise and full report artifacts, and supports native Windows Codex CLI launching. As of **v0.3.1**, the plugin also bundles `agent-skills-governance`, an `addyosmani/agent-skills`-style anti-laziness skill with explicit stop gates and exit criteria. The Claude Code edition adds parallel per-round execution and host-driven per-claim verification. Live-web staleness and paywalls limit both editions equally.
|
|
339
363
|
|
package/README.zh-CN.md
CHANGED
|
@@ -49,6 +49,7 @@ AlphaCouncil Agent 是一个面向**上市股票研究**的 Codex / Claude Code
|
|
|
49
49
|
|---|---|
|
|
50
50
|
| 🏛️ **是委员会,不是一家之言** | 完整模式默认 8 个证据席、最多 11 个;quick 固定 4 个并行证据席。两者都在研究前完整展示 26 个方法席。 |
|
|
51
51
|
| 🐂🐻 **天生对抗式** | 完整模式跑三轮多空交叉质询;quick 只跑一轮并行 Bull/Bear 陈述和短 PM,且明确不声称完成对抗 verifier。 |
|
|
52
|
+
| ⏱️ **完整 headless 有硬时限** | 插件托管 full 将 8 个分析师同波启动、每轮 Bull/Bear 同时启动,并在 30 分钟内保存终态;外部服务故障会明确 `incomplete`,不会静默漏席。 |
|
|
52
53
|
| 🔍 **可审计,不瞎编** | 每条结论都映射到 source ID;缺失数据写进「数据缺口」章节,绝不隐藏。 |
|
|
53
54
|
| ⏱️ **多周期结论** | 买入/持有/卖出,外加独立的 1-4 周、3-6 月、12 月判断。 |
|
|
54
55
|
| 🔑 **不依赖金融 API,无需任何密钥** | 不需要金融数据 API、行情源或券商账号。分析师通过代理自带的联网搜索实时取证(**Codex 网页搜索** / **Claude Code 的 WebSearch + WebFetch**),只消耗你已有的 Codex / Claude Code 订阅额度。MIT 开源。 |
|
|
@@ -57,16 +58,17 @@ AlphaCouncil Agent 是一个面向**上市股票研究**的 Codex / Claude Code
|
|
|
57
58
|
|
|
58
59
|
本仓库是可上传的源代码副本。运行产物写在仓库之外的 `~/.alphacouncil-agent/runs/<run_id>/` 下。
|
|
59
60
|
|
|
60
|
-
## 当前 0.9.
|
|
61
|
+
## 当前 0.9.4 预览状态:non-GA solo-test
|
|
61
62
|
|
|
62
|
-
`0.9.
|
|
63
|
-
`
|
|
63
|
+
`0.9.4` 是 GitHub prerelease;本次验收发布不执行 npm publish,也不改变 npm
|
|
64
|
+
dist-tag。不要在未独立核验时声称 `@next` 已包含 0.9.4。它是有界议会运行时预览,
|
|
65
|
+
**不是**正式生产 GA。构建渠道仍是 `solo_test`:26 个物理
|
|
64
66
|
PersonaPack v3 包、52 个可执行 `provisional_derived_proxy` 工具,以及 26 个 provisional
|
|
65
67
|
`operator_lens` 席位。`operational`:**0**;已验证 `method_model`:**0**;人工来源/公式
|
|
66
68
|
审批与审批签名仍为 **0**。
|
|
67
69
|
|
|
68
70
|
生产 loader 仍拒绝这套树,production assembly、cutover 与 GA 继续 fail-closed。精确的
|
|
69
|
-
quick 边界见 [v0.9.
|
|
71
|
+
full/quick 边界见 [v0.9.4 发布合同](docs/releases/v0.9.4.md),`quick_v1` 与 `full_v2` 的报告差异见
|
|
70
72
|
[报告合同](docs/report-contract.md)。
|
|
71
73
|
|
|
72
74
|
## 📜 免责声明
|
|
@@ -117,7 +119,9 @@ codex plugin marketplace add Zhao73/alphacouncil-agent
|
|
|
117
119
|
|
|
118
120
|
简洁交付摘要写入 `~/.alphacouncil-agent/runs/<run_id>/user_response.md`。
|
|
119
121
|
完整报告写入 `~/.alphacouncil-agent/runs/<run_id>/final_report.md`。
|
|
120
|
-
同一目录还会写入每个分析师的 Markdown 文件和 `artifact_index.md`
|
|
122
|
+
同一目录还会写入每个分析师的 Markdown 文件和 `artifact_index.md` 文件索引。完整模式的摘要
|
|
123
|
+
会显示系统价格(或明确的行情缺口)、8 个分析师的状态/摘要,以及每个所选方法席冻结的立场
|
|
124
|
+
和独立 worker 的解释/状态。
|
|
121
125
|
|
|
122
126
|
### 斜杠命令
|
|
123
127
|
|
|
@@ -125,7 +129,7 @@ codex plugin marketplace add Zhao73/alphacouncil-agent
|
|
|
125
129
|
|
|
126
130
|
| 输入 | 跑什么 | 额度消耗 |
|
|
127
131
|
|---|---|---|
|
|
128
|
-
| `/alpha <ticker>` |
|
|
132
|
+
| `/alpha <ticker>` | 逐人展示全部大师,确认后运行 full;插件托管 headless ≤30 分钟 | 每个所选 v3 席为确定性立场 + 一个独立 voice worker |
|
|
129
133
|
| `/alpha <ticker> quick` | 展示全部 26 席,确认 1-4 席(禁用 `all`),再跑插件托管 `quick_v1`(≤10 分钟) | 随选择数量变化 |
|
|
130
134
|
| `/alpha <ticker> screen` | 只跑机械筛选 | **零** |
|
|
131
135
|
| `/alpha <ticker> options` | 隐含波动率期限结构、偏斜、持仓分布 | **零** |
|
|
@@ -138,6 +142,22 @@ codex plugin marketplace add Zhao73/alphacouncil-agent
|
|
|
138
142
|
任何上市股票:`/alpha AAPL` · `/alpha 0700.HK quick` · `/alpha 7203.T news` · `/alpha market rates`。
|
|
139
143
|
基于申报的模式需要美国申报主体;其他市场会通过 `market_coverage` 说明覆盖情况,而不是静默返回空结果。
|
|
140
144
|
|
|
145
|
+
### Full v2 —— 插件托管 30 分钟硬上限
|
|
146
|
+
|
|
147
|
+
插件托管 headless `analyze_symbol(council_mode="full")` 从持久化 queued 状态到终态工件落盘,
|
|
148
|
+
全局硬上限为 **1800000 ms**。8 个必需证据席同波并行。证据门禁通过后,每个所选物理 v3
|
|
149
|
+
方法先运行确定性政策并冻结立场,再启动一个只属于该 stable ID 的独立 voice worker;它可以
|
|
150
|
+
解释立场,但不能改立场或补造 typed fact。三轮中每轮 Bull/Bear 同时启动,二者都完成后才
|
|
151
|
+
进入下一轮,最后才运行 PM。
|
|
152
|
+
|
|
153
|
+
时限到达时,系统以 `incomplete` 保存终态,并逐项列出超时、失败和跳过的席位。30 分钟保证
|
|
154
|
+
的是“必有可审计终态”,不是搜索、模型传输或数据源恶化时仍保证全席成功。visible-host 的
|
|
155
|
+
`plan_visible_run` 由外部宿主调度,插件无法强制终止其子代理,因此不享有这个硬时限。
|
|
156
|
+
|
|
157
|
+
full 的交付摘要必须列出全部所选 stable master ID、全部 8 个分析师,以及系统行情快照或
|
|
158
|
+
明确的不可用缺口。方法席 voice 是本次运行记录的 provisional lens 解释,**不是真人原话、
|
|
159
|
+
背书或当前观点**。系统文案支持中文 (`zh-CN`)、英文、日文、韩文,每个 worker 也接收本轮语言。
|
|
160
|
+
|
|
141
161
|
### Quick v1 —— 有界,但不等于完整议会
|
|
142
162
|
|
|
143
163
|
不会因为用户着急或完整运行失败就自动切换 quick。Quick 只能通过插件托管的 headless
|
|
@@ -224,7 +244,7 @@ Claude Code、OpenCode、Grok Build 装完即可用。Codex 的 prompts 是用
|
|
|
224
244
|
| 现代 | Aschenbrenner |
|
|
225
245
|
| v3 扩展 | 达莫达兰 · 阿克曼 · 凯茜·伍德 · Pabrai · 琼琼瓦拉 |
|
|
226
246
|
|
|
227
|
-
0.9.
|
|
247
|
+
0.9.4 `solo_test` 目录已有 26 个可选的物理 v3 包,但 **26 个物理包不等于 26 个已获批的
|
|
228
248
|
方法模型**。所有 26 席都只是 provisional `operator_lens`;52 个工具是可执行的
|
|
229
249
|
`provisional_derived_proxy` 测试代理,不是经过人工审批的公式归因。`operational` 与
|
|
230
250
|
`method_model` 数量均为 0,正式生产 GA 继续 fail-closed。
|
|
@@ -282,15 +302,15 @@ flowchart TD
|
|
|
282
302
|
|
|
283
303
|
| | Codex 版 | Claude Code 版 |
|
|
284
304
|
|---|---|---|
|
|
285
|
-
| 委员会执行 | `codex exec` worker
|
|
305
|
+
| 委员会执行 | 插件托管 `codex exec` worker;full headless ≤30 分钟 | 宿主调度 `Task` 子代理;插件无法强制时限 |
|
|
286
306
|
| 每个分析师上下文 | 独立进程 | 独立子代理,各自完整独立上下文窗口 |
|
|
287
307
|
| 取证 | `codex exec --search` | 每个分析师在自己上下文里用 `WebSearch` + `WebFetch` |
|
|
288
|
-
| 证据 → 辩论 |
|
|
289
|
-
| 辩论深度 | 3 轮(立论/反驳/问答)
|
|
308
|
+
| 证据 → 辩论 | 8 席同波并行后经过硬 barrier | 基于运行相位机的硬性 barrier 门控 |
|
|
309
|
+
| 辩论深度 | 3 轮(立论/反驳/问答),每轮多空并行 | 3 轮,每轮多空并行 |
|
|
290
310
|
| claim 验证 | 缺失来源门禁(运行被标记 + 报告横幅) | + 逐条对抗式验证:重抓引用 URL + 独立复核 + 反驳 *(宿主驱动)* |
|
|
291
311
|
| 完整度强制 | 残缺运行标 `incomplete`(server 门禁) | 同门禁,外加辩论前硬 barrier |
|
|
292
312
|
| 模型与成本 | 单一模型 | **按角色选** —— 取证用 Sonnet,辩论/裁决用 Opus 4.8(也可全 Opus / 全 Sonnet) |
|
|
293
|
-
| 语言 |
|
|
313
|
+
| 语言 | 中/英/日/韩系统文案;worker 使用本轮语言 | 每个子代理 + 实时 workflow 全程用户语言 |
|
|
294
314
|
|
|
295
315
|
**诚实边界:** 同模型家族、同提示词、同审计契约 —— 优势在于上下文隔离、始终并行展开、确定性门禁,**不是**更聪明的模型。自 **v0.3.0** 起,共享 server 会执行 3 轮辩论,强制执行「缺失来源 / 完整流程 / 报告质量」门禁,写出简洁交付摘要、完整报告和文件索引,并支持 Windows 原生 Codex CLI 启动。自 **v0.3.1** 起,插件内置 `agent-skills-governance`,提供 `addyosmani/agent-skills` 风格的防偷懒停止门禁和完成标准。Claude Code 版额外提供每轮并行执行和宿主驱动的逐条 claim 验证。联网数据的时效性与付费墙对两版限制相同。
|
|
296
316
|
|
package/commands/alpha.md
CHANGED
|
@@ -12,7 +12,7 @@ Request: **$ARGUMENTS**
|
|
|
12
12
|
| `$ARGUMENTS` looks like | Do this |
|
|
13
13
|
|---|---|
|
|
14
14
|
| *(empty)* | Print the mode table below and stop. Do not start a run. |
|
|
15
|
-
| a ticker alone, or a question | **Full council.** Go to "Full council" below. |
|
|
15
|
+
| a ticker alone, or a question | **Full council.** Go to "Full council" below. Plugin-managed headless has a hard 30-minute queue-to-terminal bound; visible-host execution does not. |
|
|
16
16
|
| ticker + `quick` | The plugin-managed headless `quick_v1` council: 4 fixed analysts, 1-4 selected methods, one parallel bull/bear round and a short PM inside a hard 10-minute ceiling. |
|
|
17
17
|
| ticker + `screen` | `screen_ticker` only. No language-model judgment, no subagents. |
|
|
18
18
|
| ticker + `options` | `get_options_chain` only. |
|
|
@@ -22,7 +22,7 @@ Request: **$ARGUMENTS**
|
|
|
22
22
|
When `$ARGUMENTS` is empty, print exactly this and stop:
|
|
23
23
|
|
|
24
24
|
```
|
|
25
|
-
/alpha <TICKER> full council — shows every master
|
|
25
|
+
/alpha <TICKER> full council — shows every master; headless run is bounded <=30m
|
|
26
26
|
/alpha <TICKER> quick quick_v1: 4 analysts incl. news + 1-4 masters + 1 parallel debate round (<=10m)
|
|
27
27
|
/alpha <TICKER> screen mechanical filings screen only (no model spend)
|
|
28
28
|
/alpha <TICKER> options IV term structure, skew, positioning (no model spend)
|
|
@@ -39,7 +39,9 @@ is and use `market_coverage`, rather than returning nothing.
|
|
|
39
39
|
|
|
40
40
|
Say plainly that the four marked modes call keyless data tools and spawn no subagents, so
|
|
41
41
|
they cost nothing beyond this turn. Council modes can launch model workers; selected method
|
|
42
|
-
seats
|
|
42
|
+
seats first complete deterministically (including recorded `out_of_scope`) and, on the
|
|
43
|
+
plugin-managed headless path, each selected v3 seat then gets one isolated voice worker that
|
|
44
|
+
may explain but cannot change the frozen stance. This is not the named person's real speech.
|
|
43
45
|
|
|
44
46
|
## Council selection gate — mandatory for full and quick
|
|
45
47
|
|
|
@@ -94,6 +96,23 @@ master-selection contract.
|
|
|
94
96
|
6. Full mode fails closed at the evidence barrier. If any mandatory evidence role still
|
|
95
97
|
fails after its bounded parse repair, do not spend more model calls on masters, bull/bear
|
|
96
98
|
or PM. Persist an `incomplete` run naming the failed evidence and skipped downstream roles.
|
|
99
|
+
7. For the hard runtime contract, call plugin-managed headless `analyze_symbol` once with
|
|
100
|
+
`council_mode:"full"`, `wait_for_completion:false`, the full-mode receipt and optionally
|
|
101
|
+
`total_timeout_ms` no greater than `1800000`. Poll the same durable `run_id` to terminal.
|
|
102
|
+
All eight mandatory evidence roles start in one wave; every selected v3 method gets a
|
|
103
|
+
frozen deterministic stance plus its own isolated voice worker; Bull/Bear run in parallel
|
|
104
|
+
within each of three rounds with a barrier between rounds; then the PM runs. Queueing,
|
|
105
|
+
retries and final persistence share the 30-minute clock. At expiry the saved run is
|
|
106
|
+
`incomplete`, never silently shortened or relabeled complete. This guarantees terminal
|
|
107
|
+
persistence, not all-seat success during search/model/data-provider degradation.
|
|
108
|
+
8. `plan_visible_run` is owned by the external host. The plugin cannot force-stop its Task
|
|
109
|
+
agents, so visible-host full must not be advertised as meeting the 30-minute deadline.
|
|
110
|
+
9. The terminal full handoff must include the system price snapshot (or explicit unavailable
|
|
111
|
+
gap), every selected stable master ID/stance/voice-worker explanation or failure, and all
|
|
112
|
+
eight analyst statuses and summaries. A method-seat explanation is a recorded provisional
|
|
113
|
+
lens output, never a quotation, endorsement or current statement by the named person.
|
|
114
|
+
System-owned labels support `zh-CN`, `en`, `ja` and `ko`; propagate the request language
|
|
115
|
+
to every worker.
|
|
97
116
|
|
|
98
117
|
## Quick mode — plugin-managed headless quick_v1
|
|
99
118
|
|
|
@@ -0,0 +1,286 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Human-reviewed selector-method copy for the two locales that are not present in the
|
|
3
|
+
* legacy persona corpus. These sentences describe what the provisional method seat does;
|
|
4
|
+
* they are not quotations, endorsements or claims about a named person's current view.
|
|
5
|
+
*/
|
|
6
|
+
export const MASTER_SELECTOR_METHOD_LOCALES = Object.freeze({
|
|
7
|
+
master_ackman: Object.freeze({
|
|
8
|
+
ja: "現状の単独価値と改善による付加価値を分けたうえで、法的に実行可能で、資金調達ができ、期限が明確な主体が、その変更計画を遂行できるか検証する。",
|
|
9
|
+
ko: "현상 유지 기준의 독립 가치와 개선으로 생기는 추가 가치를 분리한 뒤, 법적으로 실행 가능하고 자금 조달이 가능하며 기한이 명확한 주체가 변화 계획을 수행할 수 있는지 검증한다.",
|
|
10
|
+
}),
|
|
11
|
+
master_aschenbrenner: Object.freeze({
|
|
12
|
+
ja: "AIのスケーリング仮説について、計算資源、電力、設備投資、供給制約、普及時期を、市場価格に織り込まれた期待と結び付けて検証する。",
|
|
13
|
+
ko: "AI 확장 가설을 컴퓨팅 자원, 전력, 자본 지출, 공급 제약, 도입 시점과 시장 가격에 반영된 기대를 연결해 검증한다.",
|
|
14
|
+
}),
|
|
15
|
+
master_asness: Object.freeze({
|
|
16
|
+
ja: "リターンをバリュー、モメンタム、クオリティ、ベータ、セクター、混雑度へのエクスポージャーに分解し、残差リターンをアルファとみなす前に検証する。",
|
|
17
|
+
ko: "수익률을 가치, 모멘텀, 퀄리티, 베타, 섹터, 쏠림 노출로 분해한 뒤 잔여 성과를 알파로 간주할 수 있는지 검증한다.",
|
|
18
|
+
}),
|
|
19
|
+
master_buffett: Object.freeze({
|
|
20
|
+
ja: "理解可能な事業会社を、オーナー利益、持続的な競争優位、資本配分、および保守的な事業価値に対する価格から評価する。",
|
|
21
|
+
ko: "이해 가능한 사업을 소유주 이익, 지속 가능한 경쟁 우위, 자본 배분, 보수적으로 산정한 사업 가치 대비 가격을 통해 평가한다.",
|
|
22
|
+
}),
|
|
23
|
+
master_burry: Object.freeze({
|
|
24
|
+
ja: "一次資料と資本構成から出発し、構造的かつ機械的に検証可能なミスプライシングを探し、判断が早過ぎてもポジションを維持できるか検証する。",
|
|
25
|
+
ko: "1차 자료와 자본 구조에서 출발해 구조적이고 기계적으로 검증 가능한 오가격을 찾고, 진입이 너무 이른 경우에도 포지션을 유지할 수 있는지 검증한다.",
|
|
26
|
+
}),
|
|
27
|
+
master_cathie_wood: Object.freeze({
|
|
28
|
+
ja: "技術コスト曲線と普及率を、獲得可能市場、企業の取り分、ユニットエコノミクス、および明示的な5年後の評価分布につなげる。",
|
|
29
|
+
ko: "기술 비용 곡선과 도입률을 잠재 시장, 기업의 점유 몫, 단위 경제성, 명시적인 5년 가치평가 분포로 연결한다.",
|
|
30
|
+
}),
|
|
31
|
+
master_dalio: Object.freeze({
|
|
32
|
+
ja: "成長、インフレ、債務サイクル、政策レジームを分類し、借換えエクスポージャーと共通のマクロ要因への集中を評価する。",
|
|
33
|
+
ko: "성장, 인플레이션, 부채 사이클, 정책 국면을 분류한 뒤 차환 노출과 공통 거시 요인에 대한 집중도를 평가한다.",
|
|
34
|
+
}),
|
|
35
|
+
master_damodaran: Object.freeze({
|
|
36
|
+
ja: "検証可能な事業ストーリーを成長率、利益率、再投資、リスク、キャッシュフローに変換し、価値分布と価格に織り込まれたストーリーを明らかにする。",
|
|
37
|
+
ko: "검증 가능한 사업 이야기를 성장률, 마진, 재투자, 위험, 현금흐름으로 변환한 뒤 가치 분포와 가격에 내재된 이야기를 드러낸다.",
|
|
38
|
+
}),
|
|
39
|
+
master_druckenmiller: Object.freeze({
|
|
40
|
+
ja: "流動性、利益予想の修正、価格による確認、将来期間にわたる非対称リスクから、売買可能なマクロおよび企業の転換機会を特定する。",
|
|
41
|
+
ko: "유동성, 이익 전망 수정, 가격 확인, 향후 기간의 비대칭 위험을 바탕으로 거래 가능한 거시 및 기업 변곡 기회를 식별한다.",
|
|
42
|
+
}),
|
|
43
|
+
master_duan_yongping: Object.freeze({
|
|
44
|
+
ja: "単純明快なビジネスモデルを、ユーザー価値、企業文化、経営陣の誠実性、長期的な経済性、機会費用から評価する。",
|
|
45
|
+
ko: "단순하고 명확한 사업 모델을 사용자 가치, 기업 문화, 경영진의 정직성, 장기 경제성, 기회비용을 통해 평가한다.",
|
|
46
|
+
}),
|
|
47
|
+
master_fisher: Object.freeze({
|
|
48
|
+
ja: "複数の関係者への聞き取り、研究開発の生産性、販売力、経営層の厚み、再投資余地から長期成長の質を評価する。",
|
|
49
|
+
ko: "여러 이해관계자에 대한 탐문, 연구개발 생산성, 영업 역량, 경영진의 깊이, 재투자 여력을 통해 장기 성장의 질을 평가한다.",
|
|
50
|
+
}),
|
|
51
|
+
master_forensic_short: Object.freeze({
|
|
52
|
+
ja: "特定の著名人に紐づかない専門手法で、会計の再構成、ガバナンス証拠、借株の経済性、検証可能なカタリスト経路を組み合わせる。",
|
|
53
|
+
ko: "특정 유명 인물에 귀속되지 않는 전문 방식으로 회계 재구성, 지배구조 증거, 주식 대차의 경제성, 검증 가능한 촉매 경로를 결합한다.",
|
|
54
|
+
}),
|
|
55
|
+
master_graham: Object.freeze({
|
|
56
|
+
ja: "資産価値または平準化利益に基づく下限を設定し、株式リスクを取る前に、人による審査を経た安全余裕を求める。",
|
|
57
|
+
ko: "자산 가치 또는 정상화 이익에 기반한 하한을 설정하고, 주식 위험을 감수하기 전에 사람의 심사를 거친 안전마진을 요구한다.",
|
|
58
|
+
}),
|
|
59
|
+
master_jhunjhunwala: Object.freeze({
|
|
60
|
+
ja: "インドの構造成長を、支配株主・創業家のガバナンス、キャッシュの質、潜在市場への浸透、規模拡大の経済性、評価、流動性から検証する。",
|
|
61
|
+
ko: "인도의 구조적 성장을 대주주·창업자 거버넌스, 현금의 질, 잠재 시장 침투율, 규모 확대의 경제성, 가치평가, 유동성을 통해 평가한다.",
|
|
62
|
+
}),
|
|
63
|
+
master_klarman: Object.freeze({
|
|
64
|
+
ja: "下値を支える資産保護、現金の選択価値、カタリスト、保守的な回収分析を通じて、資本保全を伴う絶対収益を追求する。",
|
|
65
|
+
ko: "하방을 지지하는 자산 보호, 현금의 선택권 가치, 촉매, 보수적인 회수 분석을 통해 자본 보전을 동반한 절대수익을 추구한다.",
|
|
66
|
+
}),
|
|
67
|
+
master_li_lu: Object.freeze({
|
|
68
|
+
ja: "10年間の事業確度、経営陣の誠実性、社会における構造的価値、永久損失リスク、価格に織り込まれた長期リターンを評価する。",
|
|
69
|
+
ko: "10년 동안의 사업 확실성, 경영진의 정직성, 사회적 구조 가치, 영구 손실 위험, 가격에 내재된 장기 수익률을 평가한다.",
|
|
70
|
+
}),
|
|
71
|
+
master_lynch: Object.freeze({
|
|
72
|
+
ja: "会社の類型を先に分類し、証拠に裏づけられた簡潔なストーリーを検証したうえで、類型に適した成長性、バランスシート、評価のチェックを適用する。",
|
|
73
|
+
ko: "기업 유형을 먼저 분류하고 증거에 근거한 간결한 이야기를 검증한 뒤, 유형에 맞는 성장성, 재무상태표, 가치평가 점검을 적용한다.",
|
|
74
|
+
}),
|
|
75
|
+
master_marks: Object.freeze({
|
|
76
|
+
ja: "一点予測ではなく、サイクルの過熱度、市場コンセンサス、価格に織り込まれた期待、信用環境、永久損失リスクに合わせて投資姿勢の積極度を調整する。",
|
|
77
|
+
ko: "단일 시점 예측 대신 사이클의 과열 정도, 시장 합의, 가격에 내재된 기대, 신용 여건, 영구 손실 위험에 맞춰 투자 자세의 공격성을 조절한다.",
|
|
78
|
+
}),
|
|
79
|
+
master_munger: Object.freeze({
|
|
80
|
+
ja: "投資仮説を逆から検討し、永久損失に至る経路を洗い出し、インセンティブを監査し、分野横断的な因果モデルで複合リスクを検証する。",
|
|
81
|
+
ko: "투자 가설을 거꾸로 검토하고 영구 손실 경로를 도식화하며, 유인을 점검하고 여러 학문 분야의 인과 모델로 결합 위험을 검증한다.",
|
|
82
|
+
}),
|
|
83
|
+
master_natenberg: Object.freeze({
|
|
84
|
+
ja: "インプライド・ボラティリティ、スキュー、期間構造、グリークス、損益構造、実行可能なマーケットメイク制約から、オプションの相対価値を評価する。",
|
|
85
|
+
ko: "내재변동성, 스큐, 기간 구조, 그릭스, 손익 구조, 실제 집행 가능한 시장조성 제약을 통해 옵션의 상대가치를 평가한다.",
|
|
86
|
+
}),
|
|
87
|
+
master_pabrai: Object.freeze({
|
|
88
|
+
ja: "不確実性と永久損失リスクを分け、保守的な下値の下限と通常シナリオでの非対称な成果を備えた、単純で独立に再構成できる案件を探す。",
|
|
89
|
+
ko: "불확실성과 영구 손실 위험을 구분하고, 보수적인 하방 하한과 일반적 시나리오에서의 비대칭 성과를 갖춘 단순하며 독립적으로 재구성 가능한 기회를 찾는다.",
|
|
90
|
+
}),
|
|
91
|
+
master_simons: Object.freeze({
|
|
92
|
+
ja: "情報漏洩の統制、多重検定、サンプル外評価、回転率、取引コストを通過した、統計的に検証可能なシグナルだけを採用する。",
|
|
93
|
+
ko: "정보 누출 통제, 다중 검정, 표본 외 평가, 회전율, 거래비용을 통과한 통계적으로 검증 가능한 신호만 채택한다.",
|
|
94
|
+
}),
|
|
95
|
+
master_sinclair: Object.freeze({
|
|
96
|
+
ja: "実現ボラティリティを予測してインプライド・ボラティリティと比較し、スプレッドとスリッページを差し引いた後も堅牢で実行可能な優位性だけに応じてポジションを決める。",
|
|
97
|
+
ko: "실현변동성을 예측해 내재변동성과 비교하고, 스프레드와 슬리피지를 차감한 뒤에도 견고하고 실행 가능한 우위에만 포지션 규모를 배정한다.",
|
|
98
|
+
}),
|
|
99
|
+
master_soros: Object.freeze({
|
|
100
|
+
ja: "価格、資金調達、ファンダメンタルズ、政策、参加者の信念の間にある反射的フィードバックを整理し、観測可能な崩壊条件を特定する。",
|
|
101
|
+
ko: "가격, 자금 조달, 펀더멘털, 정책, 참여자의 믿음 사이의 재귀적 피드백을 구조화한 뒤 관측 가능한 붕괴 조건을 식별한다.",
|
|
102
|
+
}),
|
|
103
|
+
master_taleb: Object.freeze({
|
|
104
|
+
ja: "まず破産リスクと隠れた凹性を排除し、そのうえで流動性、テール価格、執行摩擦を考慮した後もペイオフが頑健か、または正の凸性を持つか評価する。",
|
|
105
|
+
ko: "먼저 파산 위험과 숨은 오목성을 배제한 뒤, 유동성, 꼬리위험 가격, 집행 마찰을 반영하고도 손익 구조가 견고하거나 양의 볼록성을 갖는지 평가한다.",
|
|
106
|
+
}),
|
|
107
|
+
master_thorp: Object.freeze({
|
|
108
|
+
ja: "優位性とオッズを独立に推定し、推定誤差、依存関係、流動性、破産リスクによってケリー基準型のポジション量を制約する。",
|
|
109
|
+
ko: "우위와 승산을 독립적으로 추정한 뒤, 추정 오차, 상호 의존성, 유동성, 파산 위험을 반영해 켈리 기준 방식의 포지션 규모를 제한한다.",
|
|
110
|
+
}),
|
|
111
|
+
});
|
|
112
|
+
|
|
113
|
+
/**
|
|
114
|
+
* Reader-facing suitability copy. Stable machine domain ids remain in
|
|
115
|
+
* manifest.capability.domains; none of those snake_case ids are exposed here.
|
|
116
|
+
*/
|
|
117
|
+
export const MASTER_SELECTOR_BEST_FOR_LOCALES = Object.freeze({
|
|
118
|
+
master_ackman: Object.freeze({
|
|
119
|
+
en: "Shareholder activism, corporate governance, capital allocation, and corporate change.",
|
|
120
|
+
zh: "股东行动主义、公司治理、资本配置与企业变革。",
|
|
121
|
+
ja: "株主アクティビズム、コーポレートガバナンス、資本配分、企業変革。",
|
|
122
|
+
ko: "주주 행동주의, 기업 지배구조, 자본 배분, 기업 변화.",
|
|
123
|
+
}),
|
|
124
|
+
master_aschenbrenner: Object.freeze({
|
|
125
|
+
en: "AI infrastructure, semiconductors, power constraints, and technology diffusion.",
|
|
126
|
+
zh: "人工智能基础设施、半导体、电力约束与技术扩散。",
|
|
127
|
+
ja: "AIインフラ、半導体、電力制約、技術普及。",
|
|
128
|
+
ko: "AI 인프라, 반도체, 전력 제약, 기술 확산.",
|
|
129
|
+
}),
|
|
130
|
+
master_asness: Object.freeze({
|
|
131
|
+
en: "Factor investing, portfolio attribution, style cycles, and crowded positioning.",
|
|
132
|
+
zh: "因子投资、组合归因、风格周期与拥挤交易。",
|
|
133
|
+
ja: "ファクター投資、ポートフォリオ帰属分析、スタイル循環、ポジションの混雑。",
|
|
134
|
+
ko: "팩터 투자, 포트폴리오 성과 귀속, 스타일 순환, 포지션 쏠림.",
|
|
135
|
+
}),
|
|
136
|
+
master_buffett: Object.freeze({
|
|
137
|
+
en: "Operating businesses, business quality, capital allocation, and intrinsic value.",
|
|
138
|
+
zh: "实体经营企业、商业质量、资本配置与内在价值。",
|
|
139
|
+
ja: "事業会社、事業の質、資本配分、内在価値。",
|
|
140
|
+
ko: "실물 사업, 사업의 질, 자본 배분, 내재가치.",
|
|
141
|
+
}),
|
|
142
|
+
master_burry: Object.freeze({
|
|
143
|
+
en: "Primary-document research, capital structure, accounting forensics, and structural mispricing.",
|
|
144
|
+
zh: "一手文件研究、资本结构、会计取证与结构性错价。",
|
|
145
|
+
ja: "一次資料調査、資本構成、会計フォレンジック、構造的なミスプライシング。",
|
|
146
|
+
ko: "1차 자료 조사, 자본 구조, 회계 포렌식, 구조적 오가격.",
|
|
147
|
+
}),
|
|
148
|
+
master_cathie_wood: Object.freeze({
|
|
149
|
+
en: "Disruptive innovation, technology adoption, platform convergence, and growth valuation.",
|
|
150
|
+
zh: "颠覆式创新、技术采用、平台融合与成长估值。",
|
|
151
|
+
ja: "破壊的イノベーション、技術普及、プラットフォーム融合、成長企業の評価。",
|
|
152
|
+
ko: "파괴적 혁신, 기술 도입, 플랫폼 융합, 성장 기업 가치평가.",
|
|
153
|
+
}),
|
|
154
|
+
master_dalio: Object.freeze({
|
|
155
|
+
en: "Macro regimes, debt cycles, cross-asset risk, and portfolio balance.",
|
|
156
|
+
zh: "宏观环境、债务周期、跨资产风险与组合平衡。",
|
|
157
|
+
ja: "マクロ環境、債務サイクル、クロスアセット・リスク、ポートフォリオの均衡。",
|
|
158
|
+
ko: "거시 국면, 부채 사이클, 자산군 간 위험, 포트폴리오 균형.",
|
|
159
|
+
}),
|
|
160
|
+
master_damodaran: Object.freeze({
|
|
161
|
+
en: "Intrinsic valuation, converting stories into numbers, young companies, and reverse valuation.",
|
|
162
|
+
zh: "内在估值、故事量化、年轻企业与反向估值。",
|
|
163
|
+
ja: "内在価値評価、ストーリーの数値化、若い企業、リバース・バリュエーション。",
|
|
164
|
+
ko: "내재가치 평가, 이야기의 수치화, 초기 기업, 역산 가치평가.",
|
|
165
|
+
}),
|
|
166
|
+
master_druckenmiller: Object.freeze({
|
|
167
|
+
en: "Global macro, liquidity, earnings inflections, and concentrated positioning.",
|
|
168
|
+
zh: "全球宏观、流动性、盈利拐点与集中持仓。",
|
|
169
|
+
ja: "グローバルマクロ、流動性、利益の変曲点、集中ポジション。",
|
|
170
|
+
ko: "글로벌 매크로, 유동성, 이익 변곡점, 집중 포지셔닝.",
|
|
171
|
+
}),
|
|
172
|
+
master_duan_yongping: Object.freeze({
|
|
173
|
+
en: "Consumer businesses, product value, corporate culture, and opportunity cost.",
|
|
174
|
+
zh: "消费企业、产品价值、企业文化与机会成本。",
|
|
175
|
+
ja: "消費者向け事業、製品価値、企業文化、機会費用。",
|
|
176
|
+
ko: "소비자 사업, 제품 가치, 기업 문화, 기회비용.",
|
|
177
|
+
}),
|
|
178
|
+
master_fisher: Object.freeze({
|
|
179
|
+
en: "Growth quality, field research, research productivity, and management depth.",
|
|
180
|
+
zh: "成长质量、实地调研、研发生产率与管理层梯队。",
|
|
181
|
+
ja: "成長の質、現場調査、研究開発の生産性、経営層の厚み。",
|
|
182
|
+
ko: "성장의 질, 현장 조사, 연구개발 생산성, 경영진의 깊이.",
|
|
183
|
+
}),
|
|
184
|
+
master_forensic_short: Object.freeze({
|
|
185
|
+
en: "Forensic accounting, governance warning signs, short-sale feasibility, and catalyst analysis.",
|
|
186
|
+
zh: "财务取证、治理警示、做空可行性与催化剂分析。",
|
|
187
|
+
ja: "会計フォレンジック、ガバナンス上の警告、空売りの実行可能性、カタリスト分析。",
|
|
188
|
+
ko: "회계 포렌식, 지배구조 경고 신호, 공매도 실행 가능성, 촉매 분석.",
|
|
189
|
+
}),
|
|
190
|
+
master_graham: Object.freeze({
|
|
191
|
+
en: "Deep value, asset-backed securities, normalized earnings, and distressed equities.",
|
|
192
|
+
zh: "深度价值、资产支撑证券、正常化盈利与困境股权。",
|
|
193
|
+
ja: "ディープバリュー、資産裏付け証券、平準化利益、ディストレスト株式。",
|
|
194
|
+
ko: "딥 밸류, 자산 담보 증권, 정상화 이익, 부실 기업 주식.",
|
|
195
|
+
}),
|
|
196
|
+
master_jhunjhunwala: Object.freeze({
|
|
197
|
+
en: "Indian equities, structural penetration, promoter governance, and concentrated growth.",
|
|
198
|
+
zh: "印度股票、结构性渗透、控股股东治理与集中成长投资。",
|
|
199
|
+
ja: "インド株、構造的な普及、支配株主のガバナンス、集中型成長投資。",
|
|
200
|
+
ko: "인도 주식, 구조적 보급, 지배주주 거버넌스, 집중 성장 투자.",
|
|
201
|
+
}),
|
|
202
|
+
master_klarman: Object.freeze({
|
|
203
|
+
en: "Capital preservation, distressed value, complex securities, and catalyst-driven value.",
|
|
204
|
+
zh: "资本保全、困境价值、复杂证券与催化剂驱动价值。",
|
|
205
|
+
ja: "資本保全、ディストレスト・バリュー、複雑証券、カタリスト主導の価値。",
|
|
206
|
+
ko: "자본 보전, 부실 자산 가치, 복합 증권, 촉매 중심 가치.",
|
|
207
|
+
}),
|
|
208
|
+
master_li_lu: Object.freeze({
|
|
209
|
+
en: "Long-duration quality, management integrity, structural growth, and capital preservation.",
|
|
210
|
+
zh: "长期质量、管理层诚信、结构性成长与资本保全。",
|
|
211
|
+
ja: "長期持続する質、経営陣の誠実性、構造的成長、資本保全。",
|
|
212
|
+
ko: "장기 지속 품질, 경영진의 정직성, 구조적 성장, 자본 보전.",
|
|
213
|
+
}),
|
|
214
|
+
master_lynch: Object.freeze({
|
|
215
|
+
en: "Consumer observation, growth categories, cyclicals, turnarounds, and asset plays.",
|
|
216
|
+
zh: "消费者观察、成长类别、周期股、困境反转与资产型机会。",
|
|
217
|
+
ja: "消費者観察、成長カテゴリー、景気循環株、再建案件、資産価値型投資。",
|
|
218
|
+
ko: "소비자 관찰, 성장 유형, 경기민감주, 턴어라운드, 자산가치 투자.",
|
|
219
|
+
}),
|
|
220
|
+
master_marks: Object.freeze({
|
|
221
|
+
en: "Credit cycles, distressed value, market psychology, and risk posture.",
|
|
222
|
+
zh: "信用周期、困境价值、市场心理与风险姿态。",
|
|
223
|
+
ja: "信用サイクル、ディストレスト・バリュー、市場心理、リスク姿勢。",
|
|
224
|
+
ko: "신용 사이클, 부실 자산 가치, 시장 심리, 위험 태도.",
|
|
225
|
+
}),
|
|
226
|
+
master_munger: Object.freeze({
|
|
227
|
+
en: "Business quality, incentives, failure analysis, and capital allocation.",
|
|
228
|
+
zh: "商业质量、激励机制、失败分析与资本配置。",
|
|
229
|
+
ja: "事業の質、インセンティブ、失敗分析、資本配分。",
|
|
230
|
+
ko: "사업의 질, 유인 구조, 실패 분석, 자본 배분.",
|
|
231
|
+
}),
|
|
232
|
+
master_natenberg: Object.freeze({
|
|
233
|
+
en: "Options pricing, volatility surfaces, option sensitivities, and relative value.",
|
|
234
|
+
zh: "期权定价、波动率曲面、期权敏感度与相对价值。",
|
|
235
|
+
ja: "オプション価格、ボラティリティ・サーフェス、オプション感応度、相対価値。",
|
|
236
|
+
ko: "옵션 가격결정, 변동성 곡면, 옵션 민감도, 상대가치.",
|
|
237
|
+
}),
|
|
238
|
+
master_pabrai: Object.freeze({
|
|
239
|
+
en: "Dhandho-style value, special situations, downside protection, and concentrated odds.",
|
|
240
|
+
zh: "低风险高回报价值、特殊情形、下行保护与集中赔率。",
|
|
241
|
+
ja: "低リスク高リターン型の価値投資、特殊状況、下値保護、集中した勝算。",
|
|
242
|
+
ko: "저위험 고수익형 가치 투자, 특수 상황, 하방 보호, 집중된 승산.",
|
|
243
|
+
}),
|
|
244
|
+
master_simons: Object.freeze({
|
|
245
|
+
en: "Systematic signals, statistical arbitrage, portfolio research, and execution costs.",
|
|
246
|
+
zh: "系统化信号、统计套利、组合研究与执行成本。",
|
|
247
|
+
ja: "システマティック・シグナル、統計的裁定、ポートフォリオ研究、執行コスト。",
|
|
248
|
+
ko: "체계적 신호, 통계적 차익거래, 포트폴리오 연구, 집행 비용.",
|
|
249
|
+
}),
|
|
250
|
+
master_sinclair: Object.freeze({
|
|
251
|
+
en: "Volatility forecasting, options execution, edge measurement, and position sizing.",
|
|
252
|
+
zh: "波动率预测、期权执行、优势度量与仓位管理。",
|
|
253
|
+
ja: "ボラティリティ予測、オプション執行、優位性の測定、ポジション量。",
|
|
254
|
+
ko: "변동성 예측, 옵션 집행, 우위 측정, 포지션 규모 결정.",
|
|
255
|
+
}),
|
|
256
|
+
master_soros: Object.freeze({
|
|
257
|
+
en: "Global macro, reflexivity, boom-bust dynamics, and crowded trades.",
|
|
258
|
+
zh: "全球宏观、反身性、繁荣萧条循环与拥挤交易。",
|
|
259
|
+
ja: "グローバルマクロ、再帰性、ブームと崩壊の力学、混雑した取引。",
|
|
260
|
+
ko: "글로벌 매크로, 재귀성, 호황과 붕괴의 역학, 혼잡 거래.",
|
|
261
|
+
}),
|
|
262
|
+
master_taleb: Object.freeze({
|
|
263
|
+
en: "Tail risk, convexity, options, and fragility analysis.",
|
|
264
|
+
zh: "尾部风险、凸性、期权与脆弱性分析。",
|
|
265
|
+
ja: "テールリスク、凸性、オプション、脆弱性分析。",
|
|
266
|
+
ko: "꼬리위험, 볼록성, 옵션, 취약성 분석.",
|
|
267
|
+
}),
|
|
268
|
+
master_thorp: Object.freeze({
|
|
269
|
+
en: "Probabilistic edge, position sizing, arbitrage, and risk of ruin.",
|
|
270
|
+
zh: "概率优势、仓位管理、套利与破产风险。",
|
|
271
|
+
ja: "確率的優位性、ポジション量、裁定、破産リスク。",
|
|
272
|
+
ko: "확률적 우위, 포지션 규모, 차익거래, 파산 위험.",
|
|
273
|
+
}),
|
|
274
|
+
});
|
|
275
|
+
|
|
276
|
+
export function selectorMethodLocale(personaId, languageKey) {
|
|
277
|
+
const value = MASTER_SELECTOR_METHOD_LOCALES[personaId]?.[languageKey];
|
|
278
|
+
if (!value) throw new Error(`missing selector method locale ${personaId}.${languageKey}`);
|
|
279
|
+
return value;
|
|
280
|
+
}
|
|
281
|
+
|
|
282
|
+
export function selectorBestForLocale(personaId, languageKey) {
|
|
283
|
+
const value = MASTER_SELECTOR_BEST_FOR_LOCALES[personaId]?.[languageKey];
|
|
284
|
+
if (!value) throw new Error(`missing selector best_for locale ${personaId}.${languageKey}`);
|
|
285
|
+
return value;
|
|
286
|
+
}
|