using YLErp.Models.Tag; namespace YLErp.DBModels { /// /// /// public class OtcTradeDetail : OtcTradeDto { /// /// 期初交易数量 /// public double? TradeOriginalAmount { get; set; } public string SyntheticUnderlyingTipsInfo { get; set; } //---------------------------------------- public int TcId { get; set; } public int ParentTcId { get; set; } /// /// 了结日期 /// public DateTime? TcValueDate { get; set; } /// /// 操作类型 /// public string TcAction { get; set; } /// /// 行权方式 /// public string TcExerciseWay { get; set; } /// /// 平仓数量 /// public double? TcUnwindTradeAmount { get; set; } /// /// 平仓单价 /// public double? TcUnwindPrice { get; set; } /// /// 平仓单价比例 /// public double? TcUnwindPricePercent { get; set; } /// /// 平仓份额 /// public double? TcUnwindNotional { get; set; } /// /// 平仓行权比例 /// public double? TcUnwindPercent { get; set; } /// /// 期末价格(包含亚式的执行均价) /// public double? TcFinalPrice { get; set; } /// /// 交割金额(包含额外金额,不包含权利金) /// public double? TcAmount { get; set; } /// /// 行权份额 /// public double? TcNotional { get; set; } /// /// 行权数量(其实可以和TcUnwindTradeAmount合并) /// public double? TcTradeAmount { get; set; } /// /// 实际行权价 /// public double? ActualStrike { get; set; } /// /// 了结次数 /// public int TcCount { get; set; } /// /// 持仓市值 /// public double? PositionPv { get; set; } /// /// 持仓盈亏 /// public double? PositionPnl { get; set; } private double? tcTradePrice; /// /// 了结部分成交金额 /// public double? TcTradePrice { get { if (tcTradePrice != null) { return tcTradePrice; } else if (TradeType == "远期") { return (TradePrice ?? 0) * (TcUnwindPercent ?? 0) * (-1); } else { return (TradePrice ?? 0) * (TcUnwindPercent ?? 0) * (BuySell == "买入" ? -1 : 1); ; } } set { tcTradePrice = value; } } private double? winloss; /// /// 实现盈亏(单条了结) /// public double? WinLoss { get { if (winloss != null) { return winloss.Value; } return (TcAmount ?? 0) + (TcTradePrice ?? 0); } set => winloss = value; } /// /// 了结顺序 /// public int TcSequence { get; set; } = 1; /// /// 了结溢价总额 /// public double? TcTradePremium { get; set; } public bool IsLastAction { get; set; } /// /// 剩余交易日 /// public int RestTradeDays { get; set; } /// /// 交易期限 /// public int AllTradeDays { get; set; } public string GroupTradeType { get; set; } public string KnockInOutStatusObservation { get; set; } #region 导出全量字段模板用到,未进行赋值,会在生成文档时进行赋值 /// /// 合约名称 /// public string UnderlyingName { get; set; } /// /// 销售人员 /// public string SalesName { get; set; } /// /// 权利金(存续) /// public double PositionSinglePv { get; set; } /// /// 当前持仓期权费总额 /// public double PositionTradePrice { get; set; } /// /// 亚式_均价起算日 /// public DateTime Asian_AveragingPeriodStartDate { get; set; } /// /// 亚式_均价计算 /// public string Asian_PayoffType { get; set; } /// /// 亚式_行权价类型 /// public string Asian_StrikeType { get; set; } /// /// 亚式_杠杆率 /// public double Asian_StrikeGearingFactor { get; set; } /// /// 障碍_障碍类型 /// public string Barrier_Type { get; set; } /// /// 障碍_障碍价格 /// public double Barrier_Price { get; set; } /// /// 障碍_高障碍价格 /// public double UpperBarrier_Price { get; set; } /// /// 障碍_补偿支付 /// public string Barrier_RebateType { get; set; } /// /// 障碍_补偿金额 /// public double Barrier_Rebate { get; set; } /// /// 障碍_高障碍补偿金额 /// public double Barrier_RebateHigh { get; set; } /// /// 障碍_障碍偏移 /// public string Barrier_Shift { get; set; } /// /// 障碍_观察方式 /// public string Barrier_Discrete { get; set; } /// /// 二元_二元类型 /// public string Binary_PayoffType { get; set; } /// /// 二元_补偿金额 /// public double Binary_CashOrNothingAmount { get; set; } /// /// 二元_高障碍价格 /// public double Binary_UpperBarrier { get; set; } /// /// 二元_高障碍补偿金额 /// public double Binary_CashOrNothingAmountHigh { get; set; } /// /// 二元_观察方式 /// public string Binary_MonitorType { get; set; } /// /// 二元_补偿支付 /// public string Binary_RebateType { get; set; } #endregion /// /// 交易标签 /// public List Tags { get; set; } /// /// 标签值导出 /// public string OutputTags { get; set; } } }