Files
zszq-trs/UnitTestProject/Modules/CalcModules/SwapCalcTest.cs
T
2024-05-09 14:06:26 +08:00

41 lines
1.7 KiB
C#

using YLErp.BLL.MarginCalculation;
using YLErp.Modules.DataProviderModule;
namespace YLErp.Modules.CalcModules
{
[TestClass]
public class SwapCalcTest
{
[TestMethod]
public void TestCalc1()
{
//var db = DbContextFactory.GetYLDbContext();
//var td = db.trade.AsNoTracking().FirstOrDefault(n => n.TradeNumber == "SHBX-BX-21051203");
//var tdswap = db.trade_swap.FirstOrDefault(n => n.TradeId == td.id);
//var priceProvidr = new ManualPriceProvider();
//priceProvidr.SetPrice("AG00", 5262);
//var optionValue = PayoffSwapCalcService.CalcValue(td, tdswap, new DateTime(2021, 5, 12), priceProvidr, true);
//Console.WriteLine(optionValue.Pv);
//priceProvidr = new ManualPriceProvider();
//priceProvidr.SetPrice("AG00", 5661.36);
//optionValue = PayoffSwapCalcService.CalcValue(td, tdswap, new DateTime(2021, 5, 12), priceProvidr, true);
//Console.WriteLine(optionValue.Pv);
var db = DbContextFactory.GetYLDbContext();
var td = db.trade.AsNoTracking().FirstOrDefault(n => n.TradeNumber == "CW20180051C3248");
var date = new DateTime(2022, 5, 30);
var priceProvider = new EodPriceProvider(date);
var req = new RunMarginCalculationReq(OptUserInfo.SystemUser)
{
tradeList = new System.Collections.Generic.List<trade> { td },
settleDate = date,
PriceProvider = priceProvider.GetPriceProvider(),
CalcMarginType = Enums.CalcMarginTypeEnum.EodMargin,
volType = "持仓"
};
GuoTouMarginCalculation.TradeMargin(req, td);
}
}
}