41 lines
1.7 KiB
C#
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);
|
|
}
|
|
}
|
|
}
|