增加vega(1bp)希腊值

This commit is contained in:
尹峰
2026-08-20 14:15:12 +08:00
parent 30b3007307
commit 5ee510aa35
11 changed files with 110 additions and 18 deletions
@@ -0,0 +1,51 @@
using YLErp.Modules.CalculationModule;
using YLErp.Modules.EodModule;
namespace YLErp.BasicTests
{
[TestClass]
public class GLMSGreeksHandleServiceTest
{
[TestMethod]
public void Handle_NonRateAsset_CalculatesVega1bpBeforeRateFilter()
{
var service = new GLMSGreeksHandleService();
var dto = new EodPositionRisksDTO
{
Vega = 2500d
};
var underlying = new underlying_manager
{
UnderlyingInstrumentType = ConsGlobal.InstrumentType.Stock
};
service.Handle(dto, underlying);
Assert.IsNotNull(dto.Vega_1bp);
Assert.AreEqual(0.25d, dto.Vega_1bp.Value, 1e-12);
Assert.IsNull(dto.Vega_r);
Assert.IsNull(dto.Vega_r_1bp);
}
[TestMethod]
public void Handle_TradeValueResult_NonRateAsset_CalculatesVega1bpBeforeRateFilter()
{
var service = new GLMSGreeksHandleService();
var result = new TradeValueResult
{
Vega = 2500d
};
var underlying = new underlying_manager
{
UnderlyingInstrumentType = ConsGlobal.InstrumentType.Stock
};
service.Handle(new trade(), result, underlying);
Assert.IsNotNull(result.Vega_1bp);
Assert.AreEqual(0.25d, result.Vega_1bp.Value, 1e-12);
Assert.IsNull(result.Vega_r);
Assert.IsNull(result.Vega_r_1bp);
}
}
}