hjhan
66a97e03ef
fix(swap): 复利重置日=平仓日时 calcLast 不再跳过 FR007 取价
根因(GLMS-JIATT-20260805):InterestCalcMode='10'(算头不算尾,calcLast=false)时,
CalcDailyCompoundInterest 循环的 'if(!calcLast && accrueDate==endDate) continue'
会跳过平仓日。若平仓日恰好是重置日(i%period==0),取价代码块被一并跳过,
导致 flowEvent.FloatRate 落库为旧周期利率,传染后续 EOD 复利计算。
修复:把重置日的 FR007 取价提前到 calcFirst/calcLast 跳过判断之前——
calcLast 只应跳过'计息',不应跳过'重置日利率取价'。同时循环外用最终
floatRate 兜底赋值 flowEvent.FloatRate,确保落库值反映最后重置日的利率。
验证:
- CI_007 合成测试(平仓日=重置日):修复前 FloatRate=旧值(FAIL),修复后=新值(PASS)
- 连库验证(GLMS-JIATT-20260805 8/4平仓):FloatRate 0.0123→0.0213(8/3新值)
- 利息金额不变(calcLast 不计当天利息,Amount 不受影响,只修正 FloatRate 字段)
- 全套 swap 测试无新增回归(334通过,2失败均为pre-existing单利/EOD路径)
附:CI_007 复现测试 + GLMS20260805 FR007/EOD 诊断工具 + 文档 longRatio 状态更新
2026-08-07 20:43:16 +08:00
..
2026-07-17 10:59:18 +08:00
2026-07-23 11:16:11 +08:00
2026-07-27 13:18:32 +08:00
2026-07-23 11:16:11 +08:00
2026-08-07 20:43:16 +08:00
2026-07-23 11:16:11 +08:00
2026-07-23 11:16:11 +08:00
2026-08-07 15:43:11 +08:00
2026-08-07 17:44:04 +08:00
2026-06-02 14:41:17 +08:00
2026-06-02 14:41:17 +08:00
2026-07-23 11:16:11 +08:00
2026-08-07 09:28:18 +08:00
2026-07-17 10:59:18 +08:00
2026-07-20 18:41:16 +08:00
2026-08-07 19:00:31 +08:00
2026-07-02 09:37:18 +08:00
2026-07-21 15:28:15 +08:00
2026-07-21 15:28:15 +08:00
2026-07-17 08:23:50 +08:00
2026-08-05 18:26:15 +08:00
2026-07-03 09:38:05 +08:00
2026-07-03 09:26:13 +08:00
2026-07-02 09:20:41 +08:00
2026-07-23 11:16:11 +08:00
2026-07-03 09:38:05 +08:00
2026-07-01 17:07:55 +08:00
2026-06-26 09:13:37 +08:00
2026-02-13 18:12:00 +08:00
2026-07-17 08:40:19 +08:00
2026-07-21 15:28:13 +08:00
2026-07-21 15:28:14 +08:00
2026-08-06 14:44:30 +08:00
2026-07-01 13:38:24 +08:00
2026-08-07 13:46:24 +08:00
2026-07-21 15:28:17 +08:00
2026-07-21 15:28:13 +08:00
2026-07-16 13:00:21 +08:00
2026-07-16 11:09:47 +08:00
2026-07-14 17:23:33 +08:00
2026-08-07 13:46:24 +08:00
2026-07-21 15:28:13 +08:00
2026-07-03 18:12:52 +08:00
2026-07-23 11:16:11 +08:00
2026-07-03 09:26:13 +08:00
2026-07-03 09:20:59 +08:00