hjhan
|
e2431e9d44
|
refactor(accrual): 计息类型整体迁入 DAL——新增 Accrual/InterestMath,删 Core 未接线孤儿
搬迁(算法体逐字未动,仅换命名空间与归属):
- SwapInterest.Round/AccrualDays/FundingLegPrecision + AccrualBoundary/InterestResult
→ YLErpDAL/Modules/SwapModule/Accrual/InterestMath.cs
- AccrualTrace → Accrual/AccrualTrace.cs(被迫同迁:其 MarkStart 引用 AccrualBoundary,
Core 不能反向依赖 DAL)
- 引用切换:Simple/CompoundInterestAccrual、AccrualPolicy、SwapCalcTrace、SwapDealService
(保留 using YLErp.Derivatives.Interest——IIndexFixer/IndexFixerBase 留 Core)
删除(零生产引用,孤儿清零):
- Core:SwapInterest.cs 算法方法(AccrueSimple/AccrueCompoundInArrears/ApplyUnwind/
AccrueUnrealized/ToInterestRate,未接线且与 DAL 生产实现舍入/rollover 口径已分叉)、
AccrualContext.cs、InterestRate.cs
- DAL:AccrualState.cs(零引用死类)
- 测试:SwapInterest_CompoundInArrears_RolloverTimingTests.cs(仅测已删原语)
验证:两解决方案 Rebuild 0 错误;磁盘 SwapInterest. 残留 0;影子/分红/场景 86/86 通过
(含 Accrual 3 影子对账、Margin 影子、divPower 新增 AutoUnwindMultiPartial)。
注:AccrualContext 默认精度 11 与生产 12 的分叉隐患随删除一并消除;
已删原语若将来重建须先补对账测试,勿凭记忆复原(ARCHITECTURE.md 已留警告)。
|
2026-08-14 15:31:04 +08:00 |
|
hjhan
|
b2cbbff9e7
|
refactor(margin): 删除未接线的保证金死代码预留抽象
- 删除 MarginAccount 整类、IMarginResolver 子树(MarginForm/CashMargin/CreditMargin/GuaranteeMargin)、MarginBalance 只读 struct:全仓零生产实例化,结构上无法适配 CalcMarginInterest 的盘中差分模型。
- 删除仅覆盖上述死代码的 MarginLegTest(不损失活代码覆盖率)。
- 保留被 CalcMarginInterest 实际使用的 MarginCalc/MarginModes 活代码。
- 同步修剪 ARCHITECTURE.md 树图与对账表,清理 AccrualContext.cs 过期注释。
|
2026-08-14 08:55:37 +08:00 |
|
hjhan
|
dafc06793e
|
refactor: AddClientCashInCashOut 加 virtual + 修正架构文档
AddClientCashInCashOut 从 public 改为 public virtual,
使测试可 override, 消除 RecordMarginCashFlow 迁出的阻塞。
AddClientCash 已是 virtual, 这是统一两者。
修正 ARCHITECTURE.md: 保证金有余额和返息(非'没有计息基数')。
验证: 编译0错误, 全量513测试7失败(基线一致)。
|
2026-08-11 17:09:13 +08:00 |
|
hjhan
|
7cea09d976
|
docs: 新增 SwapModule ARCHITECTURE.md 架构说明
记录重构后的三大限界上下文结构:
- FundingLegs(融资腿) / Margin(保证金) / ReturnLegs(标的端)
- 命名规则(防歧义): Funding/Return/Margin/FloatRate
- Core 层纯函数库(SwapInterest + IIndexFixer)
- 已消除的 inline 重复清单
- 方向因子类型规范(int)
- 待后续改造的接缝预留
不改原有文档(corp-action-*.md 仍准确)。
|
2026-08-11 17:03:44 +08:00 |
|