private void TenYearBenchTest() { var ctx = new RepGenDataContext(); var prices = ctx.BenchmarkPrice("CAMA"); ReturnCalculation cr = new ReturnCalculation(); ReturnCalculation cp = new ReturnCalculation(); var tyr = from p in prices let rtrn = cr.Return(p) select new ReturnData { Value = cp.RebaseReturn(rtrn), Date = p.Date }; foreach (var item in tyr) { Console.WriteLine("{0}\t{1}", item.Date, item.Value); } }
private List<ReturnData> calculateTenYearBenchmarkReturn(List<ReturnData> prices) { int months = prices.Count; //int startIndex = months - Math.Min(121, months); int startDate = prices[months - 121].Date; ReturnCalculation cr = new ReturnCalculation(); ReturnCalculation cb = new ReturnCalculation(); var rtrn = from p in prices.Skip(months - 120) let r = cr.Return(p) select new ReturnData { Value = cb.RebaseReturn(r), Date = p.Date }; var tyr = rtrn.ToList(); var newItem = new ReturnData() { Date = startDate, Value = 0 }; tyr.Insert(0, newItem); return tyr; }