コード例 #1
0
        public void Coupdaybs_ShouldReturnCorrectResult_Actual_360()
        {
            var settlement = new DateTime(2018, 12, 01);
            var maturity   = new DateTime(2019, 3, 15);

            var func = new CoupdaybsImpl(
                FinancialDayFactory.Create(settlement, DayCountBasis.Actual_360),
                FinancialDayFactory.Create(maturity, DayCountBasis.Actual_360),
                4,
                DayCountBasis.Actual_360
                );
            var result = func.Coupdaybs();

            Assert.AreEqual(77, result.Result);

            settlement = new DateTime(2016, 02, 01);
            maturity   = new DateTime(2019, 05, 31);

            func = new CoupdaybsImpl(
                FinancialDayFactory.Create(settlement, DayCountBasis.Actual_360),
                FinancialDayFactory.Create(maturity, DayCountBasis.Actual_360),
                2,
                DayCountBasis.Actual_360
                );
            result = func.Coupdaybs();
            Assert.AreEqual(63, result.Result);
        }
コード例 #2
0
        protected override FinanceCalcResult <int> ExecuteFunction(FinancialDay settlementDate, FinancialDay maturityDate, int frequency, DayCountBasis basis = DayCountBasis.US_30_360)
        {
            var impl = new CoupdaybsImpl(settlementDate, maturityDate, frequency, basis);

            return(impl.Coupdaybs());
        }