refactor(return-leg): QuantityRollforward 改名 QtyRollforward
代码里统一用 Qty 表示数量, 命名更简洁。 文件/类/测试类同步改名: Quantity→Qty。
This commit is contained in:
+10
-13
@@ -6,58 +6,55 @@ namespace UnitTestProject.Modules.SwapModule.ReturnLegs
|
||||
/// 标的端数量递推测试。验证开仓/平仓/公司行为场景下数量正确推进。
|
||||
/// </summary>
|
||||
[TestClass]
|
||||
public class QuantityRollforwardTest
|
||||
public class QtyRollforwardTest
|
||||
{
|
||||
[TestMethod]
|
||||
public void 无交易_数量不变()
|
||||
{
|
||||
Assert.AreEqual(1000m, QuantityRollforward.Calc(1000m, 0m, 0m));
|
||||
Assert.AreEqual(1000m, QtyRollforward.Calc(1000m, 0m, 0m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 开仓_数量增加()
|
||||
{
|
||||
Assert.AreEqual(1500m, QuantityRollforward.Calc(1000m, 500m, 0m));
|
||||
Assert.AreEqual(1500m, QtyRollforward.Calc(1000m, 500m, 0m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 平仓_数量减少()
|
||||
{
|
||||
Assert.AreEqual(600m, QuantityRollforward.Calc(1000m, 0m, 400m));
|
||||
Assert.AreEqual(600m, QtyRollforward.Calc(1000m, 0m, 400m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 开仓加平仓_净值()
|
||||
{
|
||||
Assert.AreEqual(1200m, QuantityRollforward.Calc(1000m, 500m, 300m));
|
||||
Assert.AreEqual(1200m, QtyRollforward.Calc(1000m, 500m, 300m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 全平_数量归零()
|
||||
{
|
||||
Assert.AreEqual(0m, QuantityRollforward.Calc(1000m, 0m, 1000m));
|
||||
Assert.AreEqual(0m, QtyRollforward.Calc(1000m, 0m, 1000m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 超额平仓_不低于零()
|
||||
{
|
||||
Assert.AreEqual(0m, QuantityRollforward.Calc(1000m, 0m, 1500m));
|
||||
Assert.AreEqual(0m, QtyRollforward.Calc(1000m, 0m, 1500m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 公司行为送股_数量增加_默认不影响()
|
||||
{
|
||||
// 默认 corpActionDeltaQty=0, 行为不变
|
||||
Assert.AreEqual(1000m, QuantityRollforward.Calc(1000m, 0m, 0m));
|
||||
// 送股 10%: 1000 × 10% = 100
|
||||
Assert.AreEqual(1100m, QuantityRollforward.Calc(1000m, 0m, 0m, corpActionDeltaQty: 100m));
|
||||
Assert.AreEqual(1000m, QtyRollforward.Calc(1000m, 0m, 0m));
|
||||
Assert.AreEqual(1100m, QtyRollforward.Calc(1000m, 0m, 0m, corpActionDeltaQty: 100m));
|
||||
}
|
||||
|
||||
[TestMethod]
|
||||
public void 公司行为拆股_数量翻倍()
|
||||
{
|
||||
// 1拆2: 数量翻倍, corpActionDeltaQty = 当前数量
|
||||
Assert.AreEqual(2000m, QuantityRollforward.Calc(1000m, 0m, 0m, corpActionDeltaQty: 1000m));
|
||||
Assert.AreEqual(2000m, QtyRollforward.Calc(1000m, 0m, 0m, corpActionDeltaQty: 1000m));
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user