Files
zszq-trs/YLErpDAL/Modules/TradeRiskCalcModule/Abstract/ITradeRiskCalcContext.cs
T
2024-05-09 14:06:26 +08:00

65 lines
1.9 KiB
C#

using YLErp.Abstract;
using YLErp.Abstract.DataProviders;
using YLErp.Modules.CalculationModule.Abstract;
namespace YLErp.Modules.TradeRiskCalcModule.Abstract
{
public interface ITradeRiskCalcContext : IErrorHandler
{
/// <summary>
/// 估值日期
/// </summary>
DateTime ValueDate { get; }
/// <summary>
/// 上个交易日(场外交易计算用这个)
/// </summary>
DateTime PreValueDate { get; }
/// <summary>
/// 上个结算日(场外交易计算用不到这个)
/// </summary>
DateTime PreSettleDate { get; }
/// <summary>
/// 波动率类型
/// </summary>
string VolType { get; }
/// <summary>
/// 期权价值计算数据接口
/// </summary>
IOptionCalcDataProvider OptionCalcDataProvider { get; }
/// <summary>
/// 上个交易日结算价接口
/// </summary>
IEodPriceProvider YdEodPriceProvider { get; }
/// <summary>
/// 上日交易历史数据接口
/// </summary>
ITradeHisDataProvider YdTradeHisDataProvider { get; }
/// <summary>
/// 上日持仓数据接口
/// </summary>
ITradeRiskEodPositionDataProvider YdEodPositionDataProvider { get; }
/// <summary>
/// 获取交易的现金交割
/// </summary>
IEnumerable<trade_cash> GetTrade_Cashes(IEnumerable<int> tradeIds);
/// <summary>
/// 生成当前风险期权计算上下文
/// </summary>
IOtcTradeValueCalcContext CreateOptionValueCalcContext(double sysRiskFreeRate);
/// <summary>
/// 根据期权价值计算上下文生成对冲损益计算上下文
/// </summary>
IHedgePnlCalcContext CreateHedgePnlCalcContext(IOtcTradeValueCalcContext optionValueCaclContext);
}
}