示例#1
0
        public double DebtAccruedInterest(double coupon, DateTime maturityDate, DateTime settlementDate)
        {
            int tHIMaturityDate   = TechHackersAnalyst.THIdate(maturityDate.Year, maturityDate.Month, maturityDate.Day, null);
            int tHISettlementDate = TechHackersAnalyst.THIdate(settlementDate.Year, settlementDate.Month, settlementDate.Day, null);

            double [] couponArray = new double[1];
            couponArray[0] = coupon;

            int [] maturityDateArray = new int[1];
            maturityDateArray[0] = tHIMaturityDate;

            return(TechHackersAnalyst.THIbai1(couponArray, couponArray.Length, maturityDateArray,
                                              maturityDateArray.Length, tHISettlementDate, null, null, null, null, 0, null,
                                              null, null, 0, null, 0, null, null, null, null, null, 0, null));
        }
示例#2
0
        public double Duration(double coupon, DateTime maturityDate, DateTime settlementDate, double yield)
        {
            int tHIMaturityDate   = TechHackersAnalyst.THIdate(maturityDate.Year, maturityDate.Month, maturityDate.Day, null);
            int tHISettlementDate = TechHackersAnalyst.THIdate(settlementDate.Year, settlementDate.Month, settlementDate.Day, null);

            double [] couponArray = new double[1];
            couponArray[0] = coupon;

            int [] maturityDateArray = new int[1];
            maturityDateArray[0] = tHIMaturityDate;

            return(TechHackersAnalyst.THIbdur(couponArray, couponArray.Length, maturityDateArray, maturityDateArray.Length,
                                              tHISettlementDate, yield, null, null, null, null, 0, null, null, null, null, null, null, null, null, null,
                                              0, null, null, 0, null, 0, null, null, null, null));
        }
示例#3
0
        public double YieldFromPrice(double coupon, DateTime maturityDate, DateTime settlementDate, double price)
        {
            int tHIMaturityDate   = TechHackersAnalyst.THIdate(maturityDate.Year, maturityDate.Month, maturityDate.Day, null);
            int tHISettlementDate = TechHackersAnalyst.THIdate(settlementDate.Year, settlementDate.Month, settlementDate.Day, null);

            double [] couponArray = new double[1];
            couponArray[0] = coupon;

            int [] maturityDateArray = new int[1];
            maturityDateArray[0] = tHIMaturityDate;

            return(TechHackersAnalyst.THIbyld(couponArray, couponArray.Length, maturityDateArray,
                                              maturityDateArray.Length, tHISettlementDate, price, null, null, null, null, 0,
                                              null, null, null, null, null, null, null, null, 0, null, null, 0,
                                              null, 0, null, null, null, null));
        }
示例#4
0
        public static decimal YieldFromPrice
        (
            decimal coupon,
            DateTime maturityDate,
            DateTime settlementDate,
            decimal yield
        )
        {
            double[] couponArray = new double[1];
            couponArray[0] = Convert.ToDouble(coupon);

            int tHIMaturityDate   = TechHackersAnalyst.THIdate(maturityDate.Year, maturityDate.Month, maturityDate.Day, null);
            int tHISettlementDate = TechHackersAnalyst.THIdate(settlementDate.Year, settlementDate.Month, settlementDate.Day, null);

            int[] maturityDateArray = new int[1];
            maturityDateArray[0] = tHIMaturityDate;

            return(Convert.ToDecimal(TechHackersAnalyst.THIbpr(couponArray, couponArray.Length,
                                                               maturityDateArray, maturityDateArray.Length, tHISettlementDate, Convert.ToDouble(yield), null, null, null, null,
                                                               0, null, null, null, null, null, null, null, null, 0, null, null, 0, null, 0, null, null,
                                                               null, null)));
        }