Exemplo n.º 1
0
        public static MBSFixedRateBond makeMBSFixedBond(Date startDate,
                                                        Period bondLength,
                                                        Period originalLength,
                                                        DayCounter dCounter,
                                                        Frequency payFrequency,
                                                        double amount,
                                                        double WACrate,
                                                        double PassThroughRate,
                                                        PSACurve psaCurve,
                                                        Calendar calendar)
        {
            MBSFixedRateBond bond;
            Date             endDate = calendar.advance(startDate, bondLength);

            Schedule schedule = new Schedule(startDate, endDate, bondLength, calendar, BusinessDayConvention.Unadjusted,
                                             BusinessDayConvention.Unadjusted, DateGeneration.Rule.Backward, false);

            bond = new MBSFixedRateBond(0, calendar, amount, startDate, bondLength, originalLength, payFrequency, WACrate, PassThroughRate, dCounter, psaCurve);

            return(bond);
        }
Exemplo n.º 2
0
      public static MBSFixedRateBond makeMBSFixedBond(Date startDate,
                                                      Period bondLength,
                                                      Period originalLength,
                                                      DayCounter dCounter,
                                                      Frequency payFrequency,
                                                      double amount,
                                                      double WACrate,
                                                      double PassThroughRate,
                                                      PSACurve psaCurve,
                                                      Calendar calendar)
      {
         MBSFixedRateBond bond;
         Date endDate = calendar.advance(startDate, bondLength);

         Schedule schedule = new Schedule(startDate, endDate, bondLength, calendar, BusinessDayConvention.Unadjusted,
                                          BusinessDayConvention.Unadjusted, DateGeneration.Rule.Backward, false);

         bond = new MBSFixedRateBond(0, calendar, amount, startDate, bondLength, originalLength , payFrequency, WACrate, PassThroughRate, dCounter, psaCurve);

         return bond;

      }