hjhan
|
ef37c8e71d
|
refactor(swap): 合并多空名义本金参数为单一 posiTotalNotional 并加固测试
- DealInterests 的 posiLongNotionalValue + posiShortNotionalValue 合并为 posiTotalNotional(调用点以 posiLongNotional+posiShortNotional 求和传入),净减一个参数
- SwapDealService / SwapEodPositionService / InterestCalcRequest 同步收敛多空死管道参数
- 19 个测试调用点适配新签名
- SwapEodPositionServiceIntegrationTest 参数计数断言由裸数字改为参数名集合断言(CollectionAssert.AreEquivalent,对增删/重排/改名敏感)
|
2026-08-14 17:30:46 +08:00 |
|
hjhan
|
4a3fee9292
|
refactor(swap)+test: 删 GetInterests/CalcSwapInterests 死参数 needPrice/grossPrice;补工厂→接缝映射钉子
死参数收口(另一半):
- SwapDealService.GetInterests 删 needPrice/grossPrice(体内零消费,2026-08 验证);
InitSwapDealInterest.needPrice 同为死参数一并删
- SwapEodPositionService.CalcSwapInterests 签名+转发同步;两个 EOD 生产调用点
(SaveAutoEodInterestPosition/SaveEodInterestPositionCopy) 重排实参;
CalcEodPostCloseSettleInterests/GetIntradayUnwindInterests 委托同步
- 14 个测试文件 ~44 处直调点机械更新(8 处 override 签名 + 36 处调用实参)
- 注意:EOD 编排链(DealInterests→Save*家族)的 grossPrice(期初不含费价)有真实用途,保留未动
新增钉子:CalcEodPostCloseSettleInterests 工厂→接缝参数映射测试——
CalcSwapInterestsCapture 捕获 stub 断言 EodPostCloseSettle 的完整转发契约
(posi=平仓后剩余/closePosi=平掉额/恒1/settment:false/orginPv 等 11 项)。
该段位置转发含三个相邻同型 decimal,编译器不查错位,此测试兜底。
验证:定向 241 测试通过(含 T0/T1 Excel 验证期望值、EntrySemantics 精确值钉子——
任何 decimal 错位即红);全量 903=145失败/746通过/12跳过,与基线逐位一致。
|
2026-08-14 16:57:56 +08:00 |
|
hjhan
|
f6a5c1dc83
|
test(swap): 预付金腿收盘递推链trace——证明ValueDate正确推进到8.4(非公式bug)
- 新增 PrepaidPrincipalClosingChainTraceTest:纯内存驱动 SwapPositionCompose,
从交易开始日 7.28 逐日收盘到部分平仓日 8.4(含 7.31互换/8.3重置/8.4平仓),
捕获预付金腿每日 eod.ValueDate。
- 实测 ValueDate 逐日推进 7.28→7.31→8.3→8.4,证明收盘代码(DealInterests 四分支
均 newEodPayPosition.ValueDate=settleDate)本身正确。
- 结论:8.7 平仓预付金端系统值 20.83(≈6天) 对应 eod.ValueDate≈8.1,说明该笔交易
预付金腿 eod 在 8.1 之后未被收盘链重新生成(递推链在部分平仓日断了/收盘缺失滞后),
属数据/流程问题而非利息公式 bug;收盘链若正常推进到 8.4,8.7 平仓应为 3 天=10.41(Excel)。
|
2026-08-08 15:46:54 +08:00 |
|