コード例 #1
0
        public void naNValuesInIntervall()
        {
            List <IBar> bars = new List <IBar>();

            for (long i = 0; i <= 10; i++)
            { // (0, NaN, 2, NaN, 4, NaN, 6, NaN, 8, ...)
                decimal maxPrice = i % 2 == 0 ? i : Decimals.NaN;
                IBar    bar      = new BaseBar(DateTime.Now.AddDays(i), Decimals.NaN, maxPrice, Decimals.NaN, Decimals.NaN, Decimals.NaN);
                bars.Add(bar);
            }
            BaseTimeSeries   series           = new BaseTimeSeries("NaN test", bars);
            AroonUpIndicator aroonUpIndicator = new AroonUpIndicator(series, 5);

            for (int i = series.GetBeginIndex(); i <= series.GetEndIndex(); i++)
            {
                if (i % 2 != 0)
                {
                    Assert.AreEqual(Decimals.NaN, aroonUpIndicator.GetValue(i));
                }
                else
                {
                    Assert.AreEqual(Decimals.HUNDRED, aroonUpIndicator.GetValue(i));
                }
            }
        }
コード例 #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);
            AroonUpIndicator aroonUpIndicator = new AroonUpIndicator(series, 5);

            for (int i = series.GetBeginIndex(); i <= series.GetEndIndex(); i++)
            {
                Assert.AreEqual(Decimals.NaN.ToString(), aroonUpIndicator.GetValue(i).ToString());
            }
        }
コード例 #3
0
        public void upAndSlowDown()
        {
            AroonUpIndicator arronUp = new AroonUpIndicator(data, 5);

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