Ejemplo n.º 1
0
        public void naNValuesInIntervall()
        {
            List <IBar> bars = new List <IBar>();

            for (long i = 10; i >= 0; i--)
            { // (10, NaN, 9, NaN, 8, NaN, 7, NaN)
                decimal minPrice = i % 2 == 0 ? i : Decimals.NaN;
                IBar    bar      = new BaseBar(DateTime.Now.AddDays(10 - i), Decimals.NaN, Decimals.NaN, minPrice, Decimals.NaN, Decimals.NaN);
                bars.Add(bar);
            }
            bars.Add(new BaseBar(DateTime.Now.AddDays(11), Decimals.NaN, Decimals.NaN, Decimals.TEN, Decimals.NaN, Decimals.NaN));
            BaseTimeSeries     series             = new BaseTimeSeries("NaN test", bars);
            AroonDownIndicator aroonDownIndicator = new AroonDownIndicator(series, 5);

            for (int i = series.GetBeginIndex(); i <= series.GetEndIndex(); i++)
            {
                if (i % 2 != 0 && i < 11)
                {
                    Assert.AreEqual(Decimals.NaN.ToString(), aroonDownIndicator.GetValue(i).ToString());
                }
                else if (i < 11)
                {
                    Assert.AreEqual(aroonDownIndicator.GetValue(i), Decimals.HUNDRED);
                }
                else
                {
                    Assert.AreEqual(aroonDownIndicator.GetValue(i), 80);
                }
            }
        }
Ejemplo n.º 2
0
        public void onlyNaNValues()
        {
            List <IBar> bars = new List <IBar>();

            for (long i = 0; i <= 1000; i++)
            {
                IBar bar = new BaseBar(DateTime.Now.AddDays(i), Decimals.NaN, Decimals.NaN, Decimals.NaN, Decimals.NaN, Decimals.NaN);
                bars.Add(bar);
            }

            BaseTimeSeries     series             = new BaseTimeSeries("NaN test", bars);
            AroonDownIndicator aroonDownIndicator = new AroonDownIndicator(series, 5);

            for (int i = series.GetBeginIndex(); i <= series.GetEndIndex(); i++)
            {
                Assert.AreEqual(Decimals.NaN.ToString(), aroonDownIndicator.GetValue(i).ToString());
            }
        }
Ejemplo n.º 3
0
        public void upDownAndHigh()
        {
            AroonDownIndicator arronDownIndicator = new AroonDownIndicator(data, 5);

            Assert.AreEqual(arronDownIndicator.GetValue(19), 80);
            Assert.AreEqual(arronDownIndicator.GetValue(18), 100);
            Assert.AreEqual(arronDownIndicator.GetValue(17), 100);
            Assert.AreEqual(arronDownIndicator.GetValue(16), 0);
            Assert.AreEqual(arronDownIndicator.GetValue(15), 0);
            Assert.AreEqual(arronDownIndicator.GetValue(14), 0);
            Assert.AreEqual(arronDownIndicator.GetValue(13), 20);
            Assert.AreEqual(arronDownIndicator.GetValue(12), 40);
            Assert.AreEqual(arronDownIndicator.GetValue(11), 0);
            Assert.AreEqual(arronDownIndicator.GetValue(10), 0);
            Assert.AreEqual(arronDownIndicator.GetValue(9), 20);
            Assert.AreEqual(arronDownIndicator.GetValue(8), 40);
            Assert.AreEqual(arronDownIndicator.GetValue(7), 60);
            Assert.AreEqual(arronDownIndicator.GetValue(6), 80);
            Assert.AreEqual(arronDownIndicator.GetValue(5), 100);
        }