public void test_builder() { CdsIsdaCreditCurveNode test = CdsIsdaCreditCurveNode.builder() .label(LABEL) .template(TEMPLATE) .observableId(QUOTE_ID) .quoteConvention(CdsQuoteConvention.PAR_SPREAD) .legalEntityId(LEGAL_ENTITY) .build(); assertEquals(test.getLabel(), LABEL); assertEquals(test.getLegalEntityId(), LEGAL_ENTITY); assertEquals(test.getObservableId(), QUOTE_ID); assertEquals(test.getTemplate(), TEMPLATE); assertEquals(test.date(VAL_DATE, REF_DATA), date(2025, 6, 20)); }
private CdsIsdaCreditCurveNode toCdsNode(CdsIndexIsdaCreditCurveNode index) { return CdsIsdaCreditCurveNode.builder() .label(index.getLabel()) .legalEntityId(index.getCdsIndexId()) .observableId(index.getObservableId()) .quoteConvention(index.getQuoteConvention()) .template(index.getTemplate()) .fixedRate(index.getFixedRate().isPresent() ? index.getFixedRate().getAsDouble() : null) .build(); }
/** * Returns a curve node with points upfront convention. * * @param template the template * @param observableId the observable ID * @param legalEntityId the legal entity ID * @param fixedRate the fixed rate * @return the curve node */ public static CdsIsdaCreditCurveNode ofPointsUpfront( CdsTemplate template, ObservableId observableId, StandardId legalEntityId, Double fixedRate) { return builder() .template(template) .observableId(observableId) .legalEntityId(legalEntityId) .quoteConvention(CdsQuoteConvention.POINTS_UPFRONT) .fixedRate(fixedRate) .build(); }
/** * Returns a curve node with quoted spread convention. * * @param template the template * @param observableId the observable ID * @param legalEntityId the legal entity ID * @param fixedRate the fixed rate * @return the curve node */ public static CdsIsdaCreditCurveNode ofQuotedSpread( CdsTemplate template, ObservableId observableId, StandardId legalEntityId, Double fixedRate) { return builder() .template(template) .observableId(observableId) .legalEntityId(legalEntityId) .quoteConvention(CdsQuoteConvention.QUOTED_SPREAD) .fixedRate(fixedRate) .build(); }
/** * Returns a curve node with par spread convention. * * @param template the template * @param observableId the observable ID * @param legalEntityId the legal entity ID * @return the curve node */ public static CdsIsdaCreditCurveNode ofParSpread( CdsTemplate template, ObservableId observableId, StandardId legalEntityId) { return builder() .template(template) .observableId(observableId) .legalEntityId(legalEntityId) .quoteConvention(CdsQuoteConvention.PAR_SPREAD) .build(); }
public void test_build_fail_noRate() { assertThrows( () -> CdsIsdaCreditCurveNode.builder().template(TEMPLATE).observableId(QUOTE_ID).legalEntityId(LEGAL_ENTITY) .quoteConvention(CdsQuoteConvention.QUOTED_SPREAD).build(), IllegalArgumentException.class); }