示例#1
0
        /**
         * Put any CDS market quote into the form needed for the curve builder,
         * namely coupon and points up-front (which can be zero).
         *
         * @param calibrationCDS
         * @param marketQuote
         * @param yieldCurve
         * @return The market quotes in the form required by the curve builder
         */
        private double[] getStandardQuoteForm(
            CDS calibrationCDS,
            CdsQuoteConvention marketQuote,
            YieldTermStructure yieldCurve)
        {
            AnalyticalCdsPricer pricer = new AnalyticalCdsPricer();

            double[] res = new double[2];
            if (marketQuote is CdsParSpread)
            {
                res[0] = marketQuote.getCoupon();
            }
            else if (marketQuote is CdsQuotedSpread)
            {
                CdsQuotedSpread             temp    = (CdsQuotedSpread)marketQuote;
                double                      coupon  = temp.getCoupon();
                double                      qSpread = temp.getQuotedSpread();
                PiecewiseconstantHazardRate cc      = calibrateCreditCurve(
                    new CDS[] { calibrationCDS }, new double[] { qSpread }, yieldCurve, new double[1]);
                res[0] = coupon;
                res[1] = pricer.pv(calibrationCDS, yieldCurve, cc, coupon, CdsPriceType.CLEAN);
            }
            else if (marketQuote is PointsUpFront)
            {
                PointsUpFront temp = (PointsUpFront)marketQuote;
                res[0] = temp.getCoupon();
                res[1] = temp.getPointsUpFront();
            }
            return(res);
        }
 /**
  * Constructor specifying formula used in pricer and credit curve builder.
  *
  * @param formula The formula
  */
 public HedgeRatioCalculator(AccrualOnDefaultFormulae formula)
 {
     _pricer  = new AnalyticalCdsPricer(formula);
     _builder = new FastCreditCurveBuilder(formula);
 }
 /**
  * Default constructor.
  */
 public HedgeRatioCalculator()
 {
     _pricer  = new AnalyticalCdsPricer();
     _builder = new FastCreditCurveBuilder();
 }
 public CDSIndexCalculator()
 {
     _pricer = new AnalyticalCdsPricer();
 }
 public AnalyticSpreadSensitivityCalculator(AccrualOnDefaultFormulae formula)
 {
     _curveBuilder = new FastCreditCurveBuilder(formula);
     _pricer       = new AnalyticalCdsPricer(formula);
 }
 public AnalyticSpreadSensitivityCalculator()
 {
     _curveBuilder = new FastCreditCurveBuilder();
     _pricer       = new AnalyticalCdsPricer();
 }
示例#7
0
 public CdsRiskFactors(AccrualOnDefaultFormulae formula)
 {
     _pricer = new AnalyticalCdsPricer(formula);
 }
示例#8
0
 public CdsRiskFactors()
 {
     _pricer = new AnalyticalCdsPricer();
 }