HoldingOrder20.cs 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316
  1. using Muchinfo.MTPClient.Data.Enums;
  2. using Muchinfo.MTPClient.Data.Helper;
  3. using Muchinfo.MTPClient.Resources;
  4. namespace Muchinfo.MTPClient.Data.Model.Account
  5. {
  6. using System;
  7. /// <summary>
  8. /// 持仓汇总2.0
  9. /// </summary>
  10. public class HoldingOrder20 : OrderBase
  11. {
  12. #region Fields
  13. /// <summary>
  14. /// 成交单号
  15. /// </summary>
  16. private decimal _tradeid;
  17. /// <summary>
  18. /// 账号Id
  19. /// </summary>
  20. private decimal _accountid;
  21. /// <summary>
  22. /// 持仓价格
  23. /// </summary>
  24. private decimal _holderPrice;
  25. /// <summary>
  26. /// 持仓数量
  27. /// </summary>
  28. private decimal _holderqty;
  29. /// <summary>
  30. /// 持仓金额
  31. /// </summary>
  32. private decimal _holderamount;
  33. /// <summary>
  34. /// 建仓价格
  35. /// </summary>
  36. private decimal _openprice;
  37. /// <summary>
  38. /// 成交金额
  39. /// </summary>
  40. private decimal _tradeamount;
  41. /// <summary>
  42. /// 冻结数量
  43. /// </summary>
  44. private decimal _freezeqty;
  45. /// <summary>
  46. ///持仓天数
  47. /// </summary>
  48. private decimal _holderdays;
  49. /// <summary>
  50. /// 释放持仓金额
  51. /// </summary>
  52. private decimal _releaseamount;
  53. /// <summary>
  54. /// 建仓数量
  55. /// </summary>
  56. private decimal _openqty;
  57. /// <summary>
  58. /// 交易时间
  59. /// </summary>
  60. private DateTime _tradetime;
  61. /// <summary>
  62. /// 昨结价
  63. /// </summary>
  64. private decimal _preClosePrice;
  65. /// <summary>
  66. /// 结算价
  67. /// </summary>
  68. private decimal _preSettlePrice;
  69. /// <summary>
  70. /// 持仓盈亏
  71. /// </summary>
  72. private decimal _profitLoss;
  73. /// <summary>
  74. /// 最新价
  75. /// </summary>
  76. private decimal _lastPrice;
  77. #endregion Fields
  78. /// <summary>
  79. /// Sets and gets 成交单号
  80. /// Changes to that property's value raise the PropertyChanged event.
  81. /// </summary>
  82. [PropertyDisc("TradeID")]
  83. public decimal TradeID
  84. {
  85. get { return _tradeid; }
  86. set { Set(() => TradeID, ref _tradeid, value); }
  87. }
  88. /// <summary>
  89. /// 账户ID
  90. /// </summary>
  91. public decimal AccountID
  92. {
  93. get { return _accountid; }
  94. set { Set(() => AccountID, ref _accountid, value); }
  95. }
  96. /// <summary>
  97. /// Sets and gets 持仓价
  98. /// Changes to that property's value raise the PropertyChanged event.
  99. /// </summary>
  100. [PropertyDisc("HolderPrice")]
  101. public decimal HolderPrice
  102. {
  103. get
  104. {
  105. return _holderPrice;
  106. }
  107. set
  108. {
  109. Set(() => HolderPrice, ref _holderPrice, value);
  110. }
  111. }
  112. [PropertyDisc("HolderQty")]
  113. public decimal HolderQty
  114. {
  115. get
  116. {
  117. return _holderqty;
  118. }
  119. set
  120. {
  121. _holderqty = value;
  122. }
  123. }
  124. [PropertyDisc("HolderAmount")]
  125. public decimal HolderAmount
  126. {
  127. get
  128. {
  129. return _holderamount;
  130. }
  131. set
  132. {
  133. _holderamount = value;
  134. }
  135. }
  136. [PropertyDisc("OpenPrice")]
  137. public decimal OpenPrice
  138. {
  139. get
  140. {
  141. return _openprice;
  142. }
  143. set
  144. {
  145. Set(() => OpenPrice, ref _openprice, value);
  146. }
  147. }
  148. [PropertyDisc("TradeAmount")]
  149. public decimal TradeAmount
  150. {
  151. get
  152. {
  153. return _tradeamount;
  154. }
  155. set
  156. {
  157. _tradeamount = value;
  158. }
  159. }
  160. [PropertyDisc("FreezeQty")]
  161. public decimal FreezeQty
  162. {
  163. get
  164. {
  165. return _freezeqty;
  166. }
  167. set
  168. {
  169. _freezeqty = value;
  170. }
  171. }
  172. public decimal HolderDays
  173. {
  174. get
  175. {
  176. return _holderdays;
  177. }
  178. set
  179. {
  180. _holderdays = value;
  181. }
  182. }
  183. public decimal ReleaseAmount
  184. {
  185. get
  186. {
  187. return _releaseamount;
  188. }
  189. set
  190. {
  191. _releaseamount = value;
  192. }
  193. }
  194. [PropertyDisc("OpenQty")]
  195. public decimal OpenQty
  196. {
  197. get
  198. {
  199. return _openqty;
  200. }
  201. set
  202. {
  203. _openqty = value;
  204. }
  205. }
  206. [PropertyDisc("TradeTime")]
  207. public DateTime TradeTime
  208. {
  209. get
  210. {
  211. return _tradetime;
  212. }
  213. set
  214. {
  215. Set(() => TradeTime, ref _tradetime, value);
  216. RaisePropertyChanged(() => TradeTimeDisplay);
  217. }
  218. }
  219. [PropertyDisc("PreClosePrice")]
  220. public decimal PreClosePrice
  221. {
  222. get { return _preClosePrice; }
  223. set { Set(() => PreClosePrice, ref _preClosePrice, value); }
  224. }
  225. [PropertyDisc("ProfitLoss")]
  226. public decimal ProfitLoss
  227. {
  228. get { return _profitLoss; }
  229. set { Set(() => ProfitLoss, ref _profitLoss, value); }
  230. }
  231. [PropertyDisc("PreSettlePrice")]
  232. public decimal PreSettlePrice
  233. {
  234. get { return _preClosePrice; }
  235. set { Set(() => PreSettlePrice, ref _preSettlePrice, value); }
  236. }
  237. public decimal LastPrice
  238. {
  239. get { return _lastPrice; }
  240. set { Set(() => LastPrice, ref _lastPrice, value); }
  241. }
  242. public string TradeTimeDisplay
  243. {
  244. get
  245. {
  246. return TradeTime.ToString("yyyy-MM-dd HH:mm:ss");
  247. }
  248. }
  249. public string StrOpenDirection
  250. {
  251. get
  252. {
  253. return Direction.Discription();
  254. }
  255. }
  256. /// <summary>
  257. /// Gets the hold price display.
  258. /// </summary>
  259. /// <value>The hold price display.</value>
  260. public string HoldPriceDisplay
  261. {
  262. get { return HolderPrice.ToString(PriceFormat); }
  263. }
  264. /// <summary>
  265. /// Gets the open price display.
  266. /// </summary>
  267. /// <value>The open price display.</value>
  268. public string OpenPriceDisplay
  269. {
  270. get { return OpenPrice.ToString(PriceFormat); }
  271. }
  272. public string PreClosePriceDisplay
  273. {
  274. get { return PreClosePrice.ToString(PriceFormat); }
  275. }
  276. public string PreSettlePriceDisplay
  277. {
  278. get { return PreSettlePrice.ToString(PriceFormat); }
  279. }
  280. public string ProfitLossDisplay
  281. {
  282. get { return ProfitLoss.ToString("F2"); }
  283. }
  284. }
  285. }