Skip to content

Repository files navigation

从宏观状态到ETF选择

本项目采用三段时间口径:知识资料从2001年起,原四资产收益样本从2004年起,多ETF实证从2020年起。下文六策略业绩只来自2020-01至2026-07的79个持有月。

持续集成 在线研究页

打开在线研究页:查看研究框架、Prompt、六策略结果与Agent持仓图

从宏观状态到ETF选择

先看结论:两条证据线不能混读

五种研报历史回填口径的月度事实槽与行业覆盖

图中每年3月都会出现公开统计数据尚未齐备的覆盖缺口;同期口径又受支持研报发布时间约束,因此明显晚于并稀疏于回看口径。

  • 新知识工程结论:60份研报与81条第一方核验事实已经扩展为2001—2026年的308个V1/V2知识节点。79个决策月的五套回填依次形成3,902、4,286、4,602、461和55个事实槽;五套快照的未来信息、重复映射、过期事实与显式时间泄漏检查均为0。新增证据说明知识输入已完成历史接入,也量化了覆盖范围与时间严格性的取舍。
  • 旧收益实验结论:页面中的79个月收益线仍来自237份旧Agent输出,输入为原宏观、事件和30行业经营数据,没有读取上述新快照。旧样本中未发现知识输入带来稳定超额,但这不是新知识库的回测结论,不能据此宣称新知识改善或损害收益。

本次工程更新

已修正ETF名单差异的统计口径:V1/V2优选集合不同55/79(69.62%),回避集合不同42/79(53.16%),去除了仅排列顺序不同的情况。原收益、权重与绩效保留;每场景只运行一次的旧输出不能识别格式因果效应。

新增可执行研究工作流:12个冻结场景×4信息条件×3次独立请求、同事实双格式、明确新增知识、同后处理纯规则基线、模型响应登记和重复实验分析;另有前向模拟冻结、两期漂移结算、防覆盖与失败登记。模型调用和未来实盘收益的状态独立记录,离线测试不作为投资效果证据。入口与验收规则见研究工作流,证据版本见登记表。

本轮已完成180次真实成功调用。最终12×4×3比较使用144份响应,其中108份基础条件逐字核对输入/prompt/schema后复用,36份为修正后的增量条件新调用;每个响应具有不同的执行身份。首版附加段落包含重复事实,已归档并排除于纯增量解释。

同事实格式间的平均配置距离为3.20个百分点,对应条件内重复运行距离均值3.25个百分点;本样本没有观察到跨格式距离超过自身重复波动均值。去重增量与基础条件之间为3.96个百分点,对应重复波动3.15个百分点。这些数字是ETF权重距离,不是收益;增量仅覆盖11场各1条、末场8条观察,不能外推为完整知识库有效,也没有解决历史记忆风险。详见真实诊断摘要。

真实模型重复诊断

样本口径

  • 知识源轴:2001-01至2026-08,共308个节点。 保守事实覆盖307个节点,2001-01无可用行业事实;该序列并非完整的严格点时数据。
  • 原四资产实验:2004-01至2026-06,共270个月。 这是用户原研究中的长期收益样本。
  • 多ETF实证:2020-01至2026-07,共79个持有月。 代码在2019-12形成首个信号;当月18只ETF满足12个月历史、流动性和量价特征准入,样本末增至27只。2020年属于当前实验预设起点,项目材料未记录更早起点的排除检验。
  • 正式Agent输出:237份。 V1事件知识、V2摘要知识和无知识库各79份,每个场景使用独立上下文。
  • 统一对照:6种策略。 三种Agent与ETF动量、分层逆波动、分层等权共用ETF资格、收益和成本口径。

研究框架

60份研报到308个知识节点及五套历史回填验收

本仓库公开两条工作链路。原四资产实验属于用户原研究的长期收益样本,仅用于说明时间口径,不纳入下述多ETF回测。

  1. ETF历史实证:308节点宏观/事件/30行业客观数据 → 全局T轴截止 → 动态ETF池 → Agent五类倾向与优选/回避 → 确定性权重映射 → 六策略回测。
  2. 研报知识工程:60份行业研报 → 81条第一方核验事实 → 69条历史序列人工分层 → 308个可截止的V1/V2知识节点。其中53条是核心序列,5条为代理序列,4条仅用于探索,7条因缺少获批链接而排除。

五套回填均覆盖完整的308个知识节点,下面的计数专指79个ETF决策月:

回填口径 事实槽 月均 行业覆盖 解释
回看·核心 3,902 49.39 12—26 53条人工审批核心序列
回看·加代理 4,286 54.25 15—28 另加5条单独标记的代理序列
回看·探索 4,602 58.25 17—30 再加入4条C级探索序列
同期·保守 461 5.84 0—26 支持研报发布后才启用
同期·严格 55 0.70 0—26 还要求可核验发布时间与首发版本

回看口径使用后来冻结的指标字典,覆盖较高但存在事后选指标;同期口径更接近当时可知的信息集,因此明显更稀疏。详细字段与验收规则见 历史回填方法与边界。

旧输入六策略结果(237份既有输出)

以下数字只保留为更新知识库之前的历史基准,没有使用五套新快照。

策略 CAGR 年化波动 Sharpe 最大回撤
Agent+V1 8.55% 9.55% 0.91 -9.87%
Agent+V2 8.02% 9.95% 0.83 -11.31%
Agent无知识库 9.45% 11.68% 0.83 -11.35%
ETF动量 9.30% 14.22% 0.70 -16.56%
分层逆波动 5.43% 4.65% 1.16 -4.10%
分层等权 7.62% 8.35% 0.92 -9.24%

注:数据来自 strategy_metrics.csv,核验日期为2026-09-02;指标为本项目按公开月度聚合结果复算的回测值(R/A),样本为2020-01至2026-07。单边调仓比例定义为 0.5×Σ|目标权重-漂移后权重|,主成本按该比例乘以10bp扣除。

旧输入六策略累计净值

完整公开结果和复算脚本位于 research/etf-rotation/。

Prompt与确定性后处理

正式Prompt采用固定字段。每个场景包含:

  • 截止T-k的宏观、政策、事件与30行业客观事实;
  • 只来自截止前节点的历史检索片段;
  • 当月动态可用ETF的3/6/12月动量、12月波动、回撤、流动性和量化分数;
  • 严格JSON输出契约:五类资产倾向、最多5只优选ETF、最多3只回避ETF、置信度、理由标签、证据节点与100字内理由。

Agent输出不直接成为权重。大类倾向经指数映射并施加上下限;类内量化分数叠加固定偏好修正后通过softmax分配;持仓数量、换手和交易成本由统一代码执行。

脱敏结构见 prompt_schema.json,正式协议见 agent_decision_protocol.md。

公开研究包

research/etf-rotation/
├── config/experiment.json    # 准入、权重、成本与模型执行参数
├── charts/                   # 14张研究结果图+1张公开代码流程图
├── data/etf_universe_locked.csv
├── knowledge/                # 知识schema、来源等级、质量摘要与合成样例
├── method/
│   ├── agent_decision_protocol.md
│   ├── model_execution_note.md
│   ├── prompt_schema.json
│   └── research_report_knowledge_bridge.md
├── results/                  # 聚合结果、Bootstrap、归因与脱敏案例
├── scripts/
│   ├── collect_etf_data.py
│   ├── build_agent_scene.py
│   ├── run_agent_api.py
│   ├── validate_agent_output.py
│   ├── run_backtest_public.py
│   ├── generate_flow_figure.py
│   ├── generate_charts.py
│   └── run_public_demo.py
├── validate_results.py
└── validation_summary.json

全合成端到端演示不需要市场数据或API密钥:

python -m pip install -e .
python research/etf-rotation/scripts/run_public_demo.py --output-dir work/public-demo

复算正式聚合结果并重画研究图:

python -m pip install -r research/etf-rotation/requirements.txt
python research/etf-rotation/validate_results.py
python research/etf-rotation/scripts/generate_charts.py

可选的 run_agent_api.py 支持OpenAI和Anthropic新实验,服务商与模型必须显式指定,密钥只从环境变量读取。原237份输出来自2026年8月24日Codex会话;精确模型快照、temperature与seed未披露,新执行器不能被表述为原调用的逐字复现。

仓库中的 src/chronoalloc/ 与 tests/ 提供证据可用时点、截止检索、虚拟世界、泄漏检查、多ETF权重映射与组合回测的公开技术底座。知识库全文受版权、许可与实验隔离约束,公开层见 research/etf-rotation/knowledge/。

已验证

  • 五套回填均生成308个知识节点,V1/V2月份与事实集合一致;
  • 五套回填的未来信息违规、重复月度映射、过期事实违规和全局T轴显式泄漏均为0;
  • 六策略累计收益、CAGR、年化波动和最大回撤可由月度结果精确复算;
  • 474组大类资产权重均归一化;
  • 年度收益与月度收益复算最大误差低于 9e-16;
  • 配置、ETF选择、交互与成本归因加总误差低于 1.2e-15;
  • V1减无知识库、V2减无知识库与V1减V2的Bootstrap 95%区间均跨0;
  • 原工程6项正式流水线测试与公开核心124项测试均通过。

研究边界

  • 27只ETF是固定代表性篮子,存在后验选样与幸存者偏差,仅代表本项目样本;
  • 红队12个场景中真实月份Top-1命中11次、Top-5命中12次,T轴不能消除历史指纹;
  • 行情底层来源为新浪财经;程序识别11次疑似份额单位断点并处理66次分红,相关口径不同于基金公司官方复权因子;
  • 旧收益实验每场景仅运行一次;新增诊断每条件每场景重复3次,仍属小样本。两次研究的精确模型快照、temperature与seed均未公开;
  • 2026年年度收益仅覆盖1至7月;
  • 不公开公众号全文/原图、券商研报正文、完整Agent输入、累计知识全文、真实月份映射、红队真值、Wind/iFinD许可数据或任何凭据;
  • 本项目仅用于研究与技术展示,不构成投资建议。

数据来源说明:ETF行情底层来源为新浪财经,经AKShare接口取得;知识资料来自项目全局T轴及其官方/第一方数据源。收益、风险、换手和Bootstrap可由公开月度结果复算(R/A);收益差归因为内部R/A,公开材料仅支持分项加总核验(B)。核验日期为2026-09-02。完整口径见 样本与数字来源登记。

About

可审计的知识增强型大语言模型四资产配置复刻、截止时点检索与时间身份泄漏红队。

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages