hjhan
79e9304114
refactor(interest): 新增利息腿策略接口 + 3个活跃mode实现
为拆三类腿做准备,按 Strategy 模式封装 CalcNotionalByMode 的 switch。
本次零生产代码改动,全部为新增小文件,每个类单一职责<50行。
新增(策略接口+值对象):
- InterestLegs/IInterestLegStrategy.cs
NotionalResult 值对象(closePrincipal/posiPrincipal/closePercent)
+ IInterestLegStrategy 接口(每个mode一个实现)
新增(3个活跃利息腿mode):
- InterestLegs/FixedNotionalLeg.cs mode 1 固定值
计息基数恒=InterestPrincipalFix, 不随平仓比例变化(合同写死的固定值)
- InterestLegs/ContractNotionalLeg.cs mode 2 合约名义本金规模
平仓本金=posiNotional×closePercent, 按比例线性缩放
- InterestLegs/UnderlyingFullPriceLeg.cs mode 9 标的期初全价
主路径公式同mode2, 差异在衡泰路径grossPrice折算+EOD复利反推
确认现状:
- 界面实际只有3个活跃利息腿mode(1/2/9), TradeView.cshtml:330-349
- mode 3(持仓名义本金)/4(持仓市值) 零引用=死代码, 本次不实现
- mode 7/8(多空存续) 界面已注释掉, 本次不实现
- mode 5/6(预付金) 属保证金维度, 后续单独做PrepayLeg
新增测试(8个,全过):
- InterestLegStrategyTest.cs 覆盖各mode的部分平仓/全平/零平仓场景
验证策略行为与现有CalcNotionalByMode switch完全一致
2026-08-10 18:32:17 +08:00
..
2025-07-18 17:44:58 +08:00
2026-04-27 15:34:12 +08:00
2024-05-09 14:06:26 +08:00
2026-07-07 15:47:17 +08:00
2026-08-10 18:32:17 +08:00
2026-03-11 15:04:10 +08:00
2024-05-09 14:06:26 +08:00
2024-05-09 14:06:26 +08:00
2026-07-21 15:28:17 +08:00
2026-06-26 09:13:37 +08:00
2024-05-09 14:06:26 +08:00
2024-05-09 14:06:26 +08:00
2026-07-23 18:30:05 +08:00
2026-06-26 09:13:37 +08:00