利率债TRS保证金期限档位切换为<5y/5y-10y/10y-30y/>30y

,确认书字段调整
This commit is contained in:
锦麟 王
2026-04-29 10:51:26 +08:00
parent 8e88f5ded9
commit 31d90d2612
18 changed files with 176 additions and 265 deletions
@@ -244,6 +244,41 @@ namespace YLErp.Plugins.GuoLian.DocumentGenerator
dic["期初预付比例"] = "0.0000";
dic["期初预付金额"] = "0.00";
}
bool posiLong = swapPosition?.PositionType == (int)PositionTypeFlag.Short ? false : true;
// 计算平仓线、预警线、档位值(利率债TRS,固定4档)
var maintainRatePercent = (double)(clientMarginRate?.maintain_rate ?? 0) * 100; // 维持保证金率 A(%)
if (maintainRatePercent > 0)
{
if (posiLong)
{
// 客户看多:档位n = 100 - n * A
dic["平仓线"] = (100 - 4 * maintainRatePercent).ToString("0.##");
dic["预警线"] = (100 - 3 * maintainRatePercent).ToString("0.##");
dic["档位1"] = (100 - 1 * maintainRatePercent).ToString("0.##");
dic["档位2"] = (100 - 2 * maintainRatePercent).ToString("0.##");
dic["档位3"] = (100 - 3 * maintainRatePercent).ToString("0.##");
dic["档位4"] = (100 - 4 * maintainRatePercent).ToString("0.##");
}
else
{
// 客户看空:档位n = 100 + n * A
dic["平仓线"] = (100 + 4 * maintainRatePercent).ToString("0.##");
dic["预警线"] = (100 + 3 * maintainRatePercent).ToString("0.##");
dic["档位1"] = (100 + 1 * maintainRatePercent).ToString("0.##");
dic["档位2"] = (100 + 2 * maintainRatePercent).ToString("0.##");
dic["档位3"] = (100 + 3 * maintainRatePercent).ToString("0.##");
dic["档位4"] = (100 + 4 * maintainRatePercent).ToString("0.##");
}
}
else
{
dic["平仓线"] = "";
dic["预警线"] = "";
dic["档位1"] = "";
dic["档位2"] = "";
dic["档位3"] = "";
dic["档位4"] = "";
}
// 期初预付金利率(InterestMode == 初始预付金)
var initialMarginPosition = swapPositions