从山证v2.3.0拷贝
This commit is contained in:
@@ -0,0 +1,46 @@
|
||||
using YLErp.Abstract;
|
||||
using YLErp.Abstract.DataProviders;
|
||||
using YLErp.Modules.CalculationModule.Abstract;
|
||||
using YLErp.Modules.DataProviderModule;
|
||||
|
||||
namespace YLErp.Modules.TradeRiskCalcModule
|
||||
{
|
||||
/// <summary>
|
||||
///
|
||||
/// </summary>
|
||||
class OptionCalcDataProvider : IOptionCalcDataProvider
|
||||
{
|
||||
public OptionCalcDataProvider(TradeRiskCalcTestContextBase context, IPriceProvider underlyingPriceProvider = null, IPriceProvider underlyingSettlePriceProvider = null)
|
||||
{
|
||||
if (underlyingPriceProvider != null)
|
||||
{
|
||||
UnderlyingPriceProvider = underlyingPriceProvider;
|
||||
UnderlyingSettlePriceProvider = underlyingSettlePriceProvider;
|
||||
}
|
||||
else if (context.IsEodSettle)
|
||||
{
|
||||
UnderlyingPriceProvider = new EodPriceProvider(context.ValueDate).GetPriceProvider();
|
||||
UnderlyingSettlePriceProvider = new EodPriceProvider(context.ValueDate).GetPriceProvider(DBModels.SettlementTypeEnum.SettlePrice);
|
||||
}
|
||||
else
|
||||
{
|
||||
UnderlyingPriceProvider = DataCacheProvider.GetUnderlyingDataSource();
|
||||
UnderlyingSettlePriceProvider = DataCacheProvider.GetUnderlyingDataSource();
|
||||
}
|
||||
|
||||
UnderlyingDataProvider = new UnderlyingDataProvider();
|
||||
TradeExtendDataProvider = new TradeExtendDataProvider(InnerHelper.UserInfo);
|
||||
VolatilityDataProvider = new VolatilityDataProvider(context.ValueDate);
|
||||
}
|
||||
|
||||
public IPriceProvider UnderlyingPriceProvider { get; }
|
||||
|
||||
public IPriceProvider UnderlyingSettlePriceProvider { get; }
|
||||
|
||||
public IUnderlyingDataProvider UnderlyingDataProvider { get; }
|
||||
|
||||
public ITradeExtendDataProvider TradeExtendDataProvider { get; }
|
||||
|
||||
public IVolatilityDataProvider VolatilityDataProvider { get; }
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user