2024 年 3 月日本央行结束负利率,市场讨论最多的是日元套利交易会不会被迫平仓。这份复现包不给你结论,给的是一条能跑的验证链:380 个月的金融序列、九个加息日、四种识别策略,全部写在一个 R 脚本里。
论文题目是《Does Japanese Monetary Tightening Unwind the Yen Carry Trade? High-Frequency Evidence from Three Tightening Cycles, 1999–2026》,作者 Djediden、Keche、Benameur 三人。复现包 2026 年 10 月 24 日发布在 Zenodo,记录号 23618064,版本 v4,许可 CC BY 4.0。
四个文件,一个脚本管到底
脚本 boj_carry_trade_tvpvar.R 887 行,从下载数据一直跑到出图,中间不换文件。dataset_monthly.csv 是它第 2 步的产物,boj_mpm_dates.csv 是 1998—2026 年日本央行货币政策会议公告日期表,README_v4.md 说明变量与跑法。四个文件都不大,最大的是 49 KB 的脚本本身。
v4 相比前一版加的是第 7b、7c 两节:用会议日 2 年期国债收益率变化构造政策意外,以及对这些意外的响应估计。会议日期表就是为此新增的。
月度表 10 列,两个口径要留意
dataset_monthly.csv 380 行、10 列,从 1995 年 1 月到 2026 年 8 月:
| 变量 | 含义 | 来源 |
| month | 月份 | — |
| jp2y | 2 年期日本国债收益率,月均(%) | 日本财务省 |
| call | 日本隔夜拆借利率(%) | OECD 经 FRED(IRSTCI01JPM156N) |
| ctr | 套利收益风险比:美国 3 月期国库券与日本 3 月期利率之差除以已实现美元兑日元波动 | FRED(TB3MS、IR3TIB01JPM156N、IR3TCD01JPM156N、DEXJPUS) |
| lvix | 100 × ln VIX,月均 | Cboe 经 FRED(VIXCLS) |
| dusdjpy | 美元兑日元月度变化,100 × Δln | 美联储经 FRED(EXJPUS) |
| ddxy | 广义美元指数月度变化,100 × Δln(TWEXBMTH 拼接 DTWEXBGS) | 美联储经 FRED |
| us10 | 美国 10 年期国债收益率(%) | FRED(GS10) |
| ffr | 有效联邦基金利率(%) | FRED(FEDFUNDS) |
| igrea | Kilian 全球实际经济活动指数 | 达拉斯联储经 FRED(IGREA) |
两个口径容易踩空。
第一,日本 3 月期拆借序列 2002 年 4 月才开始,脚本用 3 月期 CD 利率往前接,所以 ctr 的早期读数不是同一来源。
第二,论文标题写 1999—2026,但数据从 1995 年 1 月开始,前 48 个月是训练样本(1995M01—1998M12),不是估计区间。
九个加息日与三段紧缩期
加息日写在脚本开头的 BOJ_HIKES 里:2000-08-11、2006-07-14、2007-02-21、2024-03-19、2024-07-31、2025-01-24、2025-12-19、2026-06-16、2026-09-18,共九个。状态依赖局部投影的紧缩期定义是 TIGHT:2000-08 至 2001-02、2006-03 至 2008-09、2024-03 至 2030-12。第三段写到 2030 年是故意的开口写法,让样本往后延长时不用改代码。
会议日期表 372 行,末行 2026-09-18 已超出样本终点。脚本把样本锁在 2026 年 8 月,所以那行会被过滤掉;记录页说"371 个会议日",指的就是过滤后的数量。直接数文件行数会多出一行。
四种识别策略并排放在一个文件里
主模型是带随机波动的时变参数 VAR(Primiceri 2005、Nakajima 2011,用 bvarsv 包),训练样本 48 个月、2 阶滞后、冲击定为 +25 个基点、报告 68% 可信区间。两组排序:模型 A 把政策利率放最前(日本央行当月内不会对市场作出反应),模型 B 把全球活动与联邦基金利率放在日本利率之前,走的是实体与债券渠道。
稳健性一是符号约束 SVAR(Uhlig 2005),约束只有一条:日本利率上行且日元升值(美元兑日元下跌),发生在 0—1 期;套利比、VIX 与美元指数不设约束,模型对它们保持不可知。
稳健性二是状态依赖局部投影(Jordà 2005),用 Newey–West 标准误,比较紧缩期与其他时期。
补充部分是九个加息日前后的日度事件研究。第 7b 节做高频识别,第 7c 节估响应:0—20 个交易日的日度局部投影、月度局部投影、把意外排在第一位的 VAR(Plagborg-Mller 与 Wolf 2021),配 wild bootstrap 区间。
高频识别怎么把三种威胁拆掉
脚本注释把要处理的三件事写得很清楚,这也是整份代码最值得读的一段。
一是预期到的政策。冲击取会议公告日当天 2 年期国债收益率的变化,从前一个东京交易日收盘到决议日收盘;决议在东京时间中午前后公布,这个窗口同时含公告与市场反应。
二是央行信息效应。按 Jarociński 与 Karadi(2020)的做法,用 2 年期收益率与日经 225 的方向切分:两者反向为货币政策冲击,同向为信息冲击。
三是全球共同因素。这个窗口里还含前一天的纽约时段,所以两种日度意外都要先对当期 2 年期美债收益率变化与纳斯达克变化做投影,把美国消息剔掉。月度意外是同月日度意外之和,没有会议的月份记 0,之后作为外部工具进 LP-IV 与 proxy SVAR。
README 自己承认一处弱点:月度意外做工具变量时第一阶段偏弱,所以那组 IV 估计只作完整性报告,不作为主要结论。这种自陈在复现包里不多见。
跑一遍要多久,两个开关要改对
需要 R 4.2 以上,八个包(bvarsv、vars、urca、zoo、sandwich、MASS、coda、ggplot2)会在开头自动装。完整贝叶斯估计 30—90 分钟;QUICK <- TRUE 只做快速测试,抽样从 20000 降到 2000、退火从 5000 降到 500、时变响应每 24 个月算一次而不是每 3 个月。
脚本把种子固定为 set.seed(2026),长阶段跑完会存 output/checkpoint_*.rds,中断后重启会读回已完成的阶段,不用从头再估。样本终点由 END 锁在 2026 年 8 月,即使以后有新数据也不会改样本。同目录下若有 dataset_monthly.csv,脚本优先用它而不是重新下载的月度数据,这样能挡住 Kilian 指数这类序列的后续修订。
结果落在 output/:CSV 表、图、results_summary.txt,期刊版图另存 output/journal/,TIFF 600 dpi 与矢量 PDF、宽 119 毫米。
一个没写在 README 里的细节
dataset_monthly.csv 的 month 列是法语区域格式,janv. 1995 开头、aot 2026 结尾。脚本并不解析这一列:它用 END 与行数倒推月份索引,所以那不影响到估计。但你要自己读这份 CSV 做图或对齐别的数据,直接 as.Date(month) 会全部变成 NA,得先按 %Y-%m 重造日期。
许可是两层
包内代码与数据汇编按 CC BY 4.0 发布,README 的 Licence 一节同时提醒:底层序列仍受原始提供方(FRED、日本财务省、Cboe)条款约束。也就是说,转发脚本与这份汇编数据要署作者名,但把 FRED 序列单独再分发时,看的是 FRED 的条款。
────────────────
需要记录页与四个文件的直达地址、会议日期表的列说明、脚本分节与输出文件的对应,以及 QUICK 模式下的参数差异,回帖后可见。
把经管之家装进你常用的 AI 智能体中 一键快捷安装经管之家 MCP/技能,让 AI 帮你查教程、找数据、读论坛帖子。 检索、阅读公开帖子不收费,安装可申请领取:3 通用积分+100 论坛币+3 元论坛资金 请点击查看安装教程与福利 → 说明: AI 算力按所用平台规则计算;附件按原帖条件获取;福利领取条件以活动页面为准。 |