-
Notifications
You must be signed in to change notification settings - Fork 1
/
RateInfo.cs
60 lines (51 loc) · 1.53 KB
/
RateInfo.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
using System;
using System.Collections;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
namespace HSTViewer
{
[Serializable]
public class RateInfo : IComparable
{
public RateInfo(int digits)
{
digitNum = digits;
}
int digitNum = 2;
public long Index { get; set; }
public DateTime CTM { get; set; }
public double Open { get; set; }
public double High { get; set; }
public double Low { get; set; }
public double Close { get; set; }
public long Volume { get; set; }
/// <summary>
/// 波幅总量
/// </summary>
public int RangePoints
{
get
{
string nFormat = (digitNum == 0) ? "0" : string.Concat("N", digitNum);
int totalPoints = int.Parse((High - Low).ToString(nFormat).Replace(".", ""));
return (Open <= Close) ? totalPoints : 0 - totalPoints;
}
}
public string FormatPrice(double price)
{
string nFormat = (digitNum == 0) ? "0" : string.Concat("N", digitNum);
return price.ToString(nFormat).Replace(",","").Replace(" ","");
}
public int CompareTo(object obj)
{
if (obj != null && obj is RateInfo)
{
return (int)(Index - ((RateInfo)obj).Index);
}
return 0;
}
public int UnusedEmptySize { get; set; }
}
}