fix(return-leg): PositionValueCalc.ratio 改为 int, 统一方向因子类型
ratio(收取=1/支付=-1)是方向因子, 应该是 int。 和 MtmCalc/DirectionRatio/MarginCalc 的 int 保持一致。 调用点(SwapEodPositionService 4处)原 ratio 是 decimal, 加 (int) 显式转换(值恒为 1或-1, 零精度损失)。 排查确认: 这是唯一的类型不一致, 其他纯函数参数类型均已统一。 验证: 编译0错误, 全量513测试7失败(基线一致)。
This commit is contained in:
@@ -9,7 +9,7 @@ namespace YLErp.Modules.SwapModule.ReturnLegs;
|
||||
/// </summary>
|
||||
public static class PositionValueCalc
|
||||
{
|
||||
/// <summary>持仓价值 = 利息端 × 方向因子 + 浮动端。</summary>
|
||||
public static decimal Calc(decimal interestProfitSum, decimal posiProfitSum, decimal ratio = 1m)
|
||||
/// <summary>持仓价值 = 利息端 × 方向因子 + 浮动端。ratio: 收取=1, 支付=-1。</summary>
|
||||
public static decimal Calc(decimal interestProfitSum, decimal posiProfitSum, int ratio = 1)
|
||||
=> interestProfitSum * ratio + posiProfitSum;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user