| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282 |
- using System;
- using System.Collections.Generic;
- using System.Linq;
- using System.Text;
- //----------------------------------------------------------------
- //Module Name: $safeprojectname$
- //Purpose:
- //CopyRight: Muchinfo
- //History:
- //----------------------------------------------------------------
- //DateTime 2016/6/8 14:26:19
- //Author
- //Description Create
- //----------------------------------------------------------------
- using System.Windows.Media;
- using Muchinfo.MTPClient.Data.Helper;
- namespace Muchinfo.MTPClient.Data.Quote
- {
- public class OHLCDataPoints
- {
- public OHLCDataPoints()
- {
-
- }
- /// <summary>
- /// 开高低收量,总额
- /// </summary>
- /// <param name="date">时间</param>
- /// <param name="open">开盘价</param>
- /// <param name="high">最高</param>
- /// <param name="low">最低</param>
- /// <param name="close">平仓价</param>
- /// <param name="volume">量</param>
- /// <param name="totleTurnovers">总额</param>
- public OHLCDataPoints(double date, double open, double high, double low, double close, double volume, double totleTurnovers)
- {
- Date = date;
- Open = open;
- High = high;
- Low = low;
- Close = close;
- Volume = volume;
- TotleTurnovers = totleTurnovers;
- }
- public OHLCDataPoints(double close,double date)
- {
- Close = close;
- Open = close;
- High = close;
- Low = close;
-
- Date = date;
- }
- /// <summary>
- /// 高开低收
- /// </summary>
- /// <param name="close"></param>
- /// <param name="date"></param>
- /// <param name="volume"></param>
- /// <param name="volume"></param>
- public OHLCDataPoints(double close, double date, double volume, double turnovers)
- {
- Close = close;
- Open = close;
- High = close;
- Low = close;
- Volume = volume;
- Date = date;
- TotleTurnovers = turnovers;
- }
- /// <summary>
- /// 收盘价
- /// </summary>
- public double Close { get; set; }
- /// <summary>
- /// 开盘价
- /// </summary>
- public double Open { get; set; }
- /// <summary>
- /// 最高价
- /// </summary>
- public double High { get; set; }
- /// <summary>
- /// 最低价
- /// </summary>
- public double Low { get; set; }
- /// <summary>
- /// 成交量
- /// </summary>
- public double Volume { get; set; }
- /// <summary>
- /// 时间
- /// </summary>
- public double Date { get; set; }
- /// <summary>
- /// 上一周期的收盘
- /// </summary>
- public double PreClose { get; set; }
- /// <summary>
- /// 成交金额
- /// </summary>
- public double TotleTurnovers { get; set; }
- public double CloseAvg { get; set; }
- /// <summary>
- /// 涨跌幅
- /// </summary>
- public string IncreasePercent
- {
- get
- {
- if (Close <= 0 || PreClose <= 0)
- {
- return "--";
- }
- return ((Close - PreClose)/PreClose).ToString("p2");
- }
- }
- /// <summary>
- /// 涨跌
- /// </summary>
- public string Increase
- {
- get
- {
- if (Close <= 0 || PreClose <= 0)
- {
- return "--";
- }
- return (Close - PreClose).ToString("f2");
- }
- }
- /// <summary>
- /// 振 幅
- /// </summary>
- public string Amplitude
- {
- get
- {
- if (PreClose > 0)
- {
- return ((High - Low) / PreClose).ToString("p2");
- }
- return "--";
- }
- }
- public string PriceFormat { get; set; }
- public DateTime DateTime
- {
- get
- {
- return DateTime.FromOADate(Date);
- }
- }
- public Brush OpenBrush
- {
- get
- {
- return GetBrush(Open, PreClose);
- }
- }
- public Brush CloseBrush
- {
- get
- {
- return GetBrush(Close, PreClose);
- }
- }
-
- /// <summary>
- /// 最高
- /// </summary>
- public Brush HighBrush
- {
- get
- {
- return GetBrush(High, PreClose);
- }
- }
- /// <summary>
- /// 最低颜色
- /// </summary>
- public Brush LowBrush
- {
- get
- {
- return GetBrush(Close, PreClose);
- }
- }
- /// <summary>
- /// 涨跌颜色
- /// </summary>
- public Brush IncreaseBrush
- {
- get
- {
- return GetBrush(Close, PreClose);
- }
- }
- private Brush AscBrush
- {
- get
- {
- return ResourceHelper.GetFromResource<Brush>("QuoteAscBrush");
-
- }
- }
- private Brush DecBrush
- {
- get
- {
- return ResourceHelper.GetFromResource<Brush>("QuoteDecBrush");
-
- }
- }
- private Brush DefaultBrush
- {
- get
- {
- return ResourceHelper.GetFromResource<Brush>("DataGridForeground");
-
- }
- }
- /// <summary>
- /// Gets the brush.
- /// </summary>
- /// <param name="source">The source.</param>
- /// <param name="destination">The destination.</param>
- /// <returns>Brush.</returns>
- private Brush GetBrush(double source, double destination)
- {
- if (source == 0)
- {
- return DefaultBrush;
- }
- if (source > destination)
- {
- return AscBrush;
- }
- if (source < destination)
- {
- return DecBrush;
- }
- return DefaultBrush;
- }
- }
- }
|