110,537
社区成员
发帖
与我相关
我的任务
分享
//历史价格集合
var list = dal.GetModelList(dal.SerialSafeSearchkey(mo)).OrderByDescending(x => x.PriceDateTime);
System.Diagnostics.Debug.WriteLine("GetModelList时间:"+ t.GetElapsedTime());
//股票集合
List<Model.stockcodelist> stlist = new List<Model.stockcodelist>();
foreach (var item in StockCodeList)
{
string code = item.Substring(2);
//当前股票价格集
var temp = list.Where(x => x.StockCode == code);
if (temp.Count() > 0)
{
Model.StockHistoryPrices_MD now = temp.ElementAt(0);
//三日数据集
var threeq = temp.Take(3);
//5日数据集
var fiveq = temp.Take(5);
//七日数据集
var sevenq = temp.Take(7);
//十日数据集
var tenq = temp.Take(10);
stlist.Add(new
Model.stockcodelist
{
stockcode = code,
data = now.PriceDateTime,
price = now.EndPrice,
ChangePrice = now.ChangePrice,
DailyVolume = now.DailyVolume,
TurnoverTotal = now.TurnoverTotal,
OfPrice = now.OfPrice
,
threeDailyVolume = threeq.Sum(x => x.DailyVolume),
threeTurnoverTotal =threeq.Sum(x => x.TurnoverTotal),
threeOfPrice = threeq.Last().EndPrice / now.EndPrice - 1,
threeprice = threeq.Last().EndPrice,
threeChangePrice = now.EndPrice - threeq.Last().EndPrice
,
fiveDailyVolume = fiveq.Sum(x => x.DailyVolume),
fiveTurnoverTotal = fiveq.Sum(x => x.TurnoverTotal),
fiveOfPrice = fiveq.Last().EndPrice / now.EndPrice - 1,
fiveprice = fiveq.Last().EndPrice,
fiveChangePrice = now.EndPrice - fiveq.Last().EndPrice
,
sevenDailyVolume = sevenq.Sum(x => x.DailyVolume),
sevenTurnoverTotal = sevenq.Sum(x => x.TurnoverTotal),
sevenOfPrice = sevenq.Last().EndPrice / now.EndPrice - 1,
sevenprice = sevenq.Last().EndPrice,
sevenChangePrice = now.EndPrice - sevenq.Last().EndPrice
,
tenDailyVolume = tenq.Sum(x => x.DailyVolume),
tenTurnoverTotal = tenq.Sum(x => x.TurnoverTotal),
tenOfPrice = tenq.Last().EndPrice / now.EndPrice - 1,
tenprice = tenq.Last().EndPrice,
tenChangePrice = now.EndPrice - tenq.Last().EndPrice
,
tenminprice = temp.Take(10).Min(x => x.MinimumPrice),
tenmaxprice = temp.Take(10).Max(x => x.MaximumPrice)
});
}
}