示例#1
0
 public void SetUp()
 {
     _field = new NormalizedBasicEPSGrowth();
     _field.SetPeriodValue("3M", 1);
     _field.SetPeriodValue("1Y", 5);
     _field.SetPeriodValue("2Y", 2);
 }
示例#2
0
        public void NonEmptyStoreToString()
        {
            var field = new NormalizedBasicEPSGrowth();

            field.SetPeriodValue(QuantConnect.Data.Fundamental.Period.OneYear, 1);
            field.SetPeriodValue(QuantConnect.Data.Fundamental.Period.TenYears, 10);

            Assert.AreEqual($"{QuantConnect.Data.Fundamental.Period.OneYear}:1;" +
                            $"{QuantConnect.Data.Fundamental.Period.TenYears}:10", field.ToString());
        }
示例#3
0
 /// <summary>
 /// Creates an instance of the EarningRatios class
 /// </summary>
 public EarningRatios()
 {
     DilutedEPSGrowth     = new DilutedEPSGrowth();
     DilutedContEPSGrowth = new DilutedContEPSGrowth();
     DPSGrowth            = new DPSGrowth();
     EquityPerShareGrowth = new EquityPerShareGrowth();
     RegressionGrowthofDividends5Years = new RegressionGrowthofDividends5Years();
     FCFPerShareGrowth          = new FCFPerShareGrowth();
     BookValuePerShareGrowth    = new BookValuePerShareGrowth();
     NormalizedDilutedEPSGrowth = new NormalizedDilutedEPSGrowth();
     NormalizedBasicEPSGrowth   = new NormalizedBasicEPSGrowth();
 }
示例#4
0
        public void ReturnsFirstPeriodIfNoDefaultAvailable()
        {
            var data = new Dictionary <string, decimal> {
                { "3M", 1 }, { "2Y", 2 }
            };
            var field = new NormalizedBasicEPSGrowth(data);

            Assert.IsFalse(field.HasValue);

            Assert.AreEqual(1, field);
            Assert.AreEqual(1, field.Value);
        }
示例#5
0
        public void EmptyStore()
        {
            var field = new NormalizedBasicEPSGrowth();

            Assert.IsFalse(field.HasValue);
            Assert.AreEqual(0, field.Value);
            Assert.AreEqual(0, field.FiveYears);
            Assert.AreEqual(0, field.OneYear);
            Assert.AreEqual(Enumerable.Empty <string>(), field.GetPeriodNames());
            Assert.AreEqual(0,
                            field.GetPeriodValue(QuantConnect.Data.Fundamental.Period.OneYear));
            Assert.AreEqual(0,
                            field.GetPeriodValue(QuantConnect.Data.Fundamental.Period.TenYears));
            Assert.AreEqual(0, field.GetPeriodValues().Count);
            Assert.IsFalse(field.HasPeriodValue(QuantConnect.Data.Fundamental.Period.OneYear));
            Assert.IsFalse(field.HasPeriodValue(QuantConnect.Data.Fundamental.Period.TenYears));
        }
示例#6
0
        public void EmptyStoreSetPeriodValue()
        {
            var field = new NormalizedBasicEPSGrowth();

            // add the default value
            field.SetPeriodValue(QuantConnect.Data.Fundamental.Period.OneYear, 1);

            Assert.IsTrue(field.HasValue);
            Assert.AreEqual(1, field.Value);
            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.OneYear, field.GetPeriodNames().Single());

            var values = field.GetPeriodValues();

            Assert.AreEqual(1, values.Count);
            Assert.AreEqual(1, values.First().Value);
            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.OneYear, values.First().Key);
        }
示例#7
0
        public void EmptyStoreUpdateValues()
        {
            var field = new NormalizedBasicEPSGrowth();

            // update the default value
            var data = new Dictionary <string, decimal> {
                { QuantConnect.Data.Fundamental.Period.OneYear, 2 }
            };

            field.UpdateValues(new NormalizedBasicEPSGrowth(data));

            Assert.IsTrue(field.HasValue);
            Assert.AreEqual(2, field.Value);
            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.OneYear, field.GetPeriodNames().Single());

            var values = field.GetPeriodValues();

            Assert.AreEqual(1, values.Count);
            Assert.AreEqual(2, values.First().Value);
            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.OneYear, values.First().Key);
        }
示例#8
0
        public void SetPeriodValue()
        {
            var field = new NormalizedBasicEPSGrowth();

            // add the default value
            field.SetPeriodValue(QuantConnect.Data.Fundamental.Period.OneYear, 1);
            field.SetPeriodValue(QuantConnect.Data.Fundamental.Period.TenYears, 10);

            Assert.IsTrue(field.HasValue);
            Assert.AreEqual(1, field.Value);
            var names = field.GetPeriodNames().ToList();

            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.OneYear, names[0]);
            Assert.AreEqual(QuantConnect.Data.Fundamental.Period.TenYears, names[1]);

            var values = field.GetPeriodValues();

            Assert.AreEqual(2, values.Count);
            Assert.AreEqual(1, values[QuantConnect.Data.Fundamental.Period.OneYear]);
            Assert.AreEqual(10, values[QuantConnect.Data.Fundamental.Period.TenYears]);
        }
示例#9
0
        public void EmptyStoreToString()
        {
            var field = new NormalizedBasicEPSGrowth();

            Assert.AreEqual("", field.ToString());
        }
示例#10
0
        public void UpdateValuesWithNull()
        {
            var field = new NormalizedBasicEPSGrowth();

            Assert.DoesNotThrow(() => field.UpdateValues(new NormalizedBasicEPSGrowth(null)));
        }