Files
zszq-trs/YLErpDAL/Model/EodPnlTradePosition.cs
T
2024-05-09 14:06:26 +08:00

288 lines
6.5 KiB
C#

using BaseOUDAL;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data;
namespace YLErp.Model
{
[NotMapped]
public class EodTradePositionTemp<T> where T : EodPnl
{
public T eodPnl { get; set; }
public eod_trade eodTrade { get; set; }
public double? TotalPnL { get; set; }
}
public class EodTradePositionReq : BaseSearchReq
{
#region - 公共属性 ------------------------------------------------------------
/// <summary>
///
/// </summary>
public int id { get; set; }
/// <summary>
/// 簿记账户
/// </summary>
public string BookName { get; set; }
/// <summary>
/// 簿记账户信息
/// </summary>
public int? BookId { get; set; }
/// <summary>
/// 估值日
/// </summary>
public DateTime? ValueDate { get; set; }
public DateTime ValueDateStart { set; get; }
public DateTime ValueDateEnd { set; get; }
/// <summary>
/// 交易信息
/// </summary>
public int? TradeId { get; set; }
/// <summary>
/// 资产类型(香草期权等)
/// </summary>
public string AssetType { get; set; }
/// <summary>
/// 资产代码
/// </summary>
public string AssetCode { get; set; }
/// <summary>
/// 持仓类型
/// </summary>
public string PositionType { get; set; }
/// <summary>
/// 结构类型
/// </summary>
public string TradeType { get; set; }
/// <summary>
/// 名义本金
/// </summary>
public double? Notional { get; set; }
/// <summary>
/// 昨日价值
/// </summary>
public double? LastPv { get; set; }
/// <summary>
///
/// </summary>
public double? Pv { get; set; }
/// <summary>
/// 当日价值
/// </summary>
public double? DailyPnL { get; set; }
/// <summary>
/// 估值盈亏
/// </summary>
public double? EstimatePnL { get; set; }
/// <summary>
///
/// </summary>
public double? PnLPriceResidual { get; set; }
/// <summary>
///
/// </summary>
public double? PnLPrice { get; set; }
/// <summary>
///
/// </summary>
public double? PnLDelta { get; set; }
/// <summary>
///
/// </summary>
public double? PnLGamma { get; set; }
/// <summary>
///
/// </summary>
public double? PnLVega { get; set; }
/// <summary>
///
/// </summary>
public double? PnLTheta { get; set; }
/// <summary>
///
/// </summary>
public double? PnLRho { get; set; }
/// <summary>
///
/// </summary>
public double? PnLVolResidual { get; set; }
/// <summary>
///
/// </summary>
public double? PnLPriceVolCross { get; set; }
/// <summary>
///
/// </summary>
public double? PnLVol { get; set; }
/// <summary>
/// 未归因盈亏
/// </summary>
public double? UnexplainedPnL { get; set; }
/// <summary>
/// 已归因盈亏
/// </summary>
public double? ExplainedPnL { get; set; }
/// <summary>
/// 操作人_optid
/// </summary>
public int? OptId { get; set; }
/// <summary>
/// 操作人_optname
/// </summary>
public string OptName { get; set; }
/// <summary>
/// 操作时间_createdate
/// </summary>
public DateTime? OptDate { get; set; }
public DateTime OptDateStart { set; get; }
public DateTime OptDateEnd { set; get; }
public string GroupStr { get; set; }
public List<string> TradeTypesList
{
get
{
return (TradeTypes + "").Split(',').ToList();
}
}
public string TradeTypes { get; set; }
public double? Strike { get; set; }
public DateTime? ExerciseDate { get; set; }
public string ExerciseMode { get; set; }
public string UnderlyingAssetClass { get; set; }
public string UnderlyingCode { get; set; }
public List<int> BookIdList
{
get
{
if (BookIds == null)
{
BookIds = "";
}
return BookIds.Split(',').Select(c => Convert.ToInt32(c)).ToList();
}
}
public string BookIds { get; set; }
public string TraderIds { get; set; }
public List<int> TraderIdList
{
get
{
if (TraderIds == null)
{
TraderIds = "";
}
return TraderIds.Split(',').Select(c => Convert.ToInt32(c)).ToList();
}
}
#endregion ----------------------------------------------------------------------
/// <summary>
/// 交易编码集合
/// </summary>
public List<string> TradeNumberList { get; set; }
/// <summary>
/// 簿记账户集合
/// </summary>
public List<string> AssetBookNameList { get; set; }
/// <summary>
/// 交易类型集合
/// </summary>
public List<string> TradeTypeList { get; set; }
/// <summary>
/// 交易方向集合
/// </summary>
public List<string> BuySellList { get; set; }
/// <summary>
/// 持仓类型集合
/// </summary>
public List<string> PositionTypeList { get; set; }
/// <summary>
/// 标的代码集合
/// </summary>
public List<string> UnderlyingCodeList { get; set; }
/// <summary>
/// 持仓数量范围开始
/// </summary>
public double? TradeAmountStart { get; set; }
/// <summary>
/// 持仓数量范围结束
/// </summary>
public double? TradeAmountEnd { get; set; }
/// <summary>
/// 持仓成本范围开始
/// </summary>
public double? CostStart { get; set; }
/// <summary>
/// 持仓成本范围结束
/// </summary>
public double? CostEnd { get; set; }
}
}