Exemple #1
0
        // add each node to the csv file
        private static void nodeLines(string valuationDateStr, Curve curve, CsvOutput csv)
        {
            ArgChecker.isTrue(curve is InterpolatedNodalCurve, "interpolated");
            InterpolatedNodalCurve interpolatedCurve = (InterpolatedNodalCurve)curve;
            int nbPoints = interpolatedCurve.XValues.size();

            for (int i = 0; i < nbPoints; i++)
            {
                ArgChecker.isTrue(interpolatedCurve.getParameterMetadata(i) is DatedParameterMetadata, "Curve metadata must contain a date, but was " + interpolatedCurve.getParameterMetadata(i).GetType().Name);
                DatedParameterMetadata metadata = (DatedParameterMetadata)interpolatedCurve.getParameterMetadata(i);
                IList <string>         line     = new List <string>();
                line.Add(valuationDateStr);
                line.Add(curve.Name.Name.ToString());
                line.Add(metadata.Date.ToString());
                line.Add(decimal.valueOf(interpolatedCurve.YValues.get(i)).toPlainString());
                line.Add(metadata.Label);
                csv.writeLine(line);
            }
        }
        //-------------------------------------------------------------------------
        public virtual void test_of()
        {
            SimpleDiscountFactors test = SimpleDiscountFactors.of(GBP, DATE_VAL, CURVE);

            assertEquals(test.Currency, GBP);
            assertEquals(test.ValuationDate, DATE_VAL);
            assertEquals(test.Curve, CURVE);
            assertEquals(test.ParameterCount, CURVE.ParameterCount);
            assertEquals(test.getParameter(0), CURVE.getParameter(0));
            assertEquals(test.getParameterMetadata(0), CURVE.getParameterMetadata(0));
            assertEquals(test.withParameter(0, 1d).Curve, CURVE.withParameter(0, 1d));
            assertEquals(test.withPerturbation((i, v, m) => v + 1d).Curve, CURVE.withPerturbation((i, v, m) => v + 1d));
            assertEquals(test.findData(CURVE.Name), CURVE);
            assertEquals(test.findData(CurveName.of("Rubbish")), null);
        }