public void PeriodSet() { var aps = new AugenPriceSpike(period: 20); var reference = DateTime.Today; double correctValue = 0.31192350881956543; decimal finalTestValue = 22; int count = 0; List <double> testValues = new List <double>() { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21 }; foreach (decimal i in testValues) { count += 1; aps.Update(reference.AddMinutes(count), i); Assert.IsFalse(aps.IsReady); Assert.AreEqual(0, aps.Current.Value); } aps.Update(reference.AddMinutes(count + 1), finalTestValue); Assert.IsTrue(aps.IsReady); Assert.AreEqual(correctValue, (double)aps.Current.Value, 0.00001); }
public override void ResetsProperly() { var aps = new AugenPriceSpike(10); var reference = DateTime.Today; aps.Update(reference.AddMinutes(1), 5); aps.Update(reference.AddMinutes(2), 10); aps.Update(reference.AddMinutes(3), 8); aps.Update(reference.AddMinutes(4), 12); aps.Update(reference.AddMinutes(5), 103); aps.Update(reference.AddMinutes(6), 82); aps.Update(reference.AddMinutes(7), 55); aps.Update(reference.AddMinutes(8), 10); aps.Update(reference.AddMinutes(9), 878); aps.Update(reference.AddMinutes(10), 84); aps.Update(reference.AddMinutes(11), 832); aps.Update(reference.AddMinutes(12), 81); aps.Update(reference.AddMinutes(13), 867); aps.Update(reference.AddMinutes(14), 89); Assert.IsTrue(aps.IsReady); Assert.AreNotEqual(0m, aps.Current.Value); aps.Reset(); TestHelper.AssertIndicatorIsInDefaultState(aps); }
public void TestWithStream() { var aps = new AugenPriceSpike(22); foreach (var data in TestHelper.GetDataStream(50)) { aps.Update(data.Time, data.Value); } }