public void Standard() { List <DemaResult> results = quotes.GetDoubleEma(20) .ToList(); // assertions // proper quantities // should always be the same number of results as there is quotes Assert.AreEqual(502, results.Count); Assert.AreEqual(464, results.Where(x => x.Dema != null).Count()); // sample values DemaResult r1 = results[51]; Assert.AreEqual(226.0011m, Math.Round((decimal)r1.Dema, 4)); DemaResult r2 = results[249]; Assert.AreEqual(258.4452m, Math.Round((decimal)r2.Dema, 4)); DemaResult r3 = results[501]; Assert.AreEqual(241.1677m, Math.Round((decimal)r3.Dema, 4)); }
public void DoubleEma() { foreach (int qty in QuotesQuantities) { IEnumerable <Quote> quotes = TestData.GetLongish(qty); IEnumerable <DemaResult> r = quotes.GetDoubleEma(15); DemaResult l = r.LastOrDefault(); Console.WriteLine( "DEMA(15) on {0:d} with {1,4} periods: {2:N8}", l.Date, quotes.Count(), l.Dema); } }
public void Removed() { List <DemaResult> results = quotes.GetDoubleEma(20) .RemoveWarmupPeriods() .ToList(); // assertions Assert.AreEqual(502 - ((2 * 20) + 100), results.Count); DemaResult last = results.LastOrDefault(); Assert.AreEqual(241.1677m, Math.Round((decimal)last.Dema, 4)); }