/** * Returns metadata for the node from the node date. * <p> * The node date must be computed by {@link #date(LocalDate, ReferenceData)}. * * @param nodeDate the node date used when calibrating the curve * @return metadata for the node */ public default DatedParameterMetadata metadata(LocalDate nodeDate) { return LabelDateParameterMetadata.of(nodeDate, getLabel()); }
@Override public DatedParameterMetadata metadata(LocalDate nodeDate) { return template instanceof TenorCdsTemplate ? TenorDateParameterMetadata.of(nodeDate, ((TenorCdsTemplate) template).getTenor(), label) : LabelDateParameterMetadata.of(nodeDate, label); }
@Override public DatedParameterMetadata metadata(LocalDate nodeDate) { return template instanceof TenorCdsTemplate ? TenorDateParameterMetadata.of(nodeDate, ((TenorCdsTemplate) template).getTenor(), label) : LabelDateParameterMetadata.of(nodeDate, label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } return TenorDateParameterMetadata.of(nodeDate, template.getTenor(), label); }
public void hard_coded_value_one_curve_all_dates() { Function<LocalDate, ParameterMetadata> parameterMetadataFunction = (d) -> LabelDateParameterMetadata.of(d, "test"); Function<CurrencyParameterSensitivities, CurrencyParameterSensitivities> rebucketFunction = (s) -> CurveSensitivityUtils.linearRebucketing(s, TARGET_DATES); test_from_functions_one_curve_all_dates(parameterMetadataFunction, rebucketFunction); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } Tenor tenor = Tenor.of(template.getPeriodToEnd()); return TenorDateParameterMetadata.of(nodeDate, tenor, label); }
public void hard_coded_value_one_curve_one_date_dated() { Function<LocalDate, ParameterMetadata> parameterMetadataFunction = (d) -> LabelDateParameterMetadata.of(d, "test"); Function<CurrencyParameterSensitivities, CurrencyParameterSensitivities> rebucketFunction = (s) -> CurveSensitivityUtils.linearRebucketing(s, TARGET_DATES); test_from_functions_one_curve_one_date(parameterMetadataFunction, rebucketFunction); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } Tenor tenor = Tenor.of(template.getPeriodToFar()); return TenorDateParameterMetadata.of(nodeDate, tenor, label); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { LocalDate nodeDate = date(valuationDate, refData); if (date.isFixed()) { return LabelDateParameterMetadata.of(nodeDate, label); } Tenor tenor = Tenor.of(template.getDepositPeriod()); return TenorDateParameterMetadata.of(nodeDate, tenor, label); }
public void test_withNode_inMiddle_withMetadata() { InterpolatedNodalCurve base = InterpolatedNodalCurve.of(METADATA_ENTRIES, XVALUES, YVALUES, INTERPOLATOR); LabelDateParameterMetadata item = LabelDateParameterMetadata.of(date(2015, 6, 30), TNR_1Y); InterpolatedNodalCurve test = base.withNode(2.5d, 4d, item); List<ParameterMetadata> list = new ArrayList<>(METADATA_ENTRIES.getParameterMetadata().get()); list.add(2, item); assertThat(test.getName()).isEqualTo(CURVE_NAME); assertThat(test.getParameterCount()).isEqualTo(SIZE + 1); assertThat(test.getMetadata()).isEqualTo(METADATA_ENTRIES.withParameterMetadata(list)); assertThat(test.getXValues()).isEqualTo(DoubleArray.of(1d, 2d, 2.5d, 3d)); assertThat(test.getYValues()).isEqualTo(DoubleArray.of(5d, 7d, 4d, 8d)); }
public void test_withNode_replace_withMetadata() { InterpolatedNodalCurve base = InterpolatedNodalCurve.of(METADATA_ENTRIES, XVALUES, YVALUES, INTERPOLATOR); LabelDateParameterMetadata item = LabelDateParameterMetadata.of(date(2015, 6, 30), TNR_1Y); InterpolatedNodalCurve test = base.withNode(2d, 4d, item); List<ParameterMetadata> list = new ArrayList<>(METADATA_ENTRIES.getParameterMetadata().get()); list.set(1, item); assertThat(test.getName()).isEqualTo(CURVE_NAME); assertThat(test.getParameterCount()).isEqualTo(SIZE); assertThat(test.getMetadata()).isEqualTo(METADATA.withParameterMetadata(list)); assertThat(test.getXValues()).isEqualTo(DoubleArray.of(1d, 2d, 3d)); assertThat(test.getYValues()).isEqualTo(DoubleArray.of(5d, 4d, 8d)); }
public void test_withNode_atEnd_withoutMetadata() { InterpolatedNodalCurve base = InterpolatedNodalCurve.of(METADATA, XVALUES, YVALUES, INTERPOLATOR); LabelDateParameterMetadata item = LabelDateParameterMetadata.of(date(2015, 6, 30), TNR_1Y); InterpolatedNodalCurve test = base.withNode(0.5d, 4d, item); assertThat(test.getName()).isEqualTo(CURVE_NAME); assertThat(test.getParameterCount()).isEqualTo(SIZE + 1); assertThat(test.getMetadata()).isEqualTo(METADATA); assertThat(test.getXValues()).isEqualTo(DoubleArray.of(0.5d, 1d, 2d, 3d)); assertThat(test.getYValues()).isEqualTo(DoubleArray.of(4d, 5d, 7d, 8d)); }
public void test_of_1arg() { LabelDateParameterMetadata test = LabelDateParameterMetadata.of(DATE); assertEquals(test.getDate(), DATE); assertEquals(test.getLabel(), DATE.toString()); assertEquals(test.getIdentifier(), DATE.toString()); }
@Override public DatedParameterMetadata metadata(LocalDate valuationDate, ReferenceData refData) { return LabelDateParameterMetadata.of( HolidayCalendars.SAT_SUN.nextOrSame(valuationDate.plus(periodToEnd)), periodToEnd.toString()); }